[arch-commits] Commit in boost/trunk (BOOST_FOREACH.patch PKGBUILD)

Ionut Biru ibiru at archlinux.org
Sun Nov 27 10:43:46 UTC 2011


    Date: Sunday, November 27, 2011 @ 05:43:46
  Author: ibiru
Revision: 143605

fix wesnoth compilation

Added:
  boost/trunk/BOOST_FOREACH.patch
Modified:
  boost/trunk/PKGBUILD

---------------------+
 BOOST_FOREACH.patch |   60 ++++++++++++++++++++++++++++++++++++++++++++++++++
 PKGBUILD            |   15 ++++++++----
 2 files changed, 70 insertions(+), 5 deletions(-)

Added: BOOST_FOREACH.patch
===================================================================
--- BOOST_FOREACH.patch	                        (rev 0)
+++ BOOST_FOREACH.patch	2011-11-27 10:43:46 UTC (rev 143605)
@@ -0,0 +1,60 @@
+Index: /trunk/boost/foreach_fwd.hpp
+===================================================================
+--- /trunk/boost/foreach_fwd.hpp	(revision 62661)
++++ /trunk/boost/foreach_fwd.hpp	(revision 75540)
+@@ -15,4 +15,6 @@
+ #define BOOST_FOREACH_FWD_HPP
+ 
++#include <utility> // for std::pair
++
+ // This must be at global scope, hence the uglified name
+ enum boost_foreach_argument_dependent_lookup_hack
+@@ -26,4 +28,7 @@
+ namespace foreach
+ {
++    template<typename T>
++    std::pair<T, T> in_range(T begin, T end);
++
+     ///////////////////////////////////////////////////////////////////////////////
+     // boost::foreach::tag
+@@ -47,4 +52,22 @@
+ } // namespace foreach
+ 
++// Workaround for unfortunate https://svn.boost.org/trac/boost/ticket/6131
++namespace BOOST_FOREACH
++{
++    using foreach::in_range;
++    using foreach::tag;
++
++    template<typename T>
++    struct is_lightweight_proxy
++      : foreach::is_lightweight_proxy<T>
++    {};
++
++    template<typename T>
++    struct is_noncopyable
++      : foreach::is_noncopyable<T>
++    {};
++
++} // namespace BOOST_FOREACH
++
+ } // namespace boost
+ 
+Index: /trunk/boost/foreach.hpp
+===================================================================
+--- /trunk/boost/foreach.hpp	(revision 75077)
++++ /trunk/boost/foreach.hpp	(revision 75540)
+@@ -166,5 +166,5 @@
+ //   at the global namespace for your type.
+ template<typename T>
+-inline boost::foreach::is_lightweight_proxy<T> *
++inline boost::BOOST_FOREACH::is_lightweight_proxy<T> *
+ boost_foreach_is_lightweight_proxy(T *&, BOOST_FOREACH_TAG_DEFAULT) { return 0; }
+ 
+@@ -191,5 +191,5 @@
+ //   at the global namespace for your type.
+ template<typename T>
+-inline boost::foreach::is_noncopyable<T> *
++inline boost::BOOST_FOREACH::is_noncopyable<T> *
+ boost_foreach_is_noncopyable(T *&, BOOST_FOREACH_TAG_DEFAULT) { return 0; }
+ 

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2011-11-27 10:03:52 UTC (rev 143604)
+++ PKGBUILD	2011-11-27 10:43:46 UTC (rev 143605)
@@ -8,15 +8,17 @@
 pkgname=('boost-libs' 'boost')
 pkgver=1.48.0
 _boostver=${pkgver//./_}
-pkgrel=1
+pkgrel=2
 arch=('i686' 'x86_64')
 url="http://www.boost.org/"
 makedepends=('icu' 'python' 'python2' 'bzip2' 'zlib' 'openmpi')
 source=(http://downloads.sourceforge.net/${pkgbase}/${pkgbase}_${_boostver}.tar.gz
-        exceptions.patch)
+        exceptions.patch
+        BOOST_FOREACH.patch)
 license=('custom')
 md5sums=('313a11e97eb56eb7efd18325354631be'
-         '9b44c28b36303152050c8c82469569c5')
+         '9b44c28b36303152050c8c82469569c5'
+         '2db6098a1a39bced4c6162eb46418320')
 
 _stagedir="${srcdir}/stagedir"
 
@@ -27,10 +29,13 @@
   echo "using python : 3.2 : /usr/bin/python : /usr/include/python3.2mu : /usr/lib ;" >> build/v2/user-config.jam
   echo "using mpi ;" >> build/v2/user-config.jam
 
-  # http://web.archiveorange.com/archive/v/Q0J4VE5bwsy3zxRXqUgd
   cd "${srcdir}"/${pkgbase}_${_boostver}
-  patch -p0 -i "${srcdir}"/exceptions.patch
+  # https://svn.boost.org/trac/boost/ticket/5731
+  patch -p0 -i "${srcdir}/exceptions.patch"
+  # https://svn.boost.org/trac/boost/ticket/6131
+  patch -p2 -i "${srcdir}/BOOST_FOREACH.patch"
 
+
   # build bjam
   cd "${srcdir}/${pkgbase}_${_boostver}/tools/build/v2/engine"
   ./build.sh cc




More information about the arch-commits mailing list