Files
pybindgen/benchmarks/wscript
T
Gustavo J. A. M. Carneiro 666da9e57b Add SIP benchmarking
2009-12-25 22:16:09 +00:00

84 lines
1.9 KiB
Python

## -*- python -*-
def configure(conf):
pass
def build(bld):
#
# PyBindGen
#
gen = bld.new_task_gen(
features='command',
source='testapi-pybindgen.py',
target='testapimodule.cc',
command='${PYTHON} ${SRC[0]} > ${TGT[0]}')
obj = bld.new_task_gen('cxx', 'shlib', 'pyext')
obj.source = [
'testapi.cc',
'testapimodule.cc'
]
obj.target = 'testapi_pybindgen'
obj.install_path = None # do not install
obj.includes = '.'
#
# Boost::Python
#
obj = bld.new_task_gen('cxx', 'shlib', 'pyext')
obj.source = [
'testapi.cc',
'testapi_boost.cc'
]
obj.target = 'testapi_boost'
obj.install_path = None # do not install
obj.includes = '.'
obj.env.append_value('LIB', 'boost_python-mt')
#
# SWIG
#
gen = bld.new_task_gen(
features='command',
source='testapi_swig.i',
target='testapi_swig_module.cc',
command='swig -c++ -o ${TGT[0]} -python ${SRC[0]}')
obj = bld.new_task_gen('cxx', 'shlib', 'pyext')
obj.source = [
'testapi.cc',
'testapi_swig_module.cc'
]
obj.target = '_testapi_swig'
obj.install_path = None # do not install
obj.includes = '.'
#
# SIP
#
gen = bld.new_task_gen(
features='command',
source='testapi.sip',
target='sipAPItestapi_sip.h siptestapi_sipcmodule.cpp siptestapi_sipMultiplier.cpp',
command='sip -c default/benchmarks ${SRC[0]}')
obj = bld.new_task_gen('cxx', 'shlib', 'pyext')
obj.source = [
'testapi.cc',
'siptestapi_sipcmodule.cpp',
'siptestapi_sipMultiplier.cpp',
]
obj.target = 'testapi_sip'
obj.install_path = None # do not install
obj.includes = '.'
# SIP does not like -fvisibility=hidden :-(
l = list(obj.env['CXXFLAGS_PYEXT'])
l.remove("-fvisibility=hidden")
obj.env['CXXFLAGS_PYEXT'] = l