1## -*- python -*- 2#from waflib import Task 3 4import sys 5import os.path 6import os 7import subprocess 8 9# uncomment to enable profiling information 10# epydoc uses the profile data to generate call graphs 11#os.environ["PYBINDGEN_ENABLE_PROFILING"] = "" 12 13if 0: 14 DEPRECATION_ERRORS = '-Werror::DeprecationWarning' # deprecations become errors 15else: 16 DEPRECATION_ERRORS = '-Wdefault::DeprecationWarning' # normal python behaviour 17 18 19def build(bld): 20 env = bld.env 21 22 env['TOP_SRCDIR'] = bld.srcnode.abspath() 23 24 bindgen = bld( 25 features='command', 26 source='barmodulegen.py', 27 target='barmodule.cc', 28 command='${PYTHON} %s ${SRC[0]} ${TOP_SRCDIR} > ${TGT[0]}' % (DEPRECATION_ERRORS,)) 29 30 if env['CXX'] and env['ENABLE_BOOST_SHARED_PTR'] == True: 31 obj = bld(features='cxx cxxshlib pyext') 32 obj.source = [ 33 'bar.cc', 34 'barmodule.cc' 35 ] 36 obj.target = 'bar' 37 obj.install_path = None 38 obj.env.append_value("INCLUDES", '.') 39 40 41