From 39a7ebf89df9a93e98d002ec9144b4aec35507d5 Mon Sep 17 00:00:00 2001 From: Benjamin Kosnik Date: Thu, 2 Aug 2007 05:48:06 +0000 Subject: [PATCH] - Update to boost_1_34_1. - Source via http. - Philipp Thomas fix for RPM_OPT_FLAGS - Philipp Thomas fix for .so sym links. - (#225622) Patrice Dumas review comments. --- .cvsignore | 4 +- boost-base.patch | 30 ------ boost-bind-gcc41.patch | 12 --- boost-config-compiler-gcc.patch | 21 ---- boost-configure.patch | 38 +++++++ boost-cxxflags-debug.patch | 53 --------- boost-gcc-soname.patch | 37 +++++++ boost-gcc-tools.patch | 29 ----- boost-python-vs-x86-64.patch | 37 ------- boost-run-tests.patch | 168 +++++++++++++++++++++++++++++ boost-runtests.patch | 81 -------------- boost-serialization-warnings.patch | 61 ----------- boost-spirit-warnings.patch | 48 --------- boost-thread.patch | 19 ---- boost-use-rpm-optflags.patch | 19 ++++ boost.spec | 162 +++++++++++++++++----------- sources | 4 +- 17 files changed, 361 insertions(+), 462 deletions(-) delete mode 100644 boost-base.patch delete mode 100644 boost-bind-gcc41.patch delete mode 100644 boost-config-compiler-gcc.patch create mode 100644 boost-configure.patch delete mode 100644 boost-cxxflags-debug.patch create mode 100644 boost-gcc-soname.patch delete mode 100644 boost-gcc-tools.patch delete mode 100644 boost-python-vs-x86-64.patch create mode 100644 boost-run-tests.patch delete mode 100644 boost-runtests.patch delete mode 100644 boost-serialization-warnings.patch delete mode 100644 boost-spirit-warnings.patch delete mode 100644 boost-thread.patch create mode 100644 boost-use-rpm-optflags.patch diff --git a/.cvsignore b/.cvsignore index 23bff37..47d9c28 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,3 +1 @@ -boost_1_33_0.tar.bz2 -boost-1.33.1.20051114.tar.bz2 -boost_1_33_1.tar.bz2 +boost_1_34_1.tar.bz2 diff --git a/boost-base.patch b/boost-base.patch deleted file mode 100644 index d8381f6..0000000 --- a/boost-base.patch +++ /dev/null @@ -1,30 +0,0 @@ -Index: tools/build/v1/boost-base.jam -=================================================================== -RCS file: /cvsroot/boost/boost/tools/build/v1/boost-base.jam,v -retrieving revision 1.129 -diff -c -p -r1.129 boost-base.jam -*** tools/build/v1/boost-base.jam 28 Jan 2004 22:50:17 -0000 1.129 ---- tools/build/v1/boost-base.jam 1 Apr 2004 22:48:45 -0000 -*************** rule common-variant-tag ( toolset varian -*** 2621,2630 **** - local version-tag = [ MATCH "^([^.]+).([^.]+)" : $(version-number[1]) ] ; - version-tag = $(version-tag:J="_") ; - -! tags += $(toolset-tag:J=) ; -! tags += $(thread-tag:J=) ; -! tags += $(runtime-tag:J=) ; -! tags += $(version-tag) ; - - if $(tags) - { ---- 2621,2630 ---- - local version-tag = [ MATCH "^([^.]+).([^.]+)" : $(version-number[1]) ] ; - version-tag = $(version-tag:J="_") ; - -! # tags += $(toolset-tag:J=) ; -! # tags += $(thread-tag:J=) ; -! # tags += $(runtime-tag:J=) ; -! # tags += $(version-tag) ; - - if $(tags) - { diff --git a/boost-bind-gcc41.patch b/boost-bind-gcc41.patch deleted file mode 100644 index ca3a76a..0000000 --- a/boost-bind-gcc41.patch +++ /dev/null @@ -1,12 +0,0 @@ -Index: boost/bind.hpp -=================================================================== ---- boost/bind.hpp.orig -+++ boost/bind.hpp -@@ -27,6 +27,7 @@ - #include - #include - #include -+#include - - // Borland-specific bug, visit_each() silently fails to produce code - diff --git a/boost-config-compiler-gcc.patch b/boost-config-compiler-gcc.patch deleted file mode 100644 index 7cbfc5c..0000000 --- a/boost-config-compiler-gcc.patch +++ /dev/null @@ -1,21 +0,0 @@ -*** boost/config/compiler/gcc.hpp.orig 2005-08-17 15:15:01.000000000 -0500 ---- boost/config/compiler/gcc.hpp 2005-08-17 15:15:19.000000000 -0500 -*************** -*** 91,98 **** - # error "Compiler not configured - please reconfigure" - #endif - // -! // last known and checked version is 4.0 (Pre-release): -! #if (__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ > 0)) - # if defined(BOOST_ASSERT_CONFIG) - # error "Unknown compiler version - please run the configure tests and report the results" - # else ---- 91,98 ---- - # error "Compiler not configured - please reconfigure" - #endif - // -! // last known and checked version is 4.1 (Pre-release): -! #if (__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ > 1)) - # if defined(BOOST_ASSERT_CONFIG) - # error "Unknown compiler version - please run the configure tests and report the results" - # else diff --git a/boost-configure.patch b/boost-configure.patch new file mode 100644 index 0000000..7ce1a52 --- /dev/null +++ b/boost-configure.patch @@ -0,0 +1,38 @@ +*** configure.orig 2007-01-16 01:39:00.000000000 +0100 +--- configure 2007-01-19 03:53:08.000000000 +0100 +*************** +*** 9,15 **** + + BJAM="" + TOOLSET="" +! BJAM_CONFIG="" + BUILD="" + PREFIX=/usr/local + EPREFIX= +--- 9,15 ---- + + BJAM="" + TOOLSET="" +! BJAM_CONFIG="-d2 --layout=system variant=release debug-symbols=on" + BUILD="" + PREFIX=/usr/local + EPREFIX= +*************** INCLUDEDIR=$INCLUDEDIR +*** 325,332 **** + LIBS=$LIBS + + all: .dummy +! @echo "\$(BJAM) \$(BJAM_CONFIG) --user-config=user-config.jam \$(LIBS)" +! @\$(BJAM) \$(BJAM_CONFIG) --user-config=user-config.jam \$(LIBS) || \\ + echo "Not all Boost libraries built properly." + + clean: .dummy +--- 325,332 ---- + LIBS=$LIBS + + all: .dummy +! @echo "\$(BJAM) \$(BJAM_CONFIG) --user-config=user-config.jam \$(LIBS) stage" +! @\$(BJAM) \$(BJAM_CONFIG) --user-config=user-config.jam \$(LIBS) stage || \\ + echo "Not all Boost libraries built properly." + + clean: .dummy diff --git a/boost-cxxflags-debug.patch b/boost-cxxflags-debug.patch deleted file mode 100644 index 5ee5e29..0000000 --- a/boost-cxxflags-debug.patch +++ /dev/null @@ -1,53 +0,0 @@ -*** tools/build/v1/gcc-tools.jam.orig 2005-11-19 20:21:16.000000000 +0100 ---- tools/build/v1/gcc-tools.jam 2006-11-15 11:27:47.000000000 +0100 -*************** flags gcc UNDEFS ; -*** 338,344 **** - flags gcc HDRS ; - flags gcc SYSHDRS ; - flags gcc LINKFLAGS ; -! flags gcc LINKFLAGS off : -s ; - flags gcc ARFLAGS ; - - flags gcc STDHDRS : $(GCC_INCLUDE_DIRECTORY) ; ---- 338,344 ---- - flags gcc HDRS ; - flags gcc SYSHDRS ; - flags gcc LINKFLAGS ; -! #flags gcc LINKFLAGS off : -s ; - flags gcc ARFLAGS ; - - flags gcc STDHDRS : $(GCC_INCLUDE_DIRECTORY) ; -*************** actions gcc-Link-action bind NEEDLIBS NE -*** 478,484 **** - $(.SET_EXIT) - $(SHELL_SET)$(gSHELL_LIBPATH)=$(LINK_LIBPATH)$(gAPPEND_LD_LIBRARY_PATH) - $(SHELL_EXPORT)$(gSHELL_LIBPATH) -! "$(.GXX[1]:R=$(GCC_BIN_DIR))" $(.GXX[2-]) "$(DLL_LINK_FLAGS)" "$(IMPLIB_COMMAND)$(<[2])" $(LINKFLAGS) -o "$(<[1])$(OUTTAG)" -L"$(LIBPATH:T)" -L"$(STDLIBPATH:T)" "$(>)" "$(NEEDLIBS)" "$(NEEDLIBS)" "$(IMPLIB_FLAGS)$(NEEDIMPS)" -l$(FINDLIBS) $(LNOPT)$(RPATH_LINK). $(LNOPT)$(SONAME)$(<[1]:D=)$(SOTAG) - $(ACTION_1)$(LN)$(_)-fs$(_)"$(<[1]:D=)$(OUTTAG)"$(_)"$(<[1])" - } - ---- 478,484 ---- - $(.SET_EXIT) - $(SHELL_SET)$(gSHELL_LIBPATH)=$(LINK_LIBPATH)$(gAPPEND_LD_LIBRARY_PATH) - $(SHELL_EXPORT)$(gSHELL_LIBPATH) -! "$(.GXX[1]:R=$(GCC_BIN_DIR))" $(.GXX[2-]) -g "$(DLL_LINK_FLAGS)" "$(IMPLIB_COMMAND)$(<[2])" $(LINKFLAGS) -o "$(<[1])$(OUTTAG)" -L"$(LIBPATH:T)" -L"$(STDLIBPATH:T)" "$(>)" "$(NEEDLIBS)" "$(NEEDLIBS)" "$(IMPLIB_FLAGS)$(NEEDIMPS)" -l$(FINDLIBS) $(LNOPT)$(RPATH_LINK). $(LNOPT)$(SONAME)$(<[1]:D=)$(SOTAG) - $(ACTION_1)$(LN)$(_)-fs$(_)"$(<[1]:D=)$(OUTTAG)"$(_)"$(<[1])" - } - -*************** rule C++-action -*** 509,515 **** - actions gcc-C++-action - { - $(.SET_EXIT) -! "$(.GXX[1]:R=$(GCC_BIN_DIR))" $(.GXX[2-]) -c -Wall -ftemplate-depth-255 -U$(UNDEFS) -D$(DEFINES) $(CFLAGS) $(C++FLAGS) -I"$(HDRS)" -I$(_)"$(STDHDRS)" -I$(_)"$(SYSHDRS)" -o "$(<)" "$(>)" - "$(.OBJCOPY[1])"$(_)$(OBJCOPY_FLAGS)$(_)"$(<)" - } - ---- 509,515 ---- - actions gcc-C++-action - { - $(.SET_EXIT) -! "$(.GXX[1]:R=$(GCC_BIN_DIR))" $(.GXX[2-]) -c -g -Wall -ftemplate-depth-255 -U$(UNDEFS) -D$(DEFINES) $(CFLAGS) $(C++FLAGS) -I"$(HDRS)" -I$(_)"$(STDHDRS)" -I$(_)"$(SYSHDRS)" -o "$(<)" "$(>)" - "$(.OBJCOPY[1])"$(_)$(OBJCOPY_FLAGS)$(_)"$(<)" - } - diff --git a/boost-gcc-soname.patch b/boost-gcc-soname.patch new file mode 100644 index 0000000..ed83962 --- /dev/null +++ b/boost-gcc-soname.patch @@ -0,0 +1,37 @@ +*** tools/build/v2/tools/gcc.jam.orig 2007-05-03 08:09:04.000000000 +0200 +--- tools/build/v2/tools/gcc.jam 2007-06-26 20:37:44.000000000 +0200 +*************** if [ os.name ] != NT && [ os.name ] != O +*** 316,322 **** + # expected, therefore it has been disabled. + + HAVE_SONAME = "" ; +! SONAME_OPTION = -h ; + } + + +--- 316,323 ---- + # expected, therefore it has been disabled. + + HAVE_SONAME = "" ; +! SONAME_OPTION = -soname ; +! SONAME_VERSION = 2 ; + } + + +*************** rule link.dll ( targets * : sources * : +*** 631,637 **** + # Differ from 'link' above only by -shared. + actions link.dll bind LIBRARIES + { +! "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,"$(RPATH)" "$(.IMPLIB-COMMAND)$(<[1])" -o "$(<[-1])" $(HAVE_SONAME)-Wl,$(SONAME_OPTION)$(SPACE)-Wl,$(<[-1]:D=) -shared $(START-GROUP) "$(>)" "$(LIBRARIES)" -l$(FINDLIBS-ST) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS) + } + + # Set up threading support. It's somewhat contrived, so perform it at the end, +--- 632,638 ---- + # Differ from 'link' above only by -shared. + actions link.dll bind LIBRARIES + { +! "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,"$(RPATH)" "$(.IMPLIB-COMMAND)$(<[1])" -o "$(<[-1])" $(HAVE_SONAME)-Wl,$(SONAME_OPTION)$(SPACE)-Wl,$(<[-1]:D=).$(SONAME_VERSION) -shared $(START-GROUP) "$(>)" "$(LIBRARIES)" -l$(FINDLIBS-ST) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS) + } + + # Set up threading support. It's somewhat contrived, so perform it at the end, diff --git a/boost-gcc-tools.patch b/boost-gcc-tools.patch deleted file mode 100644 index 77031fe..0000000 --- a/boost-gcc-tools.patch +++ /dev/null @@ -1,29 +0,0 @@ -*** tools/build/v1/gcc-tools.jam.orig 2005-03-18 09:58:30.227128264 -0600 ---- tools/build/v1/gcc-tools.jam 2005-03-18 10:00:20.235025969 -0600 -*************** flags gcc FINDLIBS ; -*** 352,357 **** ---- 352,358 ---- - flags gcc DLLVERSION ; - DLLVERSION = $(DLLVERSION[1]) ; - DLLVERSION ?= $(BOOST_VERSION) ; -+ SONAMEVERSION = 2 ; - - flags gcc TARGET_TYPE ; - -*************** rule Link-action -*** 387,393 **** - if $(DLLVERSION) && $(TARGET_TYPE) in $(SHARED_TYPES) && ( $(OS) = LINUX || $(OS) = OPENBSD ) && ! $(NO_GNU_LN) - { - OUTTAG on $(<) = ".$(DLLVERSION)" ; -! SOTAG on $(<) = ".$(DLLVERSION)" ; - ACTION_1 on $(<) = "" ; - } - else ---- 388,394 ---- - if $(DLLVERSION) && $(TARGET_TYPE) in $(SHARED_TYPES) && ( $(OS) = LINUX || $(OS) = OPENBSD ) && ! $(NO_GNU_LN) - { - OUTTAG on $(<) = ".$(DLLVERSION)" ; -! SOTAG on $(<) = ".$(SONAMEVERSION)" ; - ACTION_1 on $(<) = "" ; - } - else diff --git a/boost-python-vs-x86-64.patch b/boost-python-vs-x86-64.patch deleted file mode 100644 index 2fa43d4..0000000 --- a/boost-python-vs-x86-64.patch +++ /dev/null @@ -1,37 +0,0 @@ ---- boost/python/detail/wrap_python.hpp 4 Nov 2005 21:38:29 -0000 1.22 -+++ boost/python/detail/wrap_python.hpp 12 Apr 2006 15:55:11 -0000 -@@ -141,6 +141,12 @@ - # include - #endif - -+#if PY_VERSION_HEX < 0x02050000 -+typedef int Py_ssize_t; -+#define PY_SSIZE_T_MIN INT_MIN -+#define PY_SSIZE_T_MAX INT_MAX -+#endif -+ - #ifdef BOOST_PYTHON_ULONG_MAX_UNDEFINED - # undef ULONG_MAX - # undef BOOST_PYTHON_ULONG_MAX_UNDEFINED - -diff -u -r1.7 object_protocol.cpp ---- libs/python/src/object_protocol.cpp 26 Jul 2004 00:32:11 -0000 1.7 -+++ libs/python/src/object_protocol.cpp 12 Apr 2006 15:55:31 -0000 -@@ -106,7 +106,7 @@ - PySequenceMethods *sq = tp->tp_as_sequence; - - if (sq && sq->sq_slice && ISINT(v) && ISINT(w)) { -- int ilow = 0, ihigh = INT_MAX; -+ Py_ssize_t ilow = 0, ihigh = PY_SSIZE_T_MAX; - if (!_PyEval_SliceIndex(v, &ilow)) - return NULL; - if (!_PyEval_SliceIndex(w, &ihigh)) -@@ -133,7 +133,7 @@ - PySequenceMethods *sq = tp->tp_as_sequence; - - if (sq && sq->sq_slice && ISINT(v) && ISINT(w)) { -- int ilow = 0, ihigh = INT_MAX; -+ Py_ssize_t ilow = 0, ihigh = PY_SSIZE_T_MAX; - if (!_PyEval_SliceIndex(v, &ilow)) - return -1; - if (!_PyEval_SliceIndex(w, &ihigh)) diff --git a/boost-run-tests.patch b/boost-run-tests.patch new file mode 100644 index 0000000..ee39db0 --- /dev/null +++ b/boost-run-tests.patch @@ -0,0 +1,168 @@ +*** tools/regression/run_tests.sh.orig 2007-07-31 19:44:25.000000000 -0500 +--- tools/regression/run_tests.sh 2007-08-01 12:17:25.000000000 -0500 +*************** +*** 15,21 **** + # This can be either a non-exitent directory or an already complete Boost + # source tree. + # +! boost_root="$HOME/CVSROOTs/Boost/boost_regression" + + # + # Wether to fetch the most current Boost code from CVS (yes/no): +--- 15,21 ---- + # This can be either a non-exitent directory or an already complete Boost + # source tree. + # +! boost_root="/usr/src/redhat/BUILD/boost_1_34_1" + + # + # Wether to fetch the most current Boost code from CVS (yes/no): +*************** test_tools=gcc +*** 42,58 **** + toolset=gcc + + # +- # "comment_path" is the path to an html-file describing the test environment. +- # The content of this file will be embedded in the status pages being produced. +- # +- comment_path="$boost_root/../regression_comment.html" +- # + # "test_dir" is the relative path to the directory to run the tests in, + # defaults to "status" and runs all the tests, but could be a sub-directory + # for example "libs/regex/test" to run the regex tests alone. + # + test_dir="status" + + + ### DEFAULTS ARE OK FOR THESE. + +--- 42,59 ---- + toolset=gcc + + # + # "test_dir" is the relative path to the directory to run the tests in, + # defaults to "status" and runs all the tests, but could be a sub-directory + # for example "libs/regex/test" to run the regex tests alone. + # + test_dir="status" + ++ # ++ # "comment_path" is the path to an html-file describing the test environment. ++ # The content of this file will be embedded in the status pages being produced. ++ # ++ comment_path="$boost_root/$test_dir/regression_comment.html" ++ + + ### DEFAULTS ARE OK FOR THESE. + +*************** exe_suffix= +*** 71,76 **** +--- 72,80 ---- + # + bjam="$boost_root/tools/jam/src/bin/bjam$exe_suffix" + ++ # bjam options ++ bjam_flags="--layout=system variant=release -sICU_PATH=/usr --user-config=$boost_root/user-config.jam" ++ + # + # "process_jam_log", and "compiler_status" paths to built helper programs: + # The location of the executables of the regression help programs. These +*************** else +*** 98,103 **** +--- 102,115 ---- + fi + export BOOST_BUILD_PATH + ++ # For shared objects. ++ old_ld_library_path=$LD_LIBRARY_PATH ++ old_ld_run_path=$LD_RUN_PATH ++ LD_LIBRARY_PATH="$boost_root/stage/lib:$old_ld_library_path" ++ LD_RUN_PATH="$boost_root/stage/lib:$old_ld_run_path" ++ export LD_LIBRARY_PATH ++ export LD_RUN_PATH ++ + # + # STEP 0: + # +*************** fi +*** 126,137 **** + # STEP 1: + # rebuild bjam if required: + # +! echo building bjam: +! cd "$boost_root/tools/jam/src" && \ +! LOCATE_TARGET=bin sh ./build.sh +! if test $? != 0 ; then +! echo "bjam build failed." +! exit 256 + fi + + # +--- 138,152 ---- + # STEP 1: + # rebuild bjam if required: + # +! echo "finding or building bjam": +! if test ! -f "$bjam" ; then +! echo "building bjam": +! cd "$boost_root/tools/jam/src" && \ +! LOCATE_TARGET=bin sh ./build.sh +! if test $? != 0 ; then +! echo "bjam build failed." +! exit 256 +! fi + fi + + # +*************** fi +*** 139,146 **** + # rebuild the regression test helper programs if required: + # + echo building regression test helper programs: +! cd "$boost_root/tools/regression/build" && \ +! "$bjam" $toolset release + if test $? != 0 ; then + echo "helper program build failed." + exit 256 +--- 154,160 ---- + # rebuild the regression test helper programs if required: + # + echo building regression test helper programs: +! cd "$boost_root/tools/regression/build" && "$bjam" $bjam_flags $toolset + if test $? != 0 ; then + echo "helper program build failed." + exit 256 +*************** for tool in $test_tools ; do +*** 158,164 **** + # + echo running the $tool regression tests: + cd "$boost_root/$test_dir" +! "$bjam" $tool --dump-tests 2>&1 | tee regress.log + + # + # STEP 4: +--- 172,180 ---- + # + echo running the $tool regression tests: + cd "$boost_root/$test_dir" +! echo "

begin time: " `date` "

" >> "$comment_path" +! "$bjam" $bjam_flags $tool --dump-tests 2>&1 | tee regress.log +! echo "

end time: " `date` "

" >> "$comment_path" + + # + # STEP 4: +*************** if test $? != 0 ; then +*** 185,190 **** +--- 201,212 ---- + exit 256 + fi + ++ # cleanup ++ LD_LIBRARY_PATH="$old_ld_library_path" ++ LD_RUN_PATH="$old_ld_run_path" ++ export LD_LIBRARY_PATH ++ export LD_RUN_PATH ++ + echo "done!" + + diff --git a/boost-runtests.patch b/boost-runtests.patch deleted file mode 100644 index 575d317..0000000 --- a/boost-runtests.patch +++ /dev/null @@ -1,81 +0,0 @@ -*** tools/regression/run_tests.sh.orig 2005-11-14 17:28:00.000000000 -0600 ---- tools/regression/run_tests.sh 2005-11-16 18:57:09.000000000 -0600 -*************** -*** 15,21 **** - # This can be either a non-exitent directory or an already complete Boost - # source tree. - # -! boost_root="$HOME/CVSROOTs/Boost/boost_regression" - - # - # Wether to fetch the most current Boost code from CVS (yes/no): ---- 15,21 ---- - # This can be either a non-exitent directory or an already complete Boost - # source tree. - # -! boost_root=`pwd`/../.. - - # - # Wether to fetch the most current Boost code from CVS (yes/no): -*************** toolset=gcc -*** 45,51 **** - # "comment_path" is the path to an html-file describing the test environment. - # The content of this file will be embedded in the status pages being produced. - # -! comment_path="$boost_root/../regression_comment.html" - - - ### DEFAULTS ARE OK FOR THESE. ---- 45,51 ---- - # "comment_path" is the path to an html-file describing the test environment. - # The content of this file will be embedded in the status pages being produced. - # -! comment_path="$boost_root/tools/regression/regression_comment.html" - - - ### DEFAULTS ARE OK FOR THESE. -*************** for tool in $test_tools ; do -*** 149,157 **** - # STEP 3: - # run the regression tests: - # - echo running the $tool regression tests: - cd "$boost_root/status" -! "$bjam" -sTOOLS=$tool --dump-tests test 2>&1 | tee regress.log - - # - # STEP 4: ---- 149,159 ---- - # STEP 3: - # run the regression tests: - # -+ PYTHON_VERSION=$(python -c 'import sys; print sys.version[:3]') -+ PYTHON_FLAGS="-sPYTHON_ROOT=/usr -sPYTHON_VERSION=$PYTHON_VERSION" - echo running the $tool regression tests: - cd "$boost_root/status" -! "$bjam" $PYTHON_FLAGS -sTOOLS=$tool --dump-tests test 2>&1 | tee regress.log - - # - # STEP 4: -*************** done -*** 170,178 **** - # STEP 6: - # create the html table: - # -- uname=`uname` - echo generating html tables: -! "$compiler_status" --comment "$comment_path" "$boost_root" cs-$uname.html cs-$uname-links.html - if test $? != 0 ; then - echo "Failed HTML result table generation." - exit 256 ---- 172,181 ---- - # STEP 6: - # create the html table: - # - echo generating html tables: -! echo "" -! echo "$compiler_status --comment $comment_path $boost_root results.html results-links.html" -! "$compiler_status" --comment "$comment_path" "$boost_root" results.html results-links.html - if test $? != 0 ; then - echo "Failed HTML result table generation." - exit 256 diff --git a/boost-serialization-warnings.patch b/boost-serialization-warnings.patch deleted file mode 100644 index 4fba549..0000000 --- a/boost-serialization-warnings.patch +++ /dev/null @@ -1,61 +0,0 @@ -*** boost/serialization/nvp.hpp.orig 2006-11-13 12:18:36.000000000 +0100 ---- boost/serialization/nvp.hpp 2006-11-13 12:19:03.000000000 +0100 -*************** struct nvp : -*** 43,51 **** - public std::pair, - public wrapper_traits > - { -! explicit nvp(const char * name, T & t) : - // note: redundant cast works around borland issue -! std::pair(name, (T*)(& t)) - {} - nvp(const nvp & rhs) : - // note: redundant cast works around borland issue ---- 43,51 ---- - public std::pair, - public wrapper_traits > - { -! explicit nvp(const char * name_, T & t) : - // note: redundant cast works around borland issue -! std::pair(name_, (T*)(& t)) - {} - nvp(const nvp & rhs) : - // note: redundant cast works around borland issue -*** boost/archive/detail/iserializer.hpp.orig 2006-11-13 12:25:02.000000000 +0100 ---- boost/archive/detail/iserializer.hpp 2006-11-13 12:25:43.000000000 +0100 -*************** public: -*** 123,129 **** - return boost::serialization::implementation_level::value - >= boost::serialization::object_class_info; - } -! virtual bool tracking(const unsigned int flags) const { - // if(0 != (flags & no_tracking)) - // return false; - return boost::serialization::tracking_level::value ---- 123,129 ---- - return boost::serialization::implementation_level::value - >= boost::serialization::object_class_info; - } -! virtual bool tracking(const unsigned int) const { - // if(0 != (flags & no_tracking)) - // return false; - return boost::serialization::tracking_level::value -*** boost/archive/detail/oserializer.hpp.orig 2006-11-13 12:25:06.000000000 +0100 ---- boost/archive/detail/oserializer.hpp 2006-11-13 12:25:57.000000000 +0100 -*************** public: -*** 115,121 **** - return boost::serialization::implementation_level::value - >= boost::serialization::object_class_info; - } -! virtual bool tracking(const unsigned int flags) const { - // if(0 != (flags & no_tracking)) - // return false; - return boost::serialization::tracking_level::value == boost::serialization::track_always ---- 115,121 ---- - return boost::serialization::implementation_level::value - >= boost::serialization::object_class_info; - } -! virtual bool tracking(const unsigned int) const { - // if(0 != (flags & no_tracking)) - // return false; - return boost::serialization::tracking_level::value == boost::serialization::track_always diff --git a/boost-spirit-warnings.patch b/boost-spirit-warnings.patch deleted file mode 100644 index 983edaf..0000000 --- a/boost-spirit-warnings.patch +++ /dev/null @@ -1,48 +0,0 @@ -*** boost/spirit/core/non_terminal/impl/rule.ipp.orig 2006-11-13 11:54:53.000000000 +0100 ---- boost/spirit/core/non_terminal/impl/rule.ipp 2006-11-13 11:55:31.000000000 +0100 -*************** namespace boost { namespace spirit { -*** 224,230 **** - template - struct concrete_parser : abstract_parser - { -! concrete_parser(ParserT const& p) : p(p) {} - virtual ~concrete_parser() {} - - virtual typename match_result::type ---- 224,230 ---- - template - struct concrete_parser : abstract_parser - { -! concrete_parser(ParserT const& p_) : p(p_) {} - virtual ~concrete_parser() {} - - virtual typename match_result::type -*** boost/spirit/core/impl/match.ipp.orig 2006-11-13 11:55:48.000000000 +0100 ---- boost/spirit/core/impl/match.ipp 2006-11-13 11:57:19.000000000 +0100 -*************** namespace boost { namespace spirit -*** 17,28 **** - : len(-1), val() {} - - template -! inline match::match(std::size_t length) -! : len(length), val() {} - - template -! inline match::match(std::size_t length, ctor_param_t val_) -! : len(length), val(val_) {} - - template - inline bool ---- 17,29 ---- - : len(-1), val() {} - - template -! inline match::match(std::size_t length_) -! : len(length_), val() {} - - template -! inline match::match(std::size_t length_, ctor_param_t val_) -! : len(length_), val(val_) {} - - template - inline bool diff --git a/boost-thread.patch b/boost-thread.patch deleted file mode 100644 index 787e1af..0000000 --- a/boost-thread.patch +++ /dev/null @@ -1,19 +0,0 @@ -*** boost/config/compiler/gcc.hpp.orig 2005-03-15 22:34:33.881774946 -0600 ---- boost/config/compiler/gcc.hpp 2005-03-15 22:33:35.247609622 -0600 -*************** -*** 59,65 **** - // those platforms where we can know for sure). It will get turned off again - // later if no threading API is detected. - // -! #if !defined(__MINGW32__) && !defined(linux) && !defined(__linux) && !defined(__linux__) - # define BOOST_HAS_THREADS - #endif - ---- 59,65 ---- - // those platforms where we can know for sure). It will get turned off again - // later if no threading API is detected. - // -! #if !defined(__MINGW32__) - # define BOOST_HAS_THREADS - #endif - diff --git a/boost-use-rpm-optflags.patch b/boost-use-rpm-optflags.patch new file mode 100644 index 0000000..6fe2960 --- /dev/null +++ b/boost-use-rpm-optflags.patch @@ -0,0 +1,19 @@ +*** tools/build/v2/tools/gcc.jam.orig 2007-08-01 01:17:16.000000000 -0500 +--- tools/build/v2/tools/gcc.jam 2007-08-01 01:17:46.000000000 -0500 +*************** flags gcc.compile PCH_FILE on : off : -O0 ; +! flags gcc.compile OPTIONS speed : -O3 ; + flags gcc.compile OPTIONS space : -Os ; + + flags gcc.compile OPTIONS off : -fno-inline ; +--- 268,274 ---- + + # Declare flags and action for compilation + flags gcc.compile OPTIONS off : -O0 ; +! flags gcc.compile OPTIONS speed : "$RPM_OPT_FLAGS" ; + flags gcc.compile OPTIONS space : -Os ; + + flags gcc.compile OPTIONS off : -fno-inline ; diff --git a/boost.spec b/boost.spec index ecdc736..047a7d7 100644 --- a/boost.spec +++ b/boost.spec @@ -1,13 +1,16 @@ Name: boost Summary: The Boost C++ Libraries -Version: 1.33.1 -Release: 13%{?dist} +Version: 1.34.1 +Release: 1%{?dist} License: Boost Software License (GPL-Compatible, Free Software License) URL: http://www.boost.org/ Group: System Environment/Libraries -Source: %{name}_1_33_1.tar.bz2 -#Source: http://downloads.sourceforge.net/boost/boost_1_33_1.tar.bz2 +#Source: %{name}_1_34_1.tar.bz2 +Source: http://downloads.sourceforge.net/boost/boost_1_34_1.tar.bz2 +Obsoletes: boost-doc <= 1.30.2 +Obsoletes: boost-python <= 1.30.2 Provides: boost-python = %{version}-%{release} +Provides: boost-doc = %{version}-%{release} BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) BuildRequires: libstdc++-devel BuildRequires: bzip2-libs @@ -18,16 +21,10 @@ BuildRequires: python BuildRequires: python-devel BuildRequires: libicu BuildRequires: libicu-devel -Patch0: boost-base.patch -Patch1: boost-gcc-tools.patch -Patch2: boost-thread.patch -Patch3: boost-config-compiler-gcc.patch -Patch4: boost-runtests.patch -Patch5: boost-serialization-warnings.patch -Patch6: boost-spirit-warnings.patch -Patch7: boost-bind-gcc41.patch -Patch8: boost-cxxflags-debug.patch -Patch9: boost-python-vs-x86-64.patch +Patch0: boost-configure.patch +Patch1: boost-gcc-soname.patch +Patch2: boost-use-rpm-optflags.patch +Patch3: boost-run-tests.patch %description Boost provides free peer-reviewed portable C++ source libraries. The @@ -67,55 +64,69 @@ HTML documentation files for Boost C++ libraries. %prep rm -rf %{buildroot} -%setup -q -n %{name}_1_33_1 +%setup -q -n %{name}_1_34_1 %patch0 -p0 %patch1 -p0 %patch2 -p0 %patch3 -p0 -%patch4 -p0 -%patch5 -p0 -%patch6 -p0 -%patch7 -p0 -%patch8 -p0 -%patch9 -p0 %build -#build bjam -(cd tools/build/jam_src && ./build.sh) +BOOST_ROOT=`pwd` +staged_dir=stage +export BOOST_ROOT -#build boost with bjam -BJAM=`find tools/build/jam_src/ -name bjam -a -type f` -#BUILD_FLAGS="-sTOOLS=gcc -sBUILD=release 1" -#BUILD_FLAGS="-sTOOLS=gcc -sBUILD=release" -BUILD_FLAGS="-d2 -sTOOLS=gcc -sBUILD=release" +# build make tools, ie bjam, necessary for building libs, docs, and testing +(cd tools/jam/src && ./build.sh) +BJAM=`find tools/jam/src/ -name bjam -a -type f` + +#BUILD_FLAGS="--with-toolset=gcc --prefix=$RPM_BUILD_ROOT%{_prefix}" +BUILD_FLAGS="--with-toolset=gcc" PYTHON_VERSION=$(python -c 'import sys; print sys.version[:3]') -PYTHON_FLAGS="-sPYTHON_ROOT=/usr -sPYTHON_VERSION=$PYTHON_VERSION" -REGEX_FLAGS="-sHAVE_ICU=1" -$BJAM $PYTHON_FLAGS $REGEX_FLAGS $BUILD_FLAGS stage +PYTHON_FLAGS="--with-python-root=/usr --with-python-version=$PYTHON_VERSION" +REGEX_FLAGS="--with-icu" +./configure $BUILD_FLAGS $PYTHON_FLAGS $REGEX_FLAGS +make all + +# build docs, requires a network connection for docbook XSLT stylesheets +#cd ./doc +#chmod +x ../tools/boostbook/setup_boostbook.sh +#../tools/boostbook/setup_boostbook.sh +#$BOOST_ROOT/$BJAM --v2 -sICU_PATH=/usr --user-config=../user-config.jam html +#cd .. %check -BOOST_ROOT=`pwd`; -cd tools/regression; -(cd ./build && $BOOST_ROOT/$BJAM) -echo "

" `uname -a` "

" > regression_comment.html; -echo "" >> regression_comment.html; -echo "

" `g++ --version` "

" >> regression_comment.html; -chmod +x ./run_tests.sh; -#uncomment next line to run tests: warning, takes a long time -#./run_tests.sh; -results1=$BOOST_ROOT/status/results.html -results2=$BOOST_ROOT/status/results-links.html -if [ -f $results2 ] && [ -f $results2 ]; then - testdate=`date +%Y%m%d`; - testarch=`uname -m`; - email=bkoz@redhat.com - mail -s "$testdate boost regression $testarch 1" $email < $results1; - mail -s "$testdate boost regression $testarch 2" $email < $results2; -fi -cd ../..; +# --with tests activates checking +%define with_tests %{?_with_tests:1}%{!?_with_tests:0} +%define without_tests %{!?_with_tests:1}%{?_with_tests:0} +%if %{with_tests} +echo "

" `uname -a` "

" > status/regression_comment.html +echo "" >> status/regression_comment.html +echo "

" `g++ --version` "

" >> status/regression_comment.html +echo "" >> status/regression_comment.html + +chmod +x tools/regression/run_tests.sh +./tools/regression/run_tests.sh + +results1=status/cs-`uname`.html +results2=status/cs-`uname`-links.html +email=benjamin.kosnik@gmail.com +if [ -f $results1 ] && [ -f $results2 ]; then + echo "sending results starting" + testdate=`date +%Y%m%d` + testarch=`uname -m` + results=boost-results-$testdate-$testarch.tar.bz2 + tar -cvf boost-results-$testdate-$testarch.tar $results1 $results2 + bzip2 -f boost-results-$testdate-$testarch.tar + echo | mutt -s "$testdate boost regression $testarch" -a $results $email + echo "sending results finished" +else + echo "error sending results" +fi +%endif %install +rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT%{_libdir} mkdir -p $RPM_BUILD_ROOT%{_includedir} mkdir -p $RPM_BUILD_ROOT%{_docdir}/boost-%{version} @@ -125,16 +136,20 @@ for i in `find stage -type f -name \*.a`; do NAME=`basename $i`; install -p -m 0644 $i $RPM_BUILD_ROOT%{_libdir}/$NAME; done; -for i in `find stage -type f -name \*.so.*`; do - NAME=`basename $i`; - install -p -m 755 $i $RPM_BUILD_ROOT%{_libdir}/$NAME; -done; -for i in `find stage -type l -name \*.so`; do - NAME=`basename $i`; - SONAME=$NAME.2; - ln -s $NAME.%{version} $SONAME; - mv $SONAME $RPM_BUILD_ROOT%{_libdir}/$SONAME; - mv $i $RPM_BUILD_ROOT%{_libdir}/$NAME; +for i in `find stage -type f -name \*.so`; do + NAME=$i; + SONAME=$i.2; + VNAME=$i.%{version}; + base=`basename $i`; + NAMEbase=$base; + SONAMEbase=$base.2; + VNAMEbase=$base.%{version}; + mv $i $VNAME; + ln -s $VNAMEbase $SONAME; + ln -s $VNAMEbase $NAME; + install -p -m 755 $VNAME $RPM_BUILD_ROOT%{_libdir}/$VNAMEbase; + mv $SONAME $RPM_BUILD_ROOT%{_libdir}/$SONAMEbase; + mv $NAME $RPM_BUILD_ROOT%{_libdir}/$NAMEbase; done; # install include files @@ -155,14 +170,15 @@ for i in `find . -type f`; do done cd ../..; +# remove scripts used to generate include files +find $RPM_BUILD_ROOT%{_includedir}/ \( -name '*.pl' -o -name '*.sh' \) -exec rm {} \; + %clean -rm -rf %{buildroot} +rm -rf $RPM_BUILD_ROOT -%post -/sbin/ldconfig +%post -p /sbin/ldconfig -%postun -/sbin/ldconfig +%postun -p /sbin/ldconfig %files %defattr(-, root, root, -) @@ -183,6 +199,16 @@ rm -rf %{buildroot} %doc %{_docdir}/boost-%{version} %changelog +* Tue Jul 31 2007 Benjamin Kosnik 1.34.1-1 +- Update to boost_1_34_1. +- Source via http. +- Philipp Thomas fix for RPM_OPT_FLAGS +- Philipp Thomas fix for .so sym links. +- (#225622) Patrice Dumas review comments. + +* Tue Jun 26 2007 Benjamin Kosnik 1.34.1.rc1-0.1 +- Update to boost_1_34_1_RC1. + * Mon Apr 02 2007 Benjamin Kosnik 1.33.1-13 - (#225622: Merge Review: boost) Change static to devel-static. @@ -209,6 +235,12 @@ rm -rf %{buildroot} Install static libs with 0644 permissions. Use %doc for doc files. +* Mon Jan 22 2007 Benjamin Kosnik 1.34.0-0.5 +- Update to boost.RC_1_34_0 snapshot as of 2007-01-19. +- Modify build procedures for boost build v2. +- Add *-mt variants for libraries, or at least variants that use + threads (regex and thread). + * Thu Nov 23 2006 Benjamin Kosnik 1.33.1-10 - (#182414: boost: put tests in %check section) via Rex Dieter - Fix EVR with %{?dist} tag via Gianluca Sforna diff --git a/sources b/sources index 051bef7..f8946f7 100644 --- a/sources +++ b/sources @@ -1,3 +1 @@ -56fafc275dc0e195ec2f27e8769482cc boost_1_33_0.tar.bz2 -74785688e823771402cfa5753fe95b8a boost-1.33.1.20051114.tar.bz2 -2b999b2fb7798e1737d1fff8fac602ef boost_1_33_1.tar.bz2 +2d938467e8a448a2c9763e0a9f8ca7e5 boost_1_34_1.tar.bz2