[12] | 1 | # (C) Copyright David Abrahams 2001. Permission to copy, use, modify, sell and |
---|
| 2 | # distribute this software is granted provided this copyright notice appears |
---|
| 3 | # in all copies. This software is provided "as is" without express or implied |
---|
| 4 | # warranty, and with no claim as to its suitability for any purpose. |
---|
| 5 | # |
---|
| 6 | # Boost.Python library Jamfile |
---|
| 7 | |
---|
| 8 | |
---|
| 9 | # declare the location of this subproject relative to the root |
---|
| 10 | subproject libs/python/build ; |
---|
| 11 | |
---|
| 12 | # bring in the rules for python |
---|
| 13 | import python ; |
---|
| 14 | |
---|
| 15 | if [ check-python-config ] |
---|
| 16 | { |
---|
| 17 | |
---|
| 18 | local bpl-linkflags ; |
---|
| 19 | |
---|
| 20 | if $(UNIX) && ( $(OS) = AIX ) |
---|
| 21 | { |
---|
| 22 | bpl-linkflags = <linkflags>"-e initlibboost_python" ; |
---|
| 23 | } |
---|
| 24 | |
---|
| 25 | # Enabling intrinsics (/0i) or maximize speed (/02) seem to cause |
---|
| 26 | # internal compiler errors with this toolset. |
---|
| 27 | local msvc-stlport-workarounds |
---|
| 28 | = <optimization>off "<cxxflags>-Ogty -O1 -Gs" ; |
---|
| 29 | |
---|
| 30 | local sources = |
---|
| 31 | numeric.cpp |
---|
| 32 | list.cpp |
---|
| 33 | long.cpp |
---|
| 34 | dict.cpp |
---|
| 35 | tuple.cpp |
---|
| 36 | str.cpp |
---|
| 37 | slice.cpp |
---|
| 38 | |
---|
| 39 | aix_init_module.cpp |
---|
| 40 | converter/from_python.cpp |
---|
| 41 | converter/registry.cpp |
---|
| 42 | converter/type_id.cpp |
---|
| 43 | object/enum.cpp |
---|
| 44 | object/class.cpp |
---|
| 45 | object/function.cpp |
---|
| 46 | object/inheritance.cpp |
---|
| 47 | object/life_support.cpp |
---|
| 48 | object/pickle_support.cpp |
---|
| 49 | errors.cpp |
---|
| 50 | module.cpp |
---|
| 51 | converter/builtin_converters.cpp |
---|
| 52 | converter/arg_to_python_base.cpp |
---|
| 53 | object/iterator.cpp |
---|
| 54 | object_protocol.cpp |
---|
| 55 | object_operators.cpp |
---|
| 56 | wrapper.cpp |
---|
| 57 | ; |
---|
| 58 | |
---|
| 59 | dll boost_python |
---|
| 60 | : ../src/$(sources) |
---|
| 61 | : $(BOOST_PYTHON_V2_PROPERTIES) |
---|
| 62 | <define>BOOST_PYTHON_SOURCE |
---|
| 63 | $(bpl-linkflags) |
---|
| 64 | <msvc-stlport><release>$(msvc-stlport-workarounds) |
---|
| 65 | <darwin><*><linkflags>-bind_at_load |
---|
| 66 | <gcc-3_3-darwin><*><linkflags>-bind_at_load |
---|
| 67 | ; |
---|
| 68 | |
---|
| 69 | template extension |
---|
| 70 | : <dll>boost_python |
---|
| 71 | : <sysinclude>../../.. |
---|
| 72 | ; |
---|
| 73 | |
---|
| 74 | lib boost_python |
---|
| 75 | : # sources |
---|
| 76 | ../src/$(sources) |
---|
| 77 | |
---|
| 78 | : # requirements |
---|
| 79 | $(BOOST_PYTHON_V2_PROPERTIES) |
---|
| 80 | <define>BOOST_PYTHON_SOURCE |
---|
| 81 | <define>BOOST_STATIC_LIB |
---|
| 82 | $(bpl-linkflags) |
---|
| 83 | <msvc-stlport><release>$(msvc-stlport-workarounds) |
---|
| 84 | ; |
---|
| 85 | |
---|
| 86 | stage bin-stage : <dll>boost_python <lib>boost_python |
---|
| 87 | : <tag><debug>"_debug" |
---|
| 88 | <tag><debug-python>"_pydebug" |
---|
| 89 | : |
---|
| 90 | debug release |
---|
| 91 | ; |
---|
| 92 | |
---|
| 93 | install python lib |
---|
| 94 | : <dll>boost_python <lib>boost_python |
---|
| 95 | ; |
---|
| 96 | } |
---|