MCPcopy Create free account
hub / github.com/devosoft/avida / generate

Function generate

avida-core/support/utils/AvidaUtils/BoostPythonTool.py:83–129  ·  view source on GitHub ↗

Adds builders and construction variables for Boost.Python to an Environment.

(env)

Source from the content-addressed store, hash-verified

81LdModuleLinkAction = SCons.Action.Action("$BOOST_PYTHON_LDMODULECOM", "$BOOST_PYTHON_LDMODULECOMSTR")
82
83def generate(env):
84 """
85 Adds builders and construction variables for Boost.Python to an
86 Environment.
87 """
88 env.SetDefault(
89 BOOST_PYTHON_TOOL_ERR = '',
90 BOOST_PYTHON_CPPFLAGS = ['$PYTHON_BASECFLAGS'],
91 BOOST_PYTHON_CPPDEFINES = [],
92 BOOST_PYTHON_CPPPATH = ['$boostIncludeDir', '$PYTHON_INCLUDEPY'],
93 BOOST_PYTHON_CXX_SUFFIX = '.boost.python.cpp',
94 BOOST_PYTHON_LIBPATH = ['$boostPythonLibDir'],
95 BOOST_PYTHON_LIBS = ['$boostPythonLib'],
96 BOOST_PYTHON_SHLINK = '$PYTHON_LDSHARED',
97 BOOST_PYTHON_LDMODULE = '$BOOST_PYTHON_SHLINK',
98 BOOST_PYTHON_LDMODULEFLAGS = '',
99 _BOOST_PYTHON_CPPINCFLAGS = '$( ${_concat(INCPREFIX, BOOST_PYTHON_CPPPATH, INCSUFFIX, __env__, RDirs, TARGET)} $)',
100 _BOOST_PYTHON_CPPDEFFLAGS = '${_defines(CPPDEFPREFIX, BOOST_PYTHON_CPPDEFINES, CPPDEFSUFFIX, __env__)}',
101 _BOOST_PYTHON_LIBFLAGS = '${_stripixes(LIBLINKPREFIX, BOOST_PYTHON_LIBS, LIBLINKSUFFIX, LIBPREFIX, LIBSUFFIX, __env__)}',
102 _BOOST_PYTHON_LIBDIRFLAGS = '$( ${_concat(LIBDIRPREFIX, BOOST_PYTHON_LIBPATH, LIBDIRSUFFIX, __env__, RDirs, TARGET)} $)',
103 BOOST_PYTHON_SHCXXCOM = '$SHCXX $SHCXXFLAGS $CPPFLAGS $BOOST_PYTHON_CPPFLAGS $_CPPDEFFLAGS $_BOOST_PYTHON_CPPDEFFLAGS $_CPPINCFLAGS $_BOOST_PYTHON_CPPINCFLAGS -c -o $TARGET $SOURCES',
104 BOOST_PYTHON_LDMODULECOM = '$BOOST_PYTHON_LDMODULE $BOOST_PYTHON_LDMODULEFLAGS -o ${TARGET} $SOURCES $_LIBDIRFLAGS $_BOOST_PYTHON_LIBDIRFLAGS $_LIBFLAGS $_BOOST_PYTHON_LIBFLAGS',
105 )
106
107 boost_python_ld_module_link_action = SCons.Action.Action("$BOOST_PYTHON_LDMODULECOM", "$BOOST_PYTHON_LDMODULECOMSTR")
108 boost_python_shared_object_builder = SCons.Builder.Builder(
109 action = [ ShCXXAction ],
110 prefix = '$SHOBJPREFIX',
111 suffix = '$SHOBJSUFFIX',
112 src_suffix = '$BOOST_PYTHON_CXX_SUFFIX',
113 source_scanner = SCons.Tool.SourceFileScanner,
114 single_source = True
115 )
116 boost_python_module_builder = SCons.Builder.Builder(
117 action = [ LdModuleLinkAction ],
118 prefix = '',
119 suffix = '$PYTHON_SO',
120 target_scanner = SCons.Tool.ProgramScanner,
121 src_suffix = '$SHOBJSUFFIX',
122 src_builder = 'BoostPythonSharedObject',
123 single_source = True
124 )
125 env.AppendUnique(BUILDERS = {'BoostPythonSharedObject' : boost_python_shared_object_builder})
126 env.AppendUnique(BUILDERS = {'BoostPythonModule' : boost_python_module_builder})
127
128 if env.subst('$runConfTests') in ['yes', '1']:
129 find(env)
130
131def exists(env):
132 return find(env)

Callers

nothing calls this directly

Calls 1

findFunction · 0.70

Tested by

no test coverage detected