diff options
Diffstat (limited to 'packages/boost')
-rw-r--r-- | packages/boost/boost-jam-native.inc | 30 | ||||
-rw-r--r-- | packages/boost/boost-jam-native_3.1.11.bb | 28 | ||||
-rw-r--r-- | packages/boost/boost-jam-native_3.1.16.bb | 6 | ||||
-rw-r--r-- | packages/boost/boost.inc | 157 | ||||
-rw-r--r-- | packages/boost/boost_1.33.0.bb | 156 | ||||
-rw-r--r-- | packages/boost/boost_1.33.1.bb | 158 | ||||
-rw-r--r-- | packages/boost/files/gcc43.patch | 256 |
7 files changed, 454 insertions, 337 deletions
diff --git a/packages/boost/boost-jam-native.inc b/packages/boost/boost-jam-native.inc new file mode 100644 index 0000000000..843f912f46 --- /dev/null +++ b/packages/boost/boost-jam-native.inc @@ -0,0 +1,30 @@ +# The Boost web site provides free peer-reviewed portable +# C++ source libraries. The emphasis is on libraries which +# work well with the C++ Standard Library. The libraries are +# intended to be widely useful, and are in regular use by +# thousands of programmers across a broad spectrum of applications. +DESCRIPTION = "Make system for boost (native)" +HOMEPAGE = "http://www.boost.org/" +SECTION = "devel" +PRIORITY = "optional" +LICENSE = "Boost Software License" +PR = "r0" + +SRC_URI = "${SOURCEFORGE_MIRROR}/boost/boost-jam-${PV}.tgz" +S = "${WORKDIR}/boost-jam-${PV}" + +inherit native + +do_compile() { + set -ex + rm -rf bin.* + ./build.sh gcc +} + +# This is too terrible - the build script doesn't give any good +# way I can see to find out where the binaries are placed, so +# rely on only one bin.foo directory being created. +do_stage() { + set -ex + install -c -m 755 bin.*/bjam ${STAGING_BINDIR}/ +} diff --git a/packages/boost/boost-jam-native_3.1.11.bb b/packages/boost/boost-jam-native_3.1.11.bb index 843f912f46..2e92146a83 100644 --- a/packages/boost/boost-jam-native_3.1.11.bb +++ b/packages/boost/boost-jam-native_3.1.11.bb @@ -1,30 +1,4 @@ -# The Boost web site provides free peer-reviewed portable -# C++ source libraries. The emphasis is on libraries which -# work well with the C++ Standard Library. The libraries are -# intended to be widely useful, and are in regular use by -# thousands of programmers across a broad spectrum of applications. -DESCRIPTION = "Make system for boost (native)" -HOMEPAGE = "http://www.boost.org/" -SECTION = "devel" -PRIORITY = "optional" -LICENSE = "Boost Software License" -PR = "r0" +include boost-jam-native.inc SRC_URI = "${SOURCEFORGE_MIRROR}/boost/boost-jam-${PV}.tgz" -S = "${WORKDIR}/boost-jam-${PV}" -inherit native - -do_compile() { - set -ex - rm -rf bin.* - ./build.sh gcc -} - -# This is too terrible - the build script doesn't give any good -# way I can see to find out where the binaries are placed, so -# rely on only one bin.foo directory being created. -do_stage() { - set -ex - install -c -m 755 bin.*/bjam ${STAGING_BINDIR}/ -} diff --git a/packages/boost/boost-jam-native_3.1.16.bb b/packages/boost/boost-jam-native_3.1.16.bb new file mode 100644 index 0000000000..955f7bfac8 --- /dev/null +++ b/packages/boost/boost-jam-native_3.1.16.bb @@ -0,0 +1,6 @@ +include boost-jam-native.inc + +DEFAULT_PREFERENCE = "-1" + +SRC_URI = "${SOURCEFORGE_MIRROR}/boost/boost-jam-${PV}.tgz" + diff --git a/packages/boost/boost.inc b/packages/boost/boost.inc new file mode 100644 index 0000000000..4458f367a1 --- /dev/null +++ b/packages/boost/boost.inc @@ -0,0 +1,157 @@ +# The Boost web site provides free peer-reviewed portable +# C++ source libraries. The emphasis is on libraries which +# work well with the C++ Standard Library. The libraries are +# intended to be widely useful, and are in regular use by +# thousands of programmers across a broad spectrum of applications. +DESCRIPTION = "Free peer-reviewed portable C++ source libraries" +HOMEPAGE = "http://www.boost.org/" +SECTION = "libs" +DEPENDS = "boost-jam-native zlib" +PRIORITY = "optional" +LICENSE = "Boost Software License" +PR = "r1" + +BOOST_VER = "${@"_".join(bb.data.getVar("PV",d,1).split("."))}" +BOOST_MAJ = "${@"_".join(bb.data.getVar("PV",d,1).split(".")[0:2])}" +BOOST_P = "boost_${BOOST_VER}" + +S = "${WORKDIR}/${BOOST_P}" + +# Make a package for each library, plus -dev and -python +PACKAGES = "${PN}-dbg" +BOOSTLIBS = "" + +PACKAGES += "boost-date-time" +FILES_boost-date-time = "${libdir}/libboost_date_time.so.${PV}" + +BOOSTLIBS += "boost-filesystem" +FILES_boost-filesystem = "${libdir}/libboost_filesystem.so.${PV}" + +BOOSTLIBS += "boost-prg-exec-monitor" +FILES_boost-prg-exec-monitor = "${libdir}/libboost_prg_exec_monitor.so.${PV}" + +BOOSTLIBS += "boost-program-options" +FILES_boost-program-options = "${libdir}/libboost_program_options.so.${PV}" + +BOOSTLIBS += "boost-regex" +FILES_boost-regex = "${libdir}/libboost_regex.so.${PV}" + +BOOSTLIBS += "boost-signals" +FILES_boost-signals = "${libdir}/libboost_signals.so.${PV}" + +BOOSTLIBS += "boost-test-exec-monitor" +FILES_boost-test-exec-monitor = "${libdir}/libboost_test_exec_monitor.so.${PV}" + +BOOSTLIBS += "boost-thread-mt" +FILES_boost-thread-mt = "${libdir}/libboost_thread-mt.so.${PV}" + +BOOSTLIBS += "boost-unit-test-framework" +FILES_boost-unit-test-framework = "${libdir}/libboost_unit_test_framework.so.${PV}" + +BOOSTLIBS += "boost-iostreams" +FILES_boost-iostreams = "${libdir}/libboost_iostreams.so.${PV}" + +BOOSTLIBS += "boost-serialization" +FILES_boost-serialization = "${libdir}/libboost_serialization.so.${PV}" + +BOOSTLIBS += "boost-wserialization" +FILES_boost-wserialization = "${libdir}/libboost_wserialization.so.${PV}" + +# Python - remove this and set: +#PYTHON_ROOT = "/dev/null" +# to remove the python build +DEPENDS += "python" +PYTHON_ROOT = "${STAGING_DIR_HOST}" +PYTHON_VERSION = "2.4" + +BOOSTLIBS += "boost-python" +FILES_boost-python = "${libdir}/libboost_python.so.${PV}" + +PACKAGES += "${BOOSTLIBS}" + +# -dev last to pick up the remaining stuff +PACKAGES += "${PN}-dev" +FILES_${PN}-dev = "${includedir} ${libdir}/libboost_*.so ${libdir}/libboost_*.a" + +# "boost" is a metapackage which pulls in all boost librabries +PACKAGES += "${PN}" +RRECOMMENDS_${PN} += "${BOOSTLIBS}" + +# Oh yippee, a new build system, it's sooo cooool I could eat my own +# foot. inlining=on lets the compiler choose, I think. At least this +# stuff is documented... +# NOTE: if you leave <debug-symbols>on then in a debug build the build sys +# objcopy will be invoked, and that won't work. Building debug apparently +# requires hacking gcc-tools.jam +# +# Sometimes I wake up screaming. Famous figures are gathered in the nightmare, +# Steve Bourne, Larry Wall, the whole of the ANSI C committee. They're just +# standing there, waiting, but the truely terrifying thing is what they carry +# in their hands. At first sight each seems to bear the same thing, but it is +# not so for the forms in their grasp are ever so slightly different one from +# the other. Each is twisted in some grotesque way from the other to make each +# an unspeakable perversion impossible to perceive without the onset of madness. +# True insanity awaits anyone who perceives all of these horrors together. +# +# Quotation marks, there might be an easier way to do this, but I can't find +# it. The problem is that the user.hpp configuration file must receive a +# pre-processor macro defined as the appropriate string - complete with "'s +# around it. (<> is a possibility here but the danger to that is that the +# failure case interprets the < and > as shell redirections, creating +# random files in the source tree.) +# +#bjam: '-DBOOST_PLATFORM_CONFIG=\"config\"' +#do_compile: '-sGCC=... '"'-DBOOST_PLATFORM_CONFIG=\"config\"'" +SQD = '"' +EQD = '\"' +#boost.bb: "... '-sGCC=... '${SQD}'-DBOOST_PLATFORM_CONFIG=${EQD}config${EQD}'${SQD} ..." +BJAM_CONF = "${SQD}'-DBOOST_PLATFORM_CONFIG=${EQD}boost/config/platform/${TARGET_OS}.hpp${EQD}'${SQD}" + +# bzip2 and zip are disabled because... they're broken - the compilation simply +# isn't working with bjam. I guess they will fix it, but who needs it? This +# only affects the (new in 33) iostream library. +BJAM_TOOLS = "-sTOOLS=gcc \ + '-sGCC=${CC} '${BJAM_CONF} \ + '-sGXX=${CXX} '${BJAM_CONF} \ + '-sGCC_INCLUDE_DIRECTORY=${STAGING_INCDIR}' \ + '-sGCC_STDLIB_DIRECTORY=${STAGING_LIBDIR}' \ + '-sNO_BZIP2=1' \ + '-sNO_ZLIB=1' \ + '-sBUILD=release <optimization>space <inlining>on <debug-symbols>off' \ + '-sPYTHON_VERSION=${PYTHON_VERSION}' \ + '--layout=system' \ + " + +BJAM_OPTS = '${BJAM_TOOLS} \ + --builddir=${S}/${TARGET_SYS} \ + --with-python-root=${PYTHON_ROOT} \ + ${BJAM_EXTRA}' + + +do_configure_prepend() { + cp -f boost/config/platform/linux.hpp boost/config/platform/linux-gnueabi.hpp +} + +do_compile() { + set -ex + bjam ${BJAM_OPTS} --prefix=${prefix} \ + --exec-prefix=${exec_prefix} \ + --libdir=${libdir} \ + --includedir=${includedir} +} + +do_stage() { + set -ex + bjam ${BJAM_OPTS} \ + --libdir=${STAGING_LIBDIR} \ + --includedir=${STAGING_INCDIR} \ + install +} + +do_install() { + set -ex + bjam ${BJAM_OPTS} \ + --libdir=${D}${libdir} \ + --includedir=${D}${includedir} \ + install +} diff --git a/packages/boost/boost_1.33.0.bb b/packages/boost/boost_1.33.0.bb index 441c0754b3..f910924cf1 100644 --- a/packages/boost/boost_1.33.0.bb +++ b/packages/boost/boost_1.33.0.bb @@ -1,160 +1,6 @@ -# The Boost web site provides free peer-reviewed portable -# C++ source libraries. The emphasis is on libraries which -# work well with the C++ Standard Library. The libraries are -# intended to be widely useful, and are in regular use by -# thousands of programmers across a broad spectrum of applications. -DESCRIPTION = "Free peer-reviewed portable C++ source libraries" -HOMEPAGE = "http://www.boost.org/" -SECTION = "libs" -DEPENDS = "boost-jam-native zlib" -PRIORITY = "optional" -LICENSE = "Boost Software License" -PR = "r1" +include boost.inc -BOOST_VER = "${@"_".join(bb.data.getVar("PV",d,1).split("."))}" -BOOST_MAJ = "${@"_".join(bb.data.getVar("PV",d,1).split(".")[0:2])}" -BOOST_P = "boost_${BOOST_VER}" SRC_URI = "${SOURCEFORGE_MIRROR}/boost/${BOOST_P}.tar.bz2" #SRC_URI += "file://unit_test_log10f.patch;patch=1" SRC_URI += "file://linux-uclibc.patch;patch=1" -S = "${WORKDIR}/${BOOST_P}" - -# Make a package for each library, plus -dev and -python -PACKAGES = "${PN}-dbg" -BOOSTLIBS = "" - -PACKAGES += "boost-date-time" -FILES_boost-date-time = "${libdir}/libboost_date_time.so.${PV}" - -BOOSTLIBS += "boost-filesystem" -FILES_boost-filesystem = "${libdir}/libboost_filesystem.so.${PV}" - -BOOSTLIBS += "boost-prg-exec-monitor" -FILES_boost-prg-exec-monitor = "${libdir}/libboost_prg_exec_monitor.so.${PV}" - -BOOSTLIBS += "boost-program-options" -FILES_boost-program-options = "${libdir}/libboost_program_options.so.${PV}" - -BOOSTLIBS += "boost-regex" -FILES_boost-regex = "${libdir}/libboost_regex.so.${PV}" - -BOOSTLIBS += "boost-signals" -FILES_boost-signals = "${libdir}/libboost_signals.so.${PV}" - -BOOSTLIBS += "boost-test-exec-monitor" -FILES_boost-test-exec-monitor = "${libdir}/libboost_test_exec_monitor.so.${PV}" - -BOOSTLIBS += "boost-thread-mt" -FILES_boost-thread-mt = "${libdir}/libboost_thread-mt.so.${PV}" - -BOOSTLIBS += "boost-unit-test-framework" -FILES_boost-unit-test-framework = "${libdir}/libboost_unit_test_framework.so.${PV}" - -BOOSTLIBS += "boost-iostreams" -FILES_boost-iostreams = "${libdir}/libboost_iostreams.so.${PV}" - -BOOSTLIBS += "boost-serialization" -FILES_boost-serialization = "${libdir}/libboost_serialization.so.${PV}" - -BOOSTLIBS += "boost-wserialization" -FILES_boost-wserialization = "${libdir}/libboost_wserialization.so.${PV}" - -# Python - remove this and set: -#PYTHON_ROOT = "/dev/null" -# to remove the python build -DEPENDS += "python" -PYTHON_ROOT = "${STAGING_DIR_HOST}" -PYTHON_VERSION = "2.4" - -BOOSTLIBS += "boost-python" -FILES_boost-python = "${libdir}/libboost_python.so.${PV}" - -PACKAGES += "${BOOSTLIBS}" - -# -dev last to pick up the remaining stuff -PACKAGES += "${PN}-dev" -FILES_${PN}-dev = "${includedir} ${libdir}/libboost_*.so ${libdir}/libboost_*.a" - -# "boost" is a metapackage which pulls in all boost librabries -PACKAGES += "${PN}" -RRECOMMENDS_${PN} += "${BOOSTLIBS}" - -# Oh yippee, a new build system, it's sooo cooool I could eat my own -# foot. inlining=on lets the compiler choose, I think. At least this -# stuff is documented... -# NOTE: if you leave <debug-symbols>on then in a debug build the build sys -# objcopy will be invoked, and that won't work. Building debug apparently -# requires hacking gcc-tools.jam -# -# Sometimes I wake up screaming. Famous figures are gathered in the nightmare, -# Steve Bourne, Larry Wall, the whole of the ANSI C committee. They're just -# standing there, waiting, but the truely terrifying thing is what they carry -# in their hands. At first sight each seems to bear the same thing, but it is -# not so for the forms in their grasp are ever so slightly different one from -# the other. Each is twisted in some grotesque way from the other to make each -# an unspeakable perversion impossible to perceive without the onset of madness. -# True insanity awaits anyone who perceives all of these horrors together. -# -# Quotation marks, there might be an easier way to do this, but I can't find -# it. The problem is that the user.hpp configuration file must receive a -# pre-processor macro defined as the appropriate string - complete with "'s -# around it. (<> is a possibility here but the danger to that is that the -# failure case interprets the < and > as shell redirections, creating -# random files in the source tree.) -# -#bjam: '-DBOOST_PLATFORM_CONFIG=\"config\"' -#do_compile: '-sGCC=... '"'-DBOOST_PLATFORM_CONFIG=\"config\"'" -SQD = '"' -EQD = '\"' -#boost.bb: "... '-sGCC=... '${SQD}'-DBOOST_PLATFORM_CONFIG=${EQD}config${EQD}'${SQD} ..." -BJAM_CONF = "${SQD}'-DBOOST_PLATFORM_CONFIG=${EQD}boost/config/platform/${TARGET_OS}.hpp${EQD}'${SQD}" - -# bzip2 and zip are disabled because... they're broken - the compilation simply -# isn't working with bjam. I guess they will fix it, but who needs it? This -# only affects the (new in 33) iostream library. -BJAM_TOOLS = "-sTOOLS=gcc \ - '-sGCC=${CC} '${BJAM_CONF} \ - '-sGXX=${CXX} '${BJAM_CONF} \ - '-sGCC_INCLUDE_DIRECTORY=${STAGING_INCDIR}' \ - '-sGCC_STDLIB_DIRECTORY=${STAGING_LIBDIR}' \ - '-sNO_BZIP2=1' \ - '-sNO_ZLIB=1' \ - '-sBUILD=release <optimization>space <inlining>on <debug-symbols>off' \ - '-sPYTHON_VERSION=${PYTHON_VERSION}' \ - '--layout=system' \ - " - -BJAM_OPTS = '${BJAM_TOOLS} \ - --builddir=${S}/${TARGET_SYS} \ - --with-python-root=${PYTHON_ROOT} \ - ${BJAM_EXTRA}' - - -do_configure_prepend() { - cp -f boost/config/platform/linux.hpp boost/config/platform/linux-gnueabi.hpp -} - -do_compile() { - set -ex - bjam ${BJAM_OPTS} --prefix=${prefix} \ - --exec-prefix=${exec_prefix} \ - --libdir=${libdir} \ - --includedir=${includedir} -} - -do_stage() { - set -ex - bjam ${BJAM_OPTS} \ - --libdir=${STAGING_LIBDIR} \ - --includedir=${STAGING_INCDIR} \ - install -} - -do_install() { - set -ex - bjam ${BJAM_OPTS} \ - --libdir=${D}${libdir} \ - --includedir=${D}${includedir} \ - install -} diff --git a/packages/boost/boost_1.33.1.bb b/packages/boost/boost_1.33.1.bb index 6632f6c8ea..c08721dc9f 100644 --- a/packages/boost/boost_1.33.1.bb +++ b/packages/boost/boost_1.33.1.bb @@ -1,161 +1,9 @@ -# The Boost web site provides free peer-reviewed portable -# C++ source libraries. The emphasis is on libraries which -# work well with the C++ Standard Library. The libraries are -# intended to be widely useful, and are in regular use by -# thousands of programmers across a broad spectrum of applications. -DESCRIPTION = "Free peer-reviewed portable C++ source libraries" -HOMEPAGE = "http://www.boost.org/" -SECTION = "libs" -DEPENDS = "boost-jam-native zlib" -PRIORITY = "optional" -LICENSE = "Boost Software License" +include boost.inc + PR = "r1" -BOOST_VER = "${@"_".join(bb.data.getVar("PV",d,1).split("."))}" -BOOST_MAJ = "${@"_".join(bb.data.getVar("PV",d,1).split(".")[0:2])}" -BOOST_P = "boost_${BOOST_VER}" SRC_URI = "${SOURCEFORGE_MIRROR}/boost/${BOOST_P}.tar.bz2" #SRC_URI += "file://unit_test_log10f.patch;patch=1" SRC_URI += "file://linux-uclibc.patch;patch=1" SRC_URI += "file://atomic_count_gcc_atomicity.patch;patch=1" - -S = "${WORKDIR}/${BOOST_P}" - -# Make a package for each library, plus -dev and -python -PACKAGES = "${PN}-dbg" -BOOSTLIBS = "" - -PACKAGES += "boost-date-time" -FILES_boost-date-time = "${libdir}/libboost_date_time.so.${PV}" - -BOOSTLIBS += "boost-filesystem" -FILES_boost-filesystem = "${libdir}/libboost_filesystem.so.${PV}" - -BOOSTLIBS += "boost-prg-exec-monitor" -FILES_boost-prg-exec-monitor = "${libdir}/libboost_prg_exec_monitor.so.${PV}" - -BOOSTLIBS += "boost-program-options" -FILES_boost-program-options = "${libdir}/libboost_program_options.so.${PV}" - -BOOSTLIBS += "boost-regex" -FILES_boost-regex = "${libdir}/libboost_regex.so.${PV}" - -BOOSTLIBS += "boost-signals" -FILES_boost-signals = "${libdir}/libboost_signals.so.${PV}" - -BOOSTLIBS += "boost-test-exec-monitor" -FILES_boost-test-exec-monitor = "${libdir}/libboost_test_exec_monitor.so.${PV}" - -BOOSTLIBS += "boost-thread-mt" -FILES_boost-thread-mt = "${libdir}/libboost_thread-mt.so.${PV}" - -BOOSTLIBS += "boost-unit-test-framework" -FILES_boost-unit-test-framework = "${libdir}/libboost_unit_test_framework.so.${PV}" - -BOOSTLIBS += "boost-iostreams" -FILES_boost-iostreams = "${libdir}/libboost_iostreams.so.${PV}" - -BOOSTLIBS += "boost-serialization" -FILES_boost-serialization = "${libdir}/libboost_serialization.so.${PV}" - -BOOSTLIBS += "boost-wserialization" -FILES_boost-wserialization = "${libdir}/libboost_wserialization.so.${PV}" - -# Python - remove this and set: -#PYTHON_ROOT = "/dev/null" -# to remove the python build -DEPENDS += "python" -PYTHON_ROOT = "${STAGING_DIR_HOST}" -PYTHON_VERSION = "2.4" - -BOOSTLIBS += "boost-python" -FILES_boost-python = "${libdir}/libboost_python.so.${PV}" - -PACKAGES += "${BOOSTLIBS}" - -# -dev last to pick up the remaining stuff -PACKAGES += "${PN}-dev" -FILES_${PN}-dev = "${includedir} ${libdir}/libboost_*.so ${libdir}/libboost_*.a" - -# "boost" is a metapackage which pulls in all boost librabries -PACKAGES += "${PN}" -RRECOMMENDS_${PN} += "${BOOSTLIBS}" - -# Oh yippee, a new build system, it's sooo cooool I could eat my own -# foot. inlining=on lets the compiler choose, I think. At least this -# stuff is documented... -# NOTE: if you leave <debug-symbols>on then in a debug build the build sys -# objcopy will be invoked, and that won't work. Building debug apparently -# requires hacking gcc-tools.jam -# -# Sometimes I wake up screaming. Famous figures are gathered in the nightmare, -# Steve Bourne, Larry Wall, the whole of the ANSI C committee. They're just -# standing there, waiting, but the truely terrifying thing is what they carry -# in their hands. At first sight each seems to bear the same thing, but it is -# not so for the forms in their grasp are ever so slightly different one from -# the other. Each is twisted in some grotesque way from the other to make each -# an unspeakable perversion impossible to perceive without the onset of madness. -# True insanity awaits anyone who perceives all of these horrors together. -# -# Quotation marks, there might be an easier way to do this, but I can't find -# it. The problem is that the user.hpp configuration file must receive a -# pre-processor macro defined as the appropriate string - complete with "'s -# around it. (<> is a possibility here but the danger to that is that the -# failure case interprets the < and > as shell redirections, creating -# random files in the source tree.) -# -#bjam: '-DBOOST_PLATFORM_CONFIG=\"config\"' -#do_compile: '-sGCC=... '"'-DBOOST_PLATFORM_CONFIG=\"config\"'" -SQD = '"' -EQD = '\"' -#boost.bb: "... '-sGCC=... '${SQD}'-DBOOST_PLATFORM_CONFIG=${EQD}config${EQD}'${SQD} ..." -BJAM_CONF = "${SQD}'-DBOOST_PLATFORM_CONFIG=${EQD}boost/config/platform/${TARGET_OS}.hpp${EQD}'${SQD}" - -# bzip2 and zip are disabled because... they're broken - the compilation simply -# isn't working with bjam. I guess they will fix it, but who needs it? This -# only affects the (new in 33) iostream library. -BJAM_TOOLS = "-sTOOLS=gcc \ - '-sGCC=${CC} '${BJAM_CONF} \ - '-sGXX=${CXX} '${BJAM_CONF} \ - '-sGCC_INCLUDE_DIRECTORY=${STAGING_INCDIR}' \ - '-sGCC_STDLIB_DIRECTORY=${STAGING_LIBDIR}' \ - '-sNO_BZIP2=1' \ - '-sNO_ZLIB=1' \ - '-sBUILD=release <optimization>space <inlining>on <debug-symbols>off' \ - '-sPYTHON_VERSION=${PYTHON_VERSION}' \ - '--layout=system' \ - " - -BJAM_OPTS = '${BJAM_TOOLS} \ - --builddir=${S}/${TARGET_SYS} \ - --with-python-root=${PYTHON_ROOT} \ - ${BJAM_EXTRA}' - - -do_configure_prepend() { - cp -f boost/config/platform/linux.hpp boost/config/platform/linux-gnueabi.hpp -} - -do_compile() { - set -ex - bjam ${BJAM_OPTS} --prefix=${prefix} \ - --exec-prefix=${exec_prefix} \ - --libdir=${libdir} \ - --includedir=${includedir} -} - -do_stage() { - set -ex - bjam ${BJAM_OPTS} \ - --libdir=${STAGING_LIBDIR} \ - --includedir=${STAGING_INCDIR} \ - install -} - -do_install() { - set -ex - bjam ${BJAM_OPTS} \ - --libdir=${D}${libdir} \ - --includedir=${D}${includedir} \ - install -} +SRC_URI += "file://gcc43.patch;patch=1" diff --git a/packages/boost/files/gcc43.patch b/packages/boost/files/gcc43.patch new file mode 100644 index 0000000000..aefe0800c3 --- /dev/null +++ b/packages/boost/files/gcc43.patch @@ -0,0 +1,256 @@ +diff -aNru boost_1_34_1-ORIGINAL/boost/archive/polymorphic_iarchive.hpp boost_1_34_1/boost/archive/polymorphic_iarchive.hpp +--- boost_1_34_1-ORIGINAL/boost/archive/polymorphic_iarchive.hpp 2005-12-11 00:12:51.000000000 -0600 ++++ boost_1_34_1/boost/archive/polymorphic_iarchive.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -17,6 +17,7 @@ + // See http://www.boost.org for updates, documentation, and revision history. + + #include <cstddef> // std::size_t ++#include <climits> + #include <boost/config.hpp> + + #if defined(BOOST_NO_STDC_NAMESPACE) +diff -aNru boost_1_34_1-ORIGINAL/boost/archive/polymorphic_oarchive.hpp boost_1_34_1/boost/archive/polymorphic_oarchive.hpp +--- boost_1_34_1-ORIGINAL/boost/archive/polymorphic_oarchive.hpp 2006-02-11 23:43:06.000000000 -0600 ++++ boost_1_34_1/boost/archive/polymorphic_oarchive.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -17,6 +17,7 @@ + // See http://www.boost.org for updates, documentation, and revision history. + + #include <cstddef> // size_t ++#include <climits> + #include <string> + + #include <boost/config.hpp> +diff -aNru boost_1_34_1-ORIGINAL/boost/date_time/date_facet.hpp boost_1_34_1/boost/date_time/date_facet.hpp +--- boost_1_34_1-ORIGINAL/boost/date_time/date_facet.hpp 2005-09-05 16:10:50.000000000 -0500 ++++ boost_1_34_1/boost/date_time/date_facet.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -429,7 +429,7 @@ + typedef std::basic_string<CharT> string_type; + typedef CharT char_type; + typedef boost::date_time::period_parser<date_type, CharT> period_parser_type; +- typedef special_values_parser<date_type,CharT> special_values_parser_type; ++ typedef boost::date_time::special_values_parser<date_type,CharT> special_values_parser_type; + typedef std::vector<std::basic_string<CharT> > input_collection_type; + typedef format_date_parser<date_type, CharT> format_date_parser_type; + // date_generators stuff goes here +diff -aNru boost_1_34_1-ORIGINAL/boost/mpl/zip_view.hpp boost_1_34_1/boost/mpl/zip_view.hpp +--- boost_1_34_1-ORIGINAL/boost/mpl/zip_view.hpp 2004-09-02 10:40:42.000000000 -0500 ++++ boost_1_34_1/boost/mpl/zip_view.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -37,7 +37,7 @@ + typedef zip_iterator< + typename transform1< + IteratorSeq +- , next<_1> ++ , boost::mpl::next<_1> + >::type + > next; + }; +@@ -48,8 +48,8 @@ + struct zip_view + { + private: +- typedef typename transform1< Sequences, begin<_1> >::type first_ones_; +- typedef typename transform1< Sequences, end<_1> >::type last_ones_; ++ typedef typename transform1< Sequences, boost::mpl::begin<_1> >::type first_ones_; ++ typedef typename transform1< Sequences, boost::mpl::end<_1> >::type last_ones_; + + public: + typedef nested_begin_end_tag tag; +diff -aNru boost_1_34_1-ORIGINAL/boost/python/detail/def_helper.hpp boost_1_34_1/boost/python/detail/def_helper.hpp +--- boost_1_34_1-ORIGINAL/boost/python/detail/def_helper.hpp 2004-09-15 20:00:28.000000000 -0500 ++++ boost_1_34_1/boost/python/detail/def_helper.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -155,7 +155,7 @@ + , T3 const& + , T4 const& + , default_call_policies +- , keywords<0> ++ , boost::python::detail::keywords<0> + , char const* + , void(not_specified::*)() // A function pointer type which is never an + // appropriate default implementation +diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex_creator.hpp boost_1_34_1/boost/regex/v4/basic_regex_creator.hpp +--- boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex_creator.hpp 2006-07-16 11:06:38.000000000 -0500 ++++ boost_1_34_1/boost/regex/v4/basic_regex_creator.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -24,6 +24,8 @@ + # include BOOST_ABI_PREFIX + #endif + ++#include <climits> ++ + namespace boost{ + + namespace re_detail{ +diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex.hpp boost_1_34_1/boost/regex/v4/basic_regex.hpp +--- boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex.hpp 2007-06-05 12:28:18.000000000 -0500 ++++ boost_1_34_1/boost/regex/v4/basic_regex.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -23,6 +23,8 @@ + # include BOOST_ABI_PREFIX + #endif + ++#include <climits> ++ + namespace boost{ + #ifdef BOOST_MSVC + #pragma warning(push) +diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex_parser.hpp boost_1_34_1/boost/regex/v4/basic_regex_parser.hpp +--- boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex_parser.hpp 2006-12-20 11:19:05.000000000 -0600 ++++ boost_1_34_1/boost/regex/v4/basic_regex_parser.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -23,6 +23,8 @@ + # include BOOST_ABI_PREFIX + #endif + ++#include <climits> ++ + namespace boost{ + namespace re_detail{ + +diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/cpp_regex_traits.hpp boost_1_34_1/boost/regex/v4/cpp_regex_traits.hpp +--- boost_1_34_1-ORIGINAL/boost/regex/v4/cpp_regex_traits.hpp 2007-01-15 05:09:44.000000000 -0600 ++++ boost_1_34_1/boost/regex/v4/cpp_regex_traits.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -41,6 +41,7 @@ + + #include <istream> + #include <ios> ++#include <climits> + + #ifdef BOOST_HAS_ABI_HEADERS + # include BOOST_ABI_PREFIX +diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/perl_matcher.hpp boost_1_34_1/boost/regex/v4/perl_matcher.hpp +--- boost_1_34_1-ORIGINAL/boost/regex/v4/perl_matcher.hpp 2006-10-18 07:55:30.000000000 -0500 ++++ boost_1_34_1/boost/regex/v4/perl_matcher.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -18,6 +18,8 @@ + # include BOOST_ABI_PREFIX + #endif + ++#include <climits> ++ + namespace boost{ + namespace re_detail{ + +diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/regex_split.hpp boost_1_34_1/boost/regex/v4/regex_split.hpp +--- boost_1_34_1-ORIGINAL/boost/regex/v4/regex_split.hpp 2005-01-21 11:22:38.000000000 -0600 ++++ boost_1_34_1/boost/regex/v4/regex_split.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -21,6 +21,8 @@ + #ifndef BOOST_REGEX_SPLIT_HPP + #define BOOST_REGEX_SPLIT_HPP + ++#include <climits> ++ + namespace boost{ + + #ifdef BOOST_HAS_ABI_HEADERS +diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/states.hpp boost_1_34_1/boost/regex/v4/states.hpp +--- boost_1_34_1-ORIGINAL/boost/regex/v4/states.hpp 2005-09-20 07:01:25.000000000 -0500 ++++ boost_1_34_1/boost/regex/v4/states.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -23,6 +23,8 @@ + # include BOOST_ABI_PREFIX + #endif + ++#include <climits> ++ + namespace boost{ + namespace re_detail{ + +diff -aNru boost_1_34_1-ORIGINAL/boost/serialization/collection_traits.hpp boost_1_34_1/boost/serialization/collection_traits.hpp +--- boost_1_34_1-ORIGINAL/boost/serialization/collection_traits.hpp 2005-06-21 00:19:04.000000000 -0500 ++++ boost_1_34_1/boost/serialization/collection_traits.hpp 2008-03-03 03:09:49.000000000 -0600 +@@ -22,6 +22,7 @@ + // compiles recognize the same set of primitive types, the possibility + // exists for archives to be non-portable if class information for primitive + // types is included. This is addressed by the following macros. ++#include <climits> + #include <boost/config.hpp> + #include <boost/mpl/integral_c.hpp> + #include <boost/mpl/integral_c_tag.hpp> +diff -aNru boost_1_34_1-ORIGINAL/boost/spirit/phoenix/operators.hpp boost_1_34_1/boost/spirit/phoenix/operators.hpp +--- boost_1_34_1-ORIGINAL/boost/spirit/phoenix/operators.hpp 2006-08-25 11:27:30.000000000 -0500 ++++ boost_1_34_1/boost/spirit/phoenix/operators.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -24,6 +24,7 @@ + #include <boost/spirit/phoenix/composite.hpp> + #include <boost/config.hpp> + #include <boost/mpl/if.hpp> ++#include <climits> + + /////////////////////////////////////////////////////////////////////////////// + namespace phoenix { +diff -aNru boost_1_34_1-ORIGINAL/boost/test/test_tools.hpp boost_1_34_1/boost/test/test_tools.hpp +--- boost_1_34_1-ORIGINAL/boost/test/test_tools.hpp 2007-02-22 11:57:29.000000000 -0600 ++++ boost_1_34_1/boost/test/test_tools.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -42,6 +42,7 @@ + #include <boost/mpl/or.hpp> + + // STL ++#include <climits> + #include <cstddef> // for std::size_t + #include <iosfwd> + +diff -aNru boost_1_34_1-ORIGINAL/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp boost_1_34_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp +--- boost_1_34_1-ORIGINAL/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2006-12-20 10:38:24.000000000 -0600 ++++ boost_1_34_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -16,6 +16,7 @@ + #include <string> + #include <cstdio> + #include <cstdarg> ++#include <cstring> + #if defined(BOOST_SPIRIT_DEBUG) + #include <iostream> + #endif // defined(BOOST_SPIRIT_DEBUG) +diff -aNru boost_1_34_1-ORIGINAL/boost/wave/util/flex_string.hpp boost_1_34_1/boost/wave/util/flex_string.hpp +--- boost_1_34_1-ORIGINAL/boost/wave/util/flex_string.hpp 2006-04-25 12:21:01.000000000 -0500 ++++ boost_1_34_1/boost/wave/util/flex_string.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -94,6 +94,7 @@ + #include <limits> + #include <stdexcept> + #include <cstddef> ++#include <cstring> + + // this must occur after all of the includes and before any code appears + #ifdef BOOST_HAS_ABI_HEADERS + +--- boost_1_33_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2008-07-05 01:50:04.000000000 +0200 ++++ boost_1_34_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2006-12-20 17:38:24.000000000 +0100 +@@ -295,17 +325,20 @@ + + lex_functor(IteratorT const &first, IteratorT const &last, + PositionT const &pos, boost::wave::language_support language) +- : lexer(first, last, pos, language) ++ : re2c_lexer(first, last, pos, language) + {} + virtual ~lex_functor() {} + + // get the next token from the input stream +- token_type get() { return lexer.get(); } +- void set_position(PositionT const &pos) +- { lexer.set_position(pos); } ++ token_type get() { return re2c_lexer.get(); } ++ void set_position(PositionT const &pos) { re2c_lexer.set_position(pos); } ++#if BOOST_WAVE_SUPPORT_PRAGMA_ONCE != 0 ++ bool has_include_guards(std::string& guard_name) const ++ { return re2c_lexer.has_include_guards(guard_name); } ++#endif + + private: +- lexer<IteratorT, PositionT> lexer; ++ lexer<IteratorT, PositionT> re2c_lexer; + }; + + /////////////////////////////////////////////////////////////////////////////// +@@ -338,7 +371,7 @@ + // It is coupled to the iterator type to allow to decouple the lexer/iterator + // configurations at compile time. + // +-// This function is declared inside the cpp_slex_token.hpp file, which is ++// This function is declared inside the cpp_lex_token.hpp file, which is + // referenced by the source file calling the lexer and the source file, which + // instantiates the lex_functor. But is is defined here, so it will be + // instantiated only while compiling the source file, which instantiates the +@@ -356,8 +389,8 @@ + IteratorT const &last, PositionT const &pos, + boost::wave::language_support language) + { +- return new re2clex::lex_functor<IteratorT, PositionT>(first, last, pos, +- language); ++ using re2clex::lex_functor; ++ return new lex_functor<IteratorT, PositionT>(first, last, pos, language); + } + + #undef BOOST_WAVE_RE2C_NEW_LEXER_INLINE |