mirror of
https://github.com/tfussell/xlnt.git
synced 2024-03-22 13:11:17 +08:00
41 lines
1.8 KiB
Python
41 lines
1.8 KiB
Python
|
|
cxxtestbuilder_path = '../../build_tools/SCons/cxxtest.py'
|
|
cxxtest_path = '../..'
|
|
|
|
# First a bit of python magic to make the CxxTestBuilder available
|
|
# without having to copy it into a particular path.
|
|
# for nicer examples you *should* use, see the cxxtest builder tests in the
|
|
# build_tools/SCons/test directory.
|
|
import imp
|
|
cxxtest = imp.load_source('cxxtest', cxxtestbuilder_path)
|
|
|
|
# First build the 'real' library, when working on an embedded system
|
|
# this may involve a cross compiler.
|
|
env = Environment()
|
|
env.BuildDir('build/embedded_platform', 'src')
|
|
env.Append(CPPPATH=['include'])
|
|
libtested = env.StaticLibrary('build/embedded_platform/tested',
|
|
env.Glob('build/embedded_platform/*.c'))
|
|
|
|
# Now create a seperate build environment for the tests so we can keep any
|
|
# options that are specific to testing seperate from the 'production' build
|
|
# environment. For simplicity I am just copying the production environment.
|
|
# If we are cross compiling for the "real" library, then this
|
|
# environement might be using the normal compiler.
|
|
env_test = env.Clone()
|
|
|
|
# Add the CxxTestBuilder to our testing build environment.
|
|
cxxtest.generate(env_test, CXXTEST_INSTALL_DIR = cxxtest_path)
|
|
|
|
# If we were working with an embedded platform we may want to create a
|
|
# seperate version of our library that runs on our development box in
|
|
# order to do our initial unit testing. This version may also include
|
|
# any special preprocessor defines needed for testing e.g. -DTESTING
|
|
env_test.BuildDir('build/dev_platform', 'src')
|
|
env_test.BuildDir('build/tests', 'tests')
|
|
lib_to_test = env_test.StaticLibrary('build/dev_platform/tested',
|
|
env.Glob('build/dev_platform/*.c'))
|
|
env_test.Append(LIBS=lib_to_test)
|
|
env_test.CxxTest(env_test.Glob('tests/*.h'))
|
|
|