]> code.ossystems Code Review - openembedded-core.git/commitdiff
boost: upgrade to 1.44.0
authorQing He <qing.he@intel.com>
Thu, 19 Aug 2010 05:32:07 +0000 (13:32 +0800)
committerRichard Purdie <rpurdie@linux.intel.com>
Tue, 31 Aug 2010 16:18:55 +0000 (17:18 +0100)
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>
12 files changed:
meta-moblin/packages/boost/boost_1.36.0.bb [deleted file]
meta/packages/boost/boost-36.inc [moved from meta-moblin/packages/boost/boost-36.inc with 96% similarity]
meta/packages/boost/boost-jam-native.inc [moved from meta-moblin/packages/boost/boost-jam-native.inc with 100% similarity]
meta/packages/boost/boost-jam-native_3.1.18.bb [moved from meta-moblin/packages/boost/boost-jam-native_3.1.16.bb with 100% similarity]
meta/packages/boost/boost_1.44.0.bb [new file with mode: 0644]
meta/packages/boost/files/1.34.1-gcc43.patch [moved from meta-moblin/packages/boost/files/1.34.1-gcc43.patch with 100% similarity]
meta/packages/boost/files/arm-intrinsics.patch [moved from meta-moblin/packages/boost/files/arm-intrinsics.patch with 68% similarity]
meta/packages/boost/files/atomic_count_gcc_atomicity.patch [moved from meta-moblin/packages/boost/files/atomic_count_gcc_atomicity.patch with 100% similarity]
meta/packages/boost/files/gcc41.patch [moved from meta-moblin/packages/boost/files/gcc41.patch with 100% similarity]
meta/packages/boost/files/gcc43.patch [moved from meta-moblin/packages/boost/files/gcc43.patch with 100% similarity]
meta/packages/boost/files/linux-uclibc.patch [moved from meta-moblin/packages/boost/files/linux-uclibc.patch with 100% similarity]
meta/packages/boost/files/unit_test_log10f.patch [moved from meta-moblin/packages/boost/files/unit_test_log10f.patch with 100% similarity]

diff --git a/meta-moblin/packages/boost/boost_1.36.0.bb b/meta-moblin/packages/boost/boost_1.36.0.bb
deleted file mode 100644 (file)
index 140ab29..0000000
+++ /dev/null
@@ -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}'
-
similarity index 96%
rename from meta-moblin/packages/boost/boost-36.inc
rename to meta/packages/boost/boost-36.inc
index d297dfb1af894c41ffe9a7c2f92b90e41b622f1c..5d2d1280be237189b5c769d4d914e2f923842fd4 100644 (file)
@@ -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}" 
diff --git a/meta/packages/boost/boost_1.44.0.bb b/meta/packages/boost/boost_1.44.0.bb
new file mode 100644 (file)
index 0000000..81a2e53
--- /dev/null
@@ -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
+}
similarity index 68%
rename from meta-moblin/packages/boost/files/arm-intrinsics.patch
rename to meta/packages/boost/files/arm-intrinsics.patch
index 860b6df67c363462cd9976172cbac8799ae42260..3f9c620ebe5fad581b8a424b81be2f1cb5382fb5 100644 (file)
@@ -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