2013-11-17 17:57:43 -06:00
|
|
|
# -*- python -*-
|
2013-11-20 20:24:21 -06:00
|
|
|
import os, os.path
|
2013-11-22 12:00:14 -06:00
|
|
|
Import('env libhammer_shared')
|
2013-11-17 17:57:43 -06:00
|
|
|
|
2013-11-17 20:54:13 -06:00
|
|
|
phpenv = env.Clone(IMPLICIT_COMMAND_DEPENDENCIES = 0)
|
2013-11-17 17:57:43 -06:00
|
|
|
|
2013-11-23 13:06:48 -06:00
|
|
|
php_include = os.popen("php-config --include-dir").read().rstrip()
|
|
|
|
|
phpenv.Append(CPPPATH = ['../../', php_include, os.path.join(php_include, 'main'), os.path.join(php_include, 'Zend'), os.path.join(php_include, 'TSRM')])
|
2013-11-17 20:54:13 -06:00
|
|
|
phpenv.Append(CCFLAGS = ['-fpic', '-DSWIG', '-Wno-all', '-Wno-extra', '-Wno-error'])
|
|
|
|
|
phpenv.Append(LIBS = ['hammer'])
|
|
|
|
|
phpenv.Append(LIBPATH = ['../../'])
|
2013-11-17 17:57:43 -06:00
|
|
|
|
2013-11-21 02:35:45 -06:00
|
|
|
swig_src = phpenv.Command("hammer.i", "../swig/hammer.i", Copy("$TARGET", "$SOURCE"))
|
|
|
|
|
bindings_src = phpenv.Command(['hammer.php', 'hammer_wrap.c', 'php_hammer.h'], 'hammer.i', 'swig -php -DHAMMER_INTERNAL__NO_STDARG_H -Isrc/ $SOURCE')
|
2013-11-21 01:13:44 -06:00
|
|
|
libhammer_php = phpenv.SharedLibrary('hammer', ['hammer_wrap.c'])
|
2013-11-21 02:35:45 -06:00
|
|
|
Default(swig_src, bindings_src, libhammer_php)
|
2013-11-21 01:13:44 -06:00
|
|
|
|
2013-11-22 03:43:07 -06:00
|
|
|
phptestenv = phpenv.Clone()
|
|
|
|
|
phptestenv['ENV']['LD_LIBRARY_PATH'] = os.path.dirname(str(libhammer_shared[0]))
|
2013-11-22 12:00:14 -06:00
|
|
|
phptests = ['Tests']
|
2013-11-23 12:45:21 -06:00
|
|
|
testphp = phptestenv.Alias("testphp", phptestenv.Command(phptests, [libhammer_php], "phpenv exec phpunit -v --include-path "+os.getcwd()+" $TARGET"))
|
2013-11-22 12:00:14 -06:00
|
|
|
env['testruns'].append(testphp)
|
|
|
|
|
print "Testing: " + str([str(x[0]) for x in env['testruns']])
|
2013-11-20 02:13:41 -06:00
|
|
|
|