[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