summaryrefslogtreecommitdiff
path: root/meta-pkgs
diff options
context:
space:
mode:
authoradam <adam@pkgsrc.org>2012-01-09 16:33:13 +0000
committeradam <adam@pkgsrc.org>2012-01-09 16:33:13 +0000
commitab7f4af69d3e3e81b8bddeecd8463d3efd26b1d2 (patch)
tree90dd4a94fcee8d6f6126e1885879dacb506f5978 /meta-pkgs
parentf4bb6803484f8df2dce9403bba4de0a2e6256e0b (diff)
downloadpkgsrc-ab7f4af69d3e3e81b8bddeecd8463d3efd26b1d2.tar.gz
Fix for boost::foreach, PR#45802
Diffstat (limited to 'meta-pkgs')
-rw-r--r--meta-pkgs/boost/distinfo4
-rw-r--r--meta-pkgs/boost/patches/patch-boost_foreach.hpp24
-rw-r--r--meta-pkgs/boost/patches/patch-boost_foreach_fwd.hpp48
3 files changed, 75 insertions, 1 deletions
diff --git a/meta-pkgs/boost/distinfo b/meta-pkgs/boost/distinfo
index 19612f76fcf..ee66614b3d5 100644
--- a/meta-pkgs/boost/distinfo
+++ b/meta-pkgs/boost/distinfo
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.38 2012/01/08 11:35:07 adam Exp $
+$NetBSD: distinfo,v 1.39 2012/01/09 16:33:13 adam Exp $
SHA1 (boost_1_48_0.tar.bz2) = 27aced5086e96c6f7b2b684bda2bd515e115da35
RMD160 (boost_1_48_0.tar.bz2) = e006121ae5cac37aa419ac5bbf59e090e6ca7f70
@@ -12,3 +12,5 @@ SHA1 (patch-ag) = b19bf29b0c08ede6470e0a697f99d4ea796ab987
SHA1 (patch-ai) = e55ca82da06d23c362f041b0b5f92bbd09663379
SHA1 (patch-aq) = e5c7b72ffa2942ce401f3d9bf05498fd761df17a
SHA1 (patch-ar) = 91981e2edb93666de78c203a6cef3d5011b2b26a
+SHA1 (patch-boost_foreach.hpp) = 7cd26c4983873bcac284ad400950e341c559f9a8
+SHA1 (patch-boost_foreach_fwd.hpp) = 5accd68d559213a9677f7d1204e72dd082a42a41
diff --git a/meta-pkgs/boost/patches/patch-boost_foreach.hpp b/meta-pkgs/boost/patches/patch-boost_foreach.hpp
new file mode 100644
index 00000000000..757c4b63694
--- /dev/null
+++ b/meta-pkgs/boost/patches/patch-boost_foreach.hpp
@@ -0,0 +1,24 @@
+$NetBSD: patch-boost_foreach.hpp,v 1.1 2012/01/09 16:33:14 adam Exp $
+
+https://svn.boost.org/trac/boost/ticket/6131
+
+--- boost/foreach.hpp.orig 2012-01-09 15:55:10.000000000 +0000
++++ boost/foreach.hpp
+@@ -165,7 +165,7 @@ namespace foreach
+ // this one works on legacy compilers. Overload boost_foreach_is_lightweight_proxy
+ // 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; }
+
+ template<typename T>
+@@ -190,7 +190,7 @@ boost_foreach_is_lightweight_proxy(T **&
+ // this one works on legacy compilers. Overload boost_foreach_is_noncopyable
+ // 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; }
+
+ namespace boost
diff --git a/meta-pkgs/boost/patches/patch-boost_foreach_fwd.hpp b/meta-pkgs/boost/patches/patch-boost_foreach_fwd.hpp
new file mode 100644
index 00000000000..a9f558d827f
--- /dev/null
+++ b/meta-pkgs/boost/patches/patch-boost_foreach_fwd.hpp
@@ -0,0 +1,48 @@
+$NetBSD: patch-boost_foreach_fwd.hpp,v 1.1 2012/01/09 16:33:14 adam Exp $
+
+https://svn.boost.org/trac/boost/ticket/6131
+
+--- boost/foreach_fwd.hpp.orig 2012-01-09 15:58:44.000000000 +0000
++++ boost/foreach_fwd.hpp
+@@ -14,6 +14,8 @@
+ #ifndef BOOST_FOREACH_FWD_HPP
+ #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
+ {
+@@ -25,6 +27,9 @@ namespace boost
+
+ namespace foreach
+ {
++ template<typename T>
++ std::pair<T, T> in_range(T begin, T end);
++
+ ///////////////////////////////////////////////////////////////////////////////
+ // boost::foreach::tag
+ //
+@@ -46,6 +51,22 @@ namespace foreach
+
+ } // namespace foreach
+
++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
+
+ #endif