diff options
author | adam <adam@pkgsrc.org> | 2012-01-09 16:33:13 +0000 |
---|---|---|
committer | adam <adam@pkgsrc.org> | 2012-01-09 16:33:13 +0000 |
commit | ab7f4af69d3e3e81b8bddeecd8463d3efd26b1d2 (patch) | |
tree | 90dd4a94fcee8d6f6126e1885879dacb506f5978 /meta-pkgs | |
parent | f4bb6803484f8df2dce9403bba4de0a2e6256e0b (diff) | |
download | pkgsrc-ab7f4af69d3e3e81b8bddeecd8463d3efd26b1d2.tar.gz |
Fix for boost::foreach, PR#45802
Diffstat (limited to 'meta-pkgs')
-rw-r--r-- | meta-pkgs/boost/distinfo | 4 | ||||
-rw-r--r-- | meta-pkgs/boost/patches/patch-boost_foreach.hpp | 24 | ||||
-rw-r--r-- | meta-pkgs/boost/patches/patch-boost_foreach_fwd.hpp | 48 |
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 |