1 # This needs bjam (boost-jam-native) 3.1.16
3 # Warning! The build system for boost seems to have changed
4 # significantly since 1.33 (again).
5 DESCRIPTION = "Free peer-reviewed portable C++ source libraries"
6 HOMEPAGE = "http://www.boost.org/"
9 LICENSE = "Boost Software License"
10 DEPENDS = "python boost-jam-native zlib bzip2"
15 ${SOURCEFORGE_MIRROR}/boost/${BOOST_P}.tar.bz2 \
16 file://linux-uclibc.patch;patch=1 \
17 file://${PV}-gcc43.patch;patch=1 \
20 DEFAULT_PREFERENCE = "-1"
22 S = "${WORKDIR}/${BOOST_P}"
24 BOOST_VER = "${@"_".join(bb.data.getVar("PV",d,1).split("."))}"
25 BOOST_MAJ = "${@"_".join(bb.data.getVar("PV",d,1).split(".")[0:2])}"
26 BOOST_P = "boost_${BOOST_VER}"
28 BJAM_TOOLS = "--toolset=gcc \
29 '-sBUILD=release <optimization>space <inlining>on <debug-symbols>off' \
30 '-sPYTHON_VERSION=${PYTHON_VERSION}' \
31 '-sPYTHON=${STAGING_BINDIR_NATIVE}/python' \
32 '-sPYTHON_ROOT=${PYTHON_ROOT}' \
33 '-sBZIP2_LIBPATH=${STAGING_LIBDIR}' \
34 '-sZLIB_LIBPATH=${STAGING_LIBDIR}' \
38 BJAM_OPTS = '${BJAM_TOOLS} \
39 --builddir=${S}/${TARGET_SYS} \
42 PYTHON_ROOT = "${STAGING_DIR_HOST}/${layout_prefix}"
43 PYTHON_VERSION = "2.5"
46 cp -f boost/config/platform/linux.hpp boost/config/platform/linux-gnueabi.hpp
48 platform_config="-DBOOST_PLATFORM_CONFIG='boost/config/platform/${TARGET_OS}.hpp'"
50 echo "import toolset : using ;" > tools/build/v2/user-config.jam
51 echo "using gcc : : ${CC} : <cflags>${CFLAGS} <cxxflags>${CXXFLAGS} $platform_config<linkflags>${LDFLAGS} ;" >> tools/build/v2/user-config.jam
52 echo "using python : 2.5 : : ${STAGING_INCDIR}/python2.5 : ${STAGING_LIBDIR}/python2.5 : : ; " >> tools/build/v2/user-config.jam
57 bjam ${BJAM_OPTS} --prefix=${prefix} \
58 --exec-prefix=${exec_prefix} \
60 --includedir=${includedir}
66 --libdir=${STAGING_LIBDIR} \
67 --includedir=${STAGING_INCDIR} \
74 --libdir=${D}${libdir} \
75 --includedir=${D}${includedir} \
81 # -dev last to pick up the remaining stuff
82 PACKAGES = "${BOOSTLIBS} ${PN}-dev ${PN}"
83 FILES_${PN}-dev = "${includedir} ${libdir}/libboost_*.so ${libdir}/libboost_*.a"
85 # "boost" is a metapackage which pulls in all boost librabries
86 RRECOMMENDS_${PN} += "${BOOSTLIBS}"
88 BOOSTLIBS += "boost-date-time boost-date-time-dbg boost-date-time-mt boost-date-time-mt-dbg"
89 FILES_boost-date-time = "${libdir}/libboost_date_time.so"
90 FILES_boost-date-time-dbg = "${libdir}/libboost_date_time-d.so ${libdir}/.debug/libboost_date_time-d.so"
91 FILES_boost-date-time-mt = "${libdir}/libboost_date_time-mt.so"
92 FILES_boost-date-time-mt-dbg = "${libdir}/libboost_date_time-mt-d.so ${libdir}/.debug/libboost_date_time-mt-d.so"
94 BOOSTLIBS += "boost-filesystem boost-filesystem-dbg boost-filesystem-mt boost-filesystem-mt-dbg"
95 FILES_boost-filesystem = "${libdir}/libboost_filesystem.so"
96 FILES_boost-filesystem-dbg = "${libdir}/libboost_filesystem-d.so ${libdir}/.debug/libboost_filesystem-d.so"
97 FILES_boost-filesystem-mt = "${libdir}/libboost_filesystem-mt.so"
98 FILES_boost-filesystem-mt-dbg = "${libdir}/libboost_filesystem-mt-d.so ${libdir}/.debug/libboost_filesystem-mt-d.so"
100 BOOSTLIBS += "boost-graph boost-graph-dbg boost-graph-mt boost-graph-mt-dbg"
101 FILES_boost-graph = "${libdir}/libboost_graph.so"
102 FILES_boost-graph-dbg = "${libdir}/libboost_graph-d.so ${libdir}/.debug/libboost_graph-d.so"
103 FILES_boost-graph-mt = "${libdir}/libboost_graph-mt.so"
104 FILES_boost-graph-mt-dbg = "${libdir}/libboost_graph-mt-d.so ${libdir}/.debug/libboost_graph-mt-d.so"
106 BOOSTLIBS += "boost-iostreams boost-iostreams-dbg boost-iostreams-mt boost-iostreams-mt-dbg"
107 FILES_boost-iostreams = "${libdir}/libboost_iostreams.so"
108 FILES_boost-iostreams-dbg = "${libdir}/libboost_iostreams-d.so ${libdir}/.debug/libboost_iostreams-d.so"
109 FILES_boost-iostreams-mt = "${libdir}/libboost_iostreams-mt.so"
110 FILES_boost-iostreams-mt-dbg = "${libdir}/libboost_iostreams-mt-d.so ${libdir}/.debug/libboost_iostreams-mt-d.so"
112 BOOSTLIBS += "boost-prg-exec-monitor boost-prg-exec-monitor-dbg boost-prg-exec-monitor-mt boost-prg-exec-monitor-mt-dbg"
113 FILES_boost-prg-exec-monitor = "${libdir}/libboost_prg_exec_monitor.so"
114 FILES_boost-prg-exec-monitor-dbg = "${libdir}/libboost_prg_exec_monitor-d.so ${libdir}/.debug/libboost_prg_exec_monitor-d.so"
115 FILES_boost-prg-exec-monitor-mt = "${libdir}/libboost_prg_exec_monitor-mt.so"
116 FILES_boost-prg-exec-monitor-mt-dbg = "${libdir}/libboost_prg_exec_monitor-mt-d.so ${libdir}/.debug/libboost_prg_exec_monitor-mt-d.so"
118 BOOSTLIBS += "boost-program-options boost-program-options-dbg boost-program-options-mt boost-program-options-mt-dbg"
119 FILES_boost-program-options = "${libdir}/libboost_program_options.so"
120 FILES_boost-program-options-dbg = "${libdir}/libboost_program_options-d.so ${libdir}/.debug/libboost_program_options-d.so"
121 FILES_boost-program-options-mt = "${libdir}/libboost_program_options-mt.so"
122 FILES_boost-program-options-mt-dbg = "${libdir}/libboost_program_options-mt-d.so ${libdir}/.debug/libboost_program_options-mt-d.so"
124 BOOSTLIBS += "boost-python boost-python-dbg boost-python-mt boost-python-mt-dbg"
125 FILES_boost-python = "${libdir}/libboost_python.so"
126 FILES_boost-python-dbg = "${libdir}/libboost_python-d.so ${libdir}/.debug/libboost_python-d.so"
127 FILES_boost-python-mt = "${libdir}/libboost_python-mt.so"
128 FILES_boost-python-mt-dbg = "${libdir}/libboost_python-mt-d.so ${libdir}/.debug/libboost_python-mt-d.so"
130 BOOSTLIBS += "boost-regex boost-regex-dbg boost-regex-mt boost-regex-mt-dbg"
131 FILES_boost-regex = "${libdir}/libboost_regex.so"
132 FILES_boost-regex-dbg = "${libdir}/libboost_regex-d.so ${libdir}/.debug/libboost_regex-d.so"
133 FILES_boost-regex-mt = "${libdir}/libboost_regex-mt.so"
134 FILES_boost-regex-mt-dbg = "${libdir}/libboost_regex-mt-d.so ${libdir}/.debug/libboost_regex-mt-d.so"
136 BOOSTLIBS += "boost-serialization boost-serialization-dbg boost-serialization-mt boost-serialization-mt-dbg"
137 FILES_boost-serialization = "${libdir}/libboost_serialization.so"
138 FILES_boost-serialization-dbg = "${libdir}/libboost_serialization-d.so ${libdir}/.debug/libboost_serialization-d.so"
139 FILES_boost-serialization-mt = "${libdir}/libboost_serialization-mt.so"
140 FILES_boost-serialization-mt-dbg = "${libdir}/libboost_serialization-mt-d.so ${libdir}/.debug/libboost_serialization-mt-d.so"
142 BOOSTLIBS += "boost-signals boost-signals-dbg boost-signals-mt boost-signals-mt-dbg"
143 FILES_boost-signals = "${libdir}/libboost_signals.so"
144 FILES_boost-signals-dbg = "${libdir}/libboost_signals-d.so ${libdir}/.debug/libboost_signals-d.so"
145 FILES_boost-signals-mt = "${libdir}/libboost_signals-mt.so"
146 FILES_boost-signals-mt-dbg = "${libdir}/libboost_signals-mt-d.so ${libdir}/.debug/libboost_signals-mt-d.so"
148 BOOSTLIBS += "boost-thread-mt boost-thread-mt-dbg"
149 FILES_boost-thread-mt = "${libdir}/libboost_thread-mt.so"
150 FILES_boost-thread-mt-dbg = "${libdir}/libboost_thread-mt-d.so ${libdir}/.debug/libboost_thread-mt-d.so"
152 BOOSTLIBS += "boost-unit-test-framework boost-unit-test-framework-dbg boost-unit-test-framework-mt boost-unit-test-framework-mt-dbg"
153 FILES_boost-unit-test-framework = "${libdir}/libboost_unit_test_framework.so"
154 FILES_boost-unit-test-framework-dbg = "${libdir}/libboost_unit_test_framework-d.so ${libdir}/.debug/libboost_unit_test_framework-d.so"
155 FILES_boost-unit-test-framework-mt = "${libdir}/libboost_unit_test_framework-mt.so"
156 FILES_boost-unit-test-framework-mt-dbg = "${libdir}/libboost_unit_test_framework-mt-d.so ${libdir}/.debug/libboost_unit_test_framework-mt-d.so"
158 BOOSTLIBS += "boost-wave boost-wave-dbg boost-wave-mt boost-wave-mt-dbg"
159 FILES_boost-wave = "${libdir}/libboost_wave.so"
160 FILES_boost-wave-dbg = "${libdir}/libboost_wave-d.so ${libdir}/.debug/libboost_wave-d.so"
161 FILES_boost-wave-mt = "${libdir}/libboost_wave-mt.so"
162 FILES_boost-wave-mt-dbg = "${libdir}/libboost_wave-mt-d.so ${libdir}/.debug/libboost_wave-mt-d.so"
164 BOOSTLIBS += "boost-wserialization boost-wserialization-dbg boost-wserialization-mt boost-wserialization-mt-dbg"
165 FILES_boost-wserialization = "${libdir}/libboost_wserialization.so"
166 FILES_boost-wserialization-dbg = "${libdir}/libboost_wserialization-d.so ${libdir}/.debug/libboost_wserialization-d.so"
167 FILES_boost-wserialization-mt = "${libdir}/libboost_wserialization-mt.so"
168 FILES_boost-wserialization-mt-dbg = "${libdir}/libboost_wserialization-mt-d.so ${libdir}/.debug/libboost_wserialization-mt-d.so"