From: Michael Tremer Date: Sun, 7 Feb 2010 14:53:49 +0000 (+0100) Subject: boost: Copy patch files into repository. X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8a172fcbf1e99b16027348ccd3786f33bb7d0a90;p=ipfire-3.x.git boost: Copy patch files into repository. --- diff --git a/pkgs/core/boost/boost.nm b/pkgs/core/boost/boost.nm index cc232adad..f0d26ed99 100644 --- a/pkgs/core/boost/boost.nm +++ b/pkgs/core/boost/boost.nm @@ -48,11 +48,6 @@ endef PKG_TARBALL = $(PKG_NAME)_$(subst .,_,$(PKG_VER)).tar.bz2 -PKG_PATCHES += $(THISAPP)-version-override.patch -PKG_PATCHES += $(THISAPP)-unneccessary_iostreams.patch -PKG_PATCHES += $(THISAPP)-function_template.patch -PKG_PATCHES += $(THISAPP)-fs_gcc44.patch - export BOOST_ROOT=$(DIR_APP) BUILD_FLAGS = -d2 --layout=system variant=release threading=single,multi \ debug-symbols=on link=shared runtime-link=shared diff --git a/pkgs/core/boost/patches/boost-1.39.0-fs_gcc44.patch b/pkgs/core/boost/patches/boost-1.39.0-fs_gcc44.patch new file mode 100644 index 000000000..235a61e90 --- /dev/null +++ b/pkgs/core/boost/patches/boost-1.39.0-fs_gcc44.patch @@ -0,0 +1,163 @@ +Index: boost/filesystem/operations.hpp +=================================================================== +--- a/boost/filesystem/operations.hpp (revision 52859) ++++ b/boost/filesystem/operations.hpp (working copy) +@@ -659,9 +659,9 @@ + { return is_symlink( ph ); } + + inline bool is_empty( const path & ph ) +- { return is_empty( ph ); } ++ { return boost::filesystem::is_empty( ph ); } + inline bool is_empty( const wpath & ph ) +- { return is_empty( ph ); } ++ { return boost::filesystem::is_empty( ph ); } + + inline bool equivalent( const path & ph1, const path & ph2 ) + { return equivalent( ph1, ph2 ); } +Index: libs/filesystem/test/path_test.cpp +=================================================================== +--- a/libs/filesystem/test/path_test.cpp (revision 52859) ++++ b/libs/filesystem/test/path_test.cpp (working copy) +@@ -27,9 +27,8 @@ + + namespace fs = boost::filesystem; + using boost::filesystem::path; +-using boost::next; +-using boost::prior; + ++ + #include + + #define PATH_CHECK( a, b ) check( a, b, __LINE__ ) +@@ -480,18 +479,18 @@ + + itr_ck = "foo"; + BOOST_TEST( *itr_ck.begin() == std::string( "foo" ) ); +- BOOST_TEST( next( itr_ck.begin() ) == itr_ck.end() ); +- BOOST_TEST( *prior( itr_ck.end() ) == std::string( "foo" ) ); +- BOOST_TEST( prior( itr_ck.end() ) == itr_ck.begin() ); ++ BOOST_TEST( boost::next( itr_ck.begin() ) == itr_ck.end() ); ++ BOOST_TEST( *boost::prior( itr_ck.end() ) == std::string( "foo" ) ); ++ BOOST_TEST( boost::prior( itr_ck.end() ) == itr_ck.begin() ); + + itr_ck = path( "/foo" ); + BOOST_TEST( *itr_ck.begin() == std::string( "/" ) ); +- BOOST_TEST( *next( itr_ck.begin() ) == std::string( "foo" ) ); +- BOOST_TEST( next(next( itr_ck.begin() )) == itr_ck.end() ); +- BOOST_TEST( next( itr_ck.begin() ) == prior( itr_ck.end() ) ); +- BOOST_TEST( *prior( itr_ck.end() ) == std::string( "foo" ) ); +- BOOST_TEST( *prior(prior( itr_ck.end() )) == std::string( "/" ) ); +- BOOST_TEST( prior(prior( itr_ck.end() )) == itr_ck.begin() ); ++ BOOST_TEST( *boost::next( itr_ck.begin() ) == std::string( "foo" ) ); ++ BOOST_TEST( boost::next(boost::next( itr_ck.begin() )) == itr_ck.end() ); ++ BOOST_TEST( boost::next( itr_ck.begin() ) == boost::prior( itr_ck.end() ) ); ++ BOOST_TEST( *boost::prior( itr_ck.end() ) == std::string( "foo" ) ); ++ BOOST_TEST( *boost::prior(boost::prior( itr_ck.end() )) == std::string( "/" ) ); ++ BOOST_TEST( boost::prior(boost::prior( itr_ck.end() )) == itr_ck.begin() ); + + itr_ck = "/foo/bar"; + itr = itr_ck.begin(); +@@ -1106,65 +1105,65 @@ + + itr_ck = path( "c:" ); + BOOST_TEST( *itr_ck.begin() == std::string( "c:" ) ); +- BOOST_TEST( next( itr_ck.begin() ) == itr_ck.end() ); +- BOOST_TEST( prior( itr_ck.end() ) == itr_ck.begin() ); +- BOOST_TEST( *prior( itr_ck.end() ) == std::string( "c:" ) ); ++ BOOST_TEST( boost::next( itr_ck.begin() ) == itr_ck.end() ); ++ BOOST_TEST( boost::prior( itr_ck.end() ) == itr_ck.begin() ); ++ BOOST_TEST( *boost::prior( itr_ck.end() ) == std::string( "c:" ) ); + + itr_ck = path( "c:/" ); + BOOST_TEST( *itr_ck.begin() == std::string( "c:" ) ); +- BOOST_TEST( *next( itr_ck.begin() ) == std::string( "/" ) ); +- BOOST_TEST( next( next( itr_ck.begin() )) == itr_ck.end() ); +- BOOST_TEST( prior( prior( itr_ck.end() )) == itr_ck.begin() ); +- BOOST_TEST( *prior( itr_ck.end() ) == std::string( "/" ) ); +- BOOST_TEST( *prior( prior( itr_ck.end() )) == std::string( "c:" ) ); ++ BOOST_TEST( *boost::next( itr_ck.begin() ) == std::string( "/" ) ); ++ BOOST_TEST( boost::next( boost::next( itr_ck.begin() )) == itr_ck.end() ); ++ BOOST_TEST( boost::prior( boost::prior( itr_ck.end() )) == itr_ck.begin() ); ++ BOOST_TEST( *boost::prior( itr_ck.end() ) == std::string( "/" ) ); ++ BOOST_TEST( *boost::prior( boost::prior( itr_ck.end() )) == std::string( "c:" ) ); + + itr_ck = path( "c:foo" ); + BOOST_TEST( *itr_ck.begin() == std::string( "c:" ) ); +- BOOST_TEST( *next( itr_ck.begin() ) == std::string( "foo" ) ); +- BOOST_TEST( next(next( itr_ck.begin() )) == itr_ck.end() ); +- BOOST_TEST( prior(prior( itr_ck.end() )) == itr_ck.begin() ); +- BOOST_TEST( *prior( itr_ck.end() ) == std::string( "foo" ) ); +- BOOST_TEST( *prior(prior( itr_ck.end() )) == std::string( "c:" ) ); ++ BOOST_TEST( *boost::next( itr_ck.begin() ) == std::string( "foo" ) ); ++ BOOST_TEST( boost::next(boost::next( itr_ck.begin() )) == itr_ck.end() ); ++ BOOST_TEST( boost::prior(boost::prior( itr_ck.end() )) == itr_ck.begin() ); ++ BOOST_TEST( *boost::prior( itr_ck.end() ) == std::string( "foo" ) ); ++ BOOST_TEST( *boost::prior(boost::prior( itr_ck.end() )) == std::string( "c:" ) ); + + itr_ck = path( "c:/foo" ); + BOOST_TEST( *itr_ck.begin() == std::string( "c:" ) ); +- BOOST_TEST( *next( itr_ck.begin() ) == std::string( "/" ) ); +- BOOST_TEST( *next( next( itr_ck.begin() )) == std::string( "foo" ) ); +- BOOST_TEST( next( next( next( itr_ck.begin() ))) == itr_ck.end() ); +- BOOST_TEST( prior( prior( prior( itr_ck.end() ))) == itr_ck.begin() ); +- BOOST_TEST( *prior( itr_ck.end() ) == std::string( "foo" ) ); +- BOOST_TEST( *prior( prior( itr_ck.end() )) == std::string( "/" ) ); +- BOOST_TEST( *prior( prior( prior( itr_ck.end() ))) == std::string( "c:" ) ); ++ BOOST_TEST( *boost::next( itr_ck.begin() ) == std::string( "/" ) ); ++ BOOST_TEST( *boost::next( boost::next( itr_ck.begin() )) == std::string( "foo" ) ); ++ BOOST_TEST( boost::next( boost::next( boost::next( itr_ck.begin() ))) == itr_ck.end() ); ++ BOOST_TEST( boost::prior( boost::prior( boost::prior( itr_ck.end() ))) == itr_ck.begin() ); ++ BOOST_TEST( *boost::prior( itr_ck.end() ) == std::string( "foo" ) ); ++ BOOST_TEST( *boost::prior( boost::prior( itr_ck.end() )) == std::string( "/" ) ); ++ BOOST_TEST( *boost::prior( boost::prior( boost::prior( itr_ck.end() ))) == std::string( "c:" ) ); + + itr_ck = path( "//net" ); + BOOST_TEST( *itr_ck.begin() == std::string( "//net" ) ); +- BOOST_TEST( next( itr_ck.begin() ) == itr_ck.end() ); +- BOOST_TEST( prior( itr_ck.end() ) == itr_ck.begin() ); +- BOOST_TEST( *prior( itr_ck.end() ) == std::string( "//net" ) ); ++ BOOST_TEST( boost::next( itr_ck.begin() ) == itr_ck.end() ); ++ BOOST_TEST( boost::prior( itr_ck.end() ) == itr_ck.begin() ); ++ BOOST_TEST( *boost::prior( itr_ck.end() ) == std::string( "//net" ) ); + + itr_ck = path( "//net/" ); + CHECK_EQUAL( *itr_ck.begin(), "//net" ); +- CHECK_EQUAL( *next( itr_ck.begin() ), "/" ); +- BOOST_TEST( next(next( itr_ck.begin() )) == itr_ck.end() ); +- BOOST_TEST( prior(prior( itr_ck.end() )) == itr_ck.begin() ); +- CHECK_EQUAL( *prior( itr_ck.end() ), "/" ); +- CHECK_EQUAL( *prior(prior( itr_ck.end() )), "//net" ); ++ CHECK_EQUAL( *boost::next( itr_ck.begin() ), "/" ); ++ BOOST_TEST( boost::next(boost::next( itr_ck.begin() )) == itr_ck.end() ); ++ BOOST_TEST( boost::prior(boost::prior( itr_ck.end() )) == itr_ck.begin() ); ++ CHECK_EQUAL( *boost::prior( itr_ck.end() ), "/" ); ++ CHECK_EQUAL( *boost::prior(boost::prior( itr_ck.end() )), "//net" ); + + itr_ck = path( "//net/foo" ); + BOOST_TEST( *itr_ck.begin() == std::string( "//net" ) ); +- BOOST_TEST( *next( itr_ck.begin() ) == std::string( "/" ) ); +- BOOST_TEST( *next(next( itr_ck.begin() )) == std::string( "foo" ) ); +- BOOST_TEST( next(next(next( itr_ck.begin() ))) == itr_ck.end() ); +- BOOST_TEST( prior(prior(prior( itr_ck.end() ))) == itr_ck.begin() ); +- BOOST_TEST( *prior( itr_ck.end() ) == std::string( "foo" ) ); +- BOOST_TEST( *prior(prior( itr_ck.end() )) == std::string( "/" ) ); +- BOOST_TEST( *prior(prior(prior( itr_ck.end() ))) == std::string( "//net" ) ); ++ BOOST_TEST( *boost::next( itr_ck.begin() ) == std::string( "/" ) ); ++ BOOST_TEST( *boost::next(boost::next( itr_ck.begin() )) == std::string( "foo" ) ); ++ BOOST_TEST( boost::next(boost::next(boost::next( itr_ck.begin() ))) == itr_ck.end() ); ++ BOOST_TEST( boost::prior(boost::prior(boost::prior( itr_ck.end() ))) == itr_ck.begin() ); ++ BOOST_TEST( *boost::prior( itr_ck.end() ) == std::string( "foo" ) ); ++ BOOST_TEST( *boost::prior(boost::prior( itr_ck.end() )) == std::string( "/" ) ); ++ BOOST_TEST( *boost::prior(boost::prior(boost::prior( itr_ck.end() ))) == std::string( "//net" ) ); + + itr_ck = path( "prn:" ); + BOOST_TEST( *itr_ck.begin() == std::string( "prn:" ) ); +- BOOST_TEST( next( itr_ck.begin() ) == itr_ck.end() ); +- BOOST_TEST( prior( itr_ck.end() ) == itr_ck.begin() ); +- BOOST_TEST( *prior( itr_ck.end() ) == std::string( "prn:" ) ); ++ BOOST_TEST( boost::next( itr_ck.begin() ) == itr_ck.end() ); ++ BOOST_TEST( boost::prior( itr_ck.end() ) == itr_ck.begin() ); ++ BOOST_TEST( *boost::prior( itr_ck.end() ) == std::string( "prn:" ) ); + } // Windows + + else diff --git a/pkgs/core/boost/patches/boost-1.39.0-function_template.patch b/pkgs/core/boost/patches/boost-1.39.0-function_template.patch new file mode 100644 index 000000000..892134fd7 --- /dev/null +++ b/pkgs/core/boost/patches/boost-1.39.0-function_template.patch @@ -0,0 +1,15 @@ +diff -ru boost/function/function_template.hpp boost/function/function_template.hpp +--- a/boost/function/function_template.hpp 2009-05-10 10:31:29.000000000 +0100 ++++ b/boost/function/function_template.hpp 2009-05-10 10:49:46.000000000 +0100 +@@ -950,10 +950,10 @@ + f.vtable->manager(f.functor, this->functor, + boost::detail::function::move_functor_tag); + f.vtable = 0; +-#if !defined(BOOST_NO_EXCEPTIONS) + } else { + clear(); + } ++#if !defined(BOOST_NO_EXCEPTIONS) + } catch (...) { + vtable = 0; + throw; diff --git a/pkgs/core/boost/patches/boost-1.39.0-unneccessary_iostreams.patch b/pkgs/core/boost/patches/boost-1.39.0-unneccessary_iostreams.patch new file mode 100644 index 000000000..0fd590af2 --- /dev/null +++ b/pkgs/core/boost/patches/boost-1.39.0-unneccessary_iostreams.patch @@ -0,0 +1,11 @@ +diff -ru boost/spirit/home/classic/iterator/multi_pass.hpp boost/spirit/home/classic/iterator/multi_pass.hpp +--- a/boost/spirit/home/classic/iterator/multi_pass.hpp 2009-01-09 10:38:36.000000000 +0000 ++++ b/boost/spirit/home/classic/iterator/multi_pass.hpp 2009-01-09 10:39:41.000000000 +0000 +@@ -12,7 +12,6 @@ + #include + #include + #include +-#include + #include // for std::swap + #include // for std::exception + #include diff --git a/pkgs/core/boost/patches/boost-1.39.0-version-override.patch b/pkgs/core/boost/patches/boost-1.39.0-version-override.patch new file mode 100644 index 000000000..0fe654cab --- /dev/null +++ b/pkgs/core/boost/patches/boost-1.39.0-version-override.patch @@ -0,0 +1,36 @@ +*** a/Jamroot.orig 2009-05-06 12:46:31.000000000 -0700 +--- b/Jamroot 2009-05-06 18:18:17.000000000 -0700 +*************** rule tag ( name : type ? : property-set +*** 344,350 **** + else + { + local result = [ common.format-name +! + -$(BUILD_ID) + : $(name) : $(type) : $(property-set) ] ; + +--- 344,350 ---- + else + { + local result = [ common.format-name +! + -$(BUILD_ID) + : $(name) : $(type) : $(property-set) ] ; + +*************** rule tag ( name : type ? : property-set +*** 356,362 **** + # suffixes either. Pgi compilers can not accept library with version + # suffix. + if $(type) = SHARED_LIB && +! ( ! ( [ $(property-set).get ] in windows cygwin darwin aix ) && + ! ( [ $(property-set).get ] in pgi ) ) + { + result = $(result).$(BOOST_VERSION) ; +--- 356,362 ---- + # suffixes either. Pgi compilers can not accept library with version + # suffix. + if $(type) = SHARED_LIB && +! ( ! ( [ $(property-set).get ] in windows cygwin darwin aix linux ) && + ! ( [ $(property-set).get ] in pgi ) ) + { + result = $(result).$(BOOST_VERSION) ;