mirror of
https://git.yoctoproject.org/poky
synced 2026-05-08 17:19:20 +00:00
boost: upgrade to 1.44.0
from version 1.36.0
which won't compile with gcc 4.5.0
also moved to meta form meta-moblin
changes:
- .so files should go to -dev instead of sub packages
- create libboostX-mt.{so,a} symlinks for compatibility
- meta package 'boost' should set ALLOW_EMPTY
- fix a bug that caused boost-dev being automatically renamed to
libboost_prg_exec_monitor-dev, packages boost, boost-dev and
boost-test now work as intended
- rebased patch arm-intrinsic
Signed-off-by: Qing He <qing.he@intel.com>
This commit is contained in:
@@ -1,12 +0,0 @@
|
||||
include boost-36.inc
|
||||
|
||||
PR = "r6"
|
||||
|
||||
SRC_URI = "${SOURCEFORGE_MIRROR}/boost/${BOOST_P}.tar.bz2 \
|
||||
file://arm-intrinsics.patch;patch=1 \
|
||||
"
|
||||
|
||||
BJAM_OPTS = '${BJAM_TOOLS} \
|
||||
--builddir=${S}/${TARGET_SYS} \
|
||||
${BJAM_EXTRA}'
|
||||
|
||||
@@ -52,16 +52,16 @@ python __anonymous () {
|
||||
extras.append("--with-%s" % lib)
|
||||
packages.append(pkg)
|
||||
if not bb.data.getVar("FILES_%s" % pkg, d, 1):
|
||||
bb.data.setVar("FILES_%s" % pkg, "${libdir}/libboost_%s*.so*" % lib, d)
|
||||
bb.data.setVar("FILES_%s" % pkg, "${libdir}/libboost_%s*.so.*" % lib, d)
|
||||
bb.data.setVar("BOOST_PACKAGES", " ".join(packages), d)
|
||||
bb.data.setVar("BJAM_EXTRA", " ".join(extras), d)
|
||||
}
|
||||
|
||||
# Override the contents of specific packages
|
||||
FILES_boost-serialization = "${libdir}/libboost_serialization*.so* \
|
||||
${libdir}/libboost_wserialization*.so*"
|
||||
FILES_boost-test = "${libdir}/libboost_prg_exec_monitor*.so \
|
||||
${libdir}/libboost_unit_test_framework*.so*"
|
||||
FILES_boost-serialization = "${libdir}/libboost_serialization*.so.* \
|
||||
${libdir}/libboost_wserialization*.so.*"
|
||||
FILES_boost-test = "${libdir}/libboost_prg_exec_monitor*.so.* \
|
||||
${libdir}/libboost_unit_test_framework*.so.*"
|
||||
|
||||
# -dev last to pick up the remaining stuff
|
||||
PACKAGES += "${PN}-dev"
|
||||
@@ -70,6 +70,7 @@ FILES_${PN}-dev = "${includedir} ${libdir}/libboost_*.so ${libdir}/libboost_*.a"
|
||||
# "boost" is a metapackage which pulls in all boost librabries
|
||||
PACKAGES += "${PN}"
|
||||
RRECOMMENDS_${PN} += "${BOOST_PACKAGES}"
|
||||
ALLOW_EMPTY_${PN} = "1"
|
||||
|
||||
# to avoid GNU_HASH QA errors added LDFLAGS to ARCH; a little bit dirty but at least it works
|
||||
TARGET_CC_ARCH += " ${LDFLAGS}"
|
||||
@@ -0,0 +1,27 @@
|
||||
include boost-36.inc
|
||||
|
||||
LICENSE = "boost"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE_1_0.txt;md5=e4224ccaecb14d942c71d31bef20d78c"
|
||||
|
||||
PR = "r0"
|
||||
|
||||
SRC_URI = "${SOURCEFORGE_MIRROR}/boost/${BOOST_P}.tar.bz2 \
|
||||
file://arm-intrinsics.patch \
|
||||
"
|
||||
|
||||
BJAM_OPTS = '${BJAM_TOOLS} \
|
||||
--builddir=${S}/${TARGET_SYS} \
|
||||
${BJAM_EXTRA}'
|
||||
|
||||
# build only mt libraries and install symlinks for compatibility
|
||||
BJAM_EXTRA += "threading=multi"
|
||||
do_install_append() {
|
||||
for lib in ${BOOST_LIBS}; do
|
||||
if [ -e ${D}${libdir}/libboost_${lib}.a ]; then
|
||||
ln -s libboost_${lib}.a ${D}${libdir}/libboost_${lib}-mt.a
|
||||
fi
|
||||
if [ -e ${D}${libdir}/libboost_${lib}.so ]; then
|
||||
ln -s libboost_${lib}.so ${D}${libdir}/libboost_${lib}-mt.so
|
||||
fi
|
||||
done
|
||||
}
|
||||
+9
-7
@@ -1,9 +1,12 @@
|
||||
diff -Nurd boost_1_36_0.orig/boost/detail/atomic_count_sync.hpp boost_1_36_0.arm/boost/detail/atomic_count_sync.hpp
|
||||
--- boost_1_36_0.orig/boost/detail/atomic_count_sync.hpp 2007-11-23 12:03:14.000000000 -0500
|
||||
+++ boost_1_36_0.arm/boost/detail/atomic_count_sync.hpp 2008-09-09 13:15:21.000000000 -0400
|
||||
@@ -29,17 +29,46 @@
|
||||
8/17/2010 - rebased to 1.44 by Qing He <qing.he@intel.com>
|
||||
|
||||
diff --git a/boost/smart_ptr/detail/atomic_count_sync.hpp b/boost/smart_ptr/detail/atomic_count_sync.hpp
|
||||
index b6359b5..78b1cc2 100644
|
||||
--- a/boost/smart_ptr/detail/atomic_count_sync.hpp
|
||||
+++ b/boost/smart_ptr/detail/atomic_count_sync.hpp
|
||||
@@ -33,17 +33,46 @@ public:
|
||||
|
||||
void operator++()
|
||||
long operator++()
|
||||
{
|
||||
+#ifdef __ARM_ARCH_7A__
|
||||
+ int v1, tmp;
|
||||
@@ -16,7 +19,7 @@ diff -Nurd boost_1_36_0.orig/boost/detail/atomic_count_sync.hpp boost_1_36_0.arm
|
||||
+ : "=&r" (v1), "+Q"(value_), "=&r"(tmp)
|
||||
+ );
|
||||
+#else
|
||||
__sync_add_and_fetch( &value_, 1 );
|
||||
return __sync_add_and_fetch( &value_, 1 );
|
||||
+#endif
|
||||
}
|
||||
|
||||
@@ -48,4 +51,3 @@ diff -Nurd boost_1_36_0.orig/boost/detail/atomic_count_sync.hpp boost_1_36_0.arm
|
||||
}
|
||||
|
||||
private:
|
||||
Binary files boost_1_36_0.orig/boost/detail/.atomic_count_sync.hpp.swp and boost_1_36_0.arm/boost/detail/.atomic_count_sync.hpp.swp differ
|
||||
Reference in New Issue
Block a user