--- /dev/null
+# $Id$
+WEBFETCH := wget
+SHA1SUM = sha1sum
+
+# default - overridden by the build
+SPECFILE = gnuradio.spec
+
+main.URL := http://mirror.onelab.eu/third-party/boost_1_40_0.tar.bz2
+main.SHA1SUM := 9dbaa06ce1d99ce310011c2eaf816ecb003b3096
+main.FILE := $(notdir $(main.URL))
+
+# Thierry - when called from within the build, PWD is /build
+SOURCEFILES := $(main.FILE)
+
+$(main.FILE): #FORCE
+ @if [ ! -e "$@" ] ; then echo "$(WEBFETCH) $(main.URL)" ; $(WEBFETCH) $(main.URL) ; fi
+ @if [ ! -e "$@" ] ; then echo "Could not download source file: $@ does not exist" ; exit 1 ; fi
+ @if test "$$(sha1sum $@ | awk '{print $$1}')" != "$(main.SHA1SUM)" ; then \
+ echo "sha1sum of the downloaded $@ does not match the one from 'sources' file" ; \
+ echo "Local copy: $$(sha1sum $@)" ; \
+ echo "In sources: $$(grep $@ sources)" ; \
+ exit 1 ; \
+ else \
+ ls -l $@ ; \
+ fi
+
+sources: $(SOURCEFILES)
+.PHONY: sources
+
+PWD=$(shell pwd)
+PREPARCH ?= noarch
+RPMDIRDEFS = --define "_sourcedir $(PWD)" --define "_builddir $(PWD)" --define "_srcrpmdir $(PWD)" --define "_rpmdir $(PWD)"
+trees: sources
+ rpmbuild $(RPMDIRDEFS) $(RPMDEFS) --nodeps -bp --target $(PREPARCH) $(SPECFILE)
+
+srpm: sources
+ rpmbuild $(RPMDIRDEFS) $(RPMDEFS) --nodeps -bs $(SPECFILE)
+
+TARGET ?= $(shell uname -m)
+rpm: sources
+ rpmbuild $(RPMDIRDEFS) $(RPMDEFS) --nodeps --target $(TARGET) -bb $(SPECFILE)
+
+clean:
+ rm -f *.rpm *.tgz *.bz2 *.gz
+
+++%: varname=$(subst +,,$@)
+++%:
+ @echo "$(varname)=$($(varname))"
++%: varname=$(subst +,,$@)
++%:
+ @echo "$($(varname))"
--- /dev/null
+*** 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
--- /dev/null
+*** 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 = 3 ;
+ }
+
+
+*************** 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,
--- /dev/null
+diff -urp boost_1_34_1/boost/spirit/phoenix/operators.hpp boost_1_34_1.pm/boost/spirit/phoenix/operators.hpp
+--- boost_1_34_1/boost/spirit/phoenix/operators.hpp 2006-08-25 18:27:30.000000000 +0200
++++ boost_1_34_1.pm/boost/spirit/phoenix/operators.hpp 2008-02-06 16:29:32.000000000 +0100
+@@ -24,6 +24,7 @@
+ #include <boost/spirit/phoenix/composite.hpp>
+ #include <boost/config.hpp>
+ #include <boost/mpl/if.hpp>
++#include <limits.h>
+
+ ///////////////////////////////////////////////////////////////////////////////
+ namespace phoenix {
+diff -urp boost_1_34_1/boost/regex/v4/basic_regex_creator.hpp boost_1_34_1.pm/boost/regex/v4/basic_regex_creator.hpp
+--- boost_1_34_1/boost/regex/v4/basic_regex_creator.hpp 2006-07-16 18:06:38.000000000 +0200
++++ boost_1_34_1.pm/boost/regex/v4/basic_regex_creator.hpp 2008-02-06 17:36:42.000000000 +0100
+@@ -24,6 +24,8 @@
+ # include BOOST_ABI_PREFIX
+ #endif
+
++#include <limits.h>
++
+ namespace boost{
+
+ namespace re_detail{
+diff -urp boost_1_34_1/boost/regex/v4/basic_regex.hpp boost_1_34_1.pm/boost/regex/v4/basic_regex.hpp
+--- boost_1_34_1/boost/regex/v4/basic_regex.hpp 2007-06-05 19:28:18.000000000 +0200
++++ boost_1_34_1.pm/boost/regex/v4/basic_regex.hpp 2008-02-06 17:33:30.000000000 +0100
+@@ -23,6 +23,8 @@
+ # include BOOST_ABI_PREFIX
+ #endif
+
++#include <limits.h>
++
+ namespace boost{
+ #ifdef BOOST_MSVC
+ #pragma warning(push)
+diff -urp boost_1_34_1/boost/regex/v4/basic_regex_parser.hpp boost_1_34_1.pm/boost/regex/v4/basic_regex_parser.hpp
+--- boost_1_34_1/boost/regex/v4/basic_regex_parser.hpp 2008-02-06 17:45:26.000000000 +0100
++++ boost_1_34_1.pm/boost/regex/v4/basic_regex_parser.hpp 2008-02-06 17:38:58.000000000 +0100
+@@ -23,6 +23,8 @@
+ # include BOOST_ABI_PREFIX
+ #endif
+
++#include <limits.h>
++
+ namespace boost{
+ namespace re_detail{
+
+diff -urp boost_1_34_1/boost/regex/v4/cpp_regex_traits.hpp boost_1_34_1.pm/boost/regex/v4/cpp_regex_traits.hpp
+--- boost_1_34_1/boost/regex/v4/cpp_regex_traits.hpp 2007-01-15 12:09:44.000000000 +0100
++++ boost_1_34_1.pm/boost/regex/v4/cpp_regex_traits.hpp 2008-02-06 17:26:51.000000000 +0100
+@@ -41,6 +41,7 @@
+
+ #include <istream>
+ #include <ios>
++#include <limits.h>
+
+ #ifdef BOOST_HAS_ABI_HEADERS
+ # include BOOST_ABI_PREFIX
+diff -urp boost_1_34_1/boost/regex/v4/perl_matcher.hpp boost_1_34_1.pm/boost/regex/v4/perl_matcher.hpp
+--- boost_1_34_1/boost/regex/v4/perl_matcher.hpp 2006-10-18 14:55:30.000000000 +0200
++++ boost_1_34_1.pm/boost/regex/v4/perl_matcher.hpp 2008-02-06 17:39:44.000000000 +0100
+@@ -18,6 +18,8 @@
+ # include BOOST_ABI_PREFIX
+ #endif
+
++#include <limits.h>
++
+ namespace boost{
+ namespace re_detail{
+
+diff -urp boost_1_34_1/boost/regex/v4/regex_split.hpp boost_1_34_1.pm/boost/regex/v4/regex_split.hpp
+--- boost_1_34_1/boost/regex/v4/regex_split.hpp 2005-01-21 18:22:38.000000000 +0100
++++ boost_1_34_1.pm/boost/regex/v4/regex_split.hpp 2008-02-06 17:42:13.000000000 +0100
+@@ -21,6 +21,8 @@
+ #ifndef BOOST_REGEX_SPLIT_HPP
+ #define BOOST_REGEX_SPLIT_HPP
+
++#include <limits.h>
++
+ namespace boost{
+
+ #ifdef BOOST_HAS_ABI_HEADERS
+diff -urp boost_1_34_1/boost/regex/v4/states.hpp boost_1_34_1.pm/boost/regex/v4/states.hpp
+--- boost_1_34_1/boost/regex/v4/states.hpp 2005-09-20 14:01:25.000000000 +0200
++++ boost_1_34_1.pm/boost/regex/v4/states.hpp 2008-02-06 17:32:42.000000000 +0100
+@@ -23,6 +23,8 @@
+ # include BOOST_ABI_PREFIX
+ #endif
+
++#include <limits.h>
++
+ namespace boost{
+ namespace re_detail{
+
+diff -urp boost_1_34_1/boost/test/test_tools.hpp boost_1_34_1.pm/boost/test/test_tools.hpp
+--- boost_1_34_1/boost/test/test_tools.hpp 2007-02-22 18:57:29.000000000 +0100
++++ boost_1_34_1.pm/boost/test/test_tools.hpp 2008-02-06 17:18:20.000000000 +0100
+@@ -44,6 +44,7 @@
+ // STL
+ #include <cstddef> // for std::size_t
+ #include <iosfwd>
++#include <limits.h>
+
+ #include <boost/test/detail/suppress_warnings.hpp>
+
+diff -urp boost_1_34_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp boost_1_34_1.pm/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp
+--- boost_1_34_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2006-12-20 17:38:24.000000000 +0100
++++ boost_1_34_1.pm/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2008-02-06 17:25:00.000000000 +0100
+@@ -16,6 +16,8 @@
+ #include <string>
+ #include <cstdio>
+ #include <cstdarg>
++#include <cstring>
++
+ #if defined(BOOST_SPIRIT_DEBUG)
+ #include <iostream>
+ #endif // defined(BOOST_SPIRIT_DEBUG)
+diff -urp boost_1_34_1/boost/wave/util/flex_string.hpp boost_1_34_1.pm/boost/wave/util/flex_string.hpp
+--- boost_1_34_1/boost/wave/util/flex_string.hpp 2006-04-25 19:21:01.000000000 +0200
++++ boost_1_34_1.pm/boost/wave/util/flex_string.hpp 2008-02-06 17:22:31.000000000 +0100
+@@ -94,6 +94,7 @@ class StoragePolicy
+ #include <limits>
+ #include <stdexcept>
+ #include <cstddef>
++#include <cstring>
+
+ // this must occur after all of the includes and before any code appears
+ #ifdef BOOST_HAS_ABI_HEADERS
+diff -urp boost_1_34_1/boost/archive/polymorphic_iarchive.hpp boost_1_34_1.pm/boost/archive/polymorphic_iarchive.hpp
+--- boost_1_34_1/boost/archive/polymorphic_iarchive.hpp 2005-12-11 07:12:51.000000000 +0100
++++ boost_1_34_1.pm/boost/archive/polymorphic_iarchive.hpp 2008-02-06 18:42:07.000000000 +0100
+@@ -33,6 +33,8 @@ namespace std{
+ #include <boost/archive/detail/interface_iarchive.hpp>
+ #include <boost/serialization/nvp.hpp>
+
++#include <limits.h>
++
+ // determine if its necessary to handle (u)int64_t specifically
+ // i.e. that its not a synonym for (unsigned) long
+ // if there is no 64 bit int or if its the same as a long
+diff -urp boost_1_34_1.orig/boost/archive/polymorphic_oarchive.hpp boost_1_34_1/boost/archive/polymorphic_oarchive.hpp
+--- boost_1_34_1.orig/boost/archive/polymorphic_oarchive.hpp 2008-10-06 15:38:51.000000000 +0200
++++ boost_1_34_1/boost/archive/polymorphic_oarchive.hpp 2008-10-06 15:38:57.000000000 +0200
+@@ -32,6 +32,8 @@ namespace std{
+ #include <boost/archive/detail/interface_oarchive.hpp>
+ #include <boost/serialization/nvp.hpp>
+
++#include <limits.h>
++
+ // determine if its necessary to handle (u)int64_t specifically
+ // i.e. that its not a synonym for (unsigned) long
+ // if there is no 64 bit int or if its the same as a long
+diff -urp boost_1_34_1/boost/date_time/date_facet.hpp boost_1_34_1-pm/boost/date_time/date_facet.hpp
+--- boost_1_34_1/boost/date_time/date_facet.hpp 2005-09-05 23:10:50.000000000 +0200
++++ boost_1_34_1-pm/boost/date_time/date_facet.hpp 2008-02-13 16:07:59.000000000 +0100
+@@ -429,7 +429,7 @@ namespace boost { namespace date_time {
+ typedef std::basic_string<CharT> string_type;
+ typedef CharT char_type;
+ typedef boost::date_time::period_parser<date_type, CharT> period_parser_type;
+- typedef special_values_parser<date_type,CharT> special_values_parser_type;
++ typedef boost::date_time::special_values_parser<date_type,CharT> special_values_parser_type;
+ typedef std::vector<std::basic_string<CharT> > input_collection_type;
+ typedef format_date_parser<date_type, CharT> format_date_parser_type;
+ // date_generators stuff goes here
+diff -urp boost_1_34_1/boost/python/detail/def_helper.hpp boost_1_34_1-pm/boost/python/detail/def_helper.hpp
+--- boost_1_34_1/boost/python/detail/def_helper.hpp 2004-09-16 03:00:28.000000000 +0200
++++ boost_1_34_1-pm/boost/python/detail/def_helper.hpp 2008-02-14 13:26:23.000000000 +0100
+@@ -155,7 +155,7 @@ namespace detail
+ , T3 const&
+ , T4 const&
+ , default_call_policies
+- , keywords<0>
++ , boost::python::detail::keywords<0>
+ , char const*
+ , void(not_specified::*)() // A function pointer type which is never an
+ // appropriate default implementation
+diff -urp new-boost/date_time/tz_db_base.hpp old-boost/date_time/tz_db_base.hpp
+--- boost_1_34_1/boost/date_time/tz_db_base.hpp 2008-06-12 13:03:34.000000000 +0200
++++ boost_1_34_1-pm/boost/date_time/tz_db_base.hpp 2008-06-12 12:59:43.000000000 +0200
+@@ -158,7 +158,7 @@ namespace boost {
+ typedef typename time_zone_type::base_type time_zone_base_type;
+ typedef typename time_zone_type::time_duration_type time_duration_type;
+ typedef time_zone_names_base<char_type> time_zone_names;
+- typedef dst_adjustment_offsets<time_duration_type> dst_adjustment_offsets;
++ typedef dst_adjustment_offsets<time_duration_type> dst_adjustment_offsets_t;
+ typedef std::basic_string<char_type> string_type;
+
+ //! Constructs an empty database
+@@ -346,18 +346,18 @@ namespace boost {
+ time_duration_type utc_offset =
+ str_from_delimited_time_duration<time_duration_type,char_type>(result[GMTOFFSET]);
+
+- dst_adjustment_offsets adjust(time_duration_type(0,0,0),
+- time_duration_type(0,0,0),
+- time_duration_type(0,0,0));
++ dst_adjustment_offsets_t adjust(time_duration_type(0,0,0),
++ time_duration_type(0,0,0),
++ time_duration_type(0,0,0));
+
+ boost::shared_ptr<rule_type> rules;
+
+ if(has_dst){
+- adjust = dst_adjustment_offsets(
+- str_from_delimited_time_duration<time_duration_type,char_type>(result[DSTADJUST]),
+- str_from_delimited_time_duration<time_duration_type,char_type>(result[START_TIME]),
+- str_from_delimited_time_duration<time_duration_type,char_type>(result[END_TIME])
+- );
++ adjust = dst_adjustment_offsets_t(
++ str_from_delimited_time_duration<time_duration_type,char_type>(result[DSTADJUST]),
++ str_from_delimited_time_duration<time_duration_type,char_type>(result[START_TIME]),
++ str_from_delimited_time_duration<time_duration_type,char_type>(result[END_TIME])
++ );
+
+ rules =
+ boost::shared_ptr<rule_type>(parse_rules(result[START_DATE_RULE],
--- /dev/null
+*** boost/regex/v4/basic_regex_parser.hpp.orig 2008-01-14 12:53:01.000000000 -0600
+--- boost/regex/v4/basic_regex_parser.hpp 2008-01-14 12:57:25.000000000 -0600
+*************** bool basic_regex_parser<charT, traits>::
+*** 777,782 ****
+--- 777,783 ----
+ case syntax_element_restart_continue:
+ case syntax_element_jump:
+ case syntax_element_startmark:
++ case syntax_element_backstep:
+ // can't legally repeat any of the above:
+ fail(regex_constants::error_badrepeat, m_position - m_base);
+ return false;
+*************** bool basic_regex_parser<charT, traits>::
+*** 1862,1867 ****
+--- 1863,1869 ----
+ if(markid == -4)
+ {
+ re_syntax_base* b = this->getaddress(expected_alt_point);
++ // Make sure we have exactly one alternative following this state:
+ if(b->type != syntax_element_alt)
+ {
+ re_alt* alt = static_cast<re_alt*>(this->insert_state(expected_alt_point, syntax_element_alt, sizeof(re_alt)));
+*************** bool basic_regex_parser<charT, traits>::
+*** 1872,1877 ****
+--- 1874,1888 ----
+ fail(regex_constants::error_bad_pattern, m_position - m_base);
+ return false;
+ }
++ // check for invalid repetition of next state:
++ b = this->getaddress(expected_alt_point);
++ b = this->getaddress(static_cast<re_alt*>(b)->next.i, b);
++ if((b->type != syntax_element_assert_backref)
++ && (b->type != syntax_element_startmark))
++ {
++ fail(regex_constants::error_badrepeat, m_position - m_base);
++ return false;
++ }
+ }
+ //
+ // append closing parenthesis state:
--- /dev/null
+*** 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 "<p> begin time: " `date` "</p>" >> "$comment_path"
+! "$bjam" $bjam_flags $tool --dump-tests 2>&1 | tee regress.log
+! echo "<p> end time: " `date` "</p>" >> "$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!"
+
+
--- /dev/null
+*** 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 <pch>on : <pc
+*** 268,274 ****
+
+ # Declare flags and action for compilation
+ flags gcc.compile OPTIONS <optimization>off : -O0 ;
+! flags gcc.compile OPTIONS <optimization>speed : -O3 ;
+ flags gcc.compile OPTIONS <optimization>space : -Os ;
+
+ flags gcc.compile OPTIONS <inlining>off : -fno-inline ;
+--- 268,274 ----
+
+ # Declare flags and action for compilation
+ flags gcc.compile OPTIONS <optimization>off : -O0 ;
+! flags gcc.compile OPTIONS <optimization>speed : "$RPM_OPT_FLAGS" ;
+ flags gcc.compile OPTIONS <optimization>space : -Os ;
+
+ flags gcc.compile OPTIONS <inlining>off : -fno-inline ;
--- /dev/null
+%bcond_with tests
+
+Name: boost
+Summary: The Boost C++ Libraries
+Version: 1.34.1
+Release: 17%{?dist}
+License: Boost
+URL: http://www.boost.org/
+Group: System Environment/Libraries
+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: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+BuildRequires: libstdc++-devel
+BuildRequires: bzip2-libs
+BuildRequires: bzip2-devel
+BuildRequires: zlib-devel
+BuildRequires: python-devel
+BuildRequires: libicu-devel
+Patch0: boost-configure.patch
+Patch1: boost-gcc-soname.patch
+Patch2: boost-use-rpm-optflags.patch
+Patch3: boost-run-tests.patch
+Patch4: boost-regex.patch
+Patch5: boost-gcc43.patch
+
+%description
+Boost provides free peer-reviewed portable C++ source libraries. The
+emphasis is on libraries which work well with the C++ Standard
+Library, in the hopes of establishing "existing practice" for
+extensions and providing reference implementations so that the Boost
+libraries are suitable for eventual standardization. (Some of the
+libraries have already been proposed for inclusion in the C++
+Standards Committee's upcoming C++ Standard Library Technical Report.)
+
+%package devel
+Summary: The Boost C++ headers and shared development libraries
+Group: Development/Libraries
+Requires: boost = %{version}-%{release}
+Provides: boost-python-devel = %{version}-%{release}
+
+%description devel
+Headers and shared object symlinks for the Boost C++ libraries.
+
+%package static
+Summary: The Boost C++ static development libraries
+Group: Development/Libraries
+Requires: boost-devel = %{version}-%{release}
+Obsoletes: boost-devel-static < 1.34.1-14
+Provides: boost-devel-static = %{version}-%{release}
+
+%description static
+Static Boost C++ libraries.
+
+%package doc
+Summary: The Boost C++ html docs
+Group: Documentation
+Provides: boost-python-docs = %{version}-%{release}
+
+%description doc
+HTML documentation files for Boost C++ libraries.
+
+%prep
+%setup -q -n %{name}_1_34_1
+%patch0 -p0
+%patch1 -p0
+%patch2 -p0
+%patch3 -p0
+%patch4 -p0
+%patch5 -p1
+
+%build
+BOOST_ROOT=`pwd`
+staged_dir=stage
+export BOOST_ROOT
+
+# 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="--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
+%if %{with tests}
+echo "<p>" `uname -a` "</p>" > status/regression_comment.html
+echo "" >> status/regression_comment.html
+echo "<p>" `g++ --version` "</p>" >> 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}/%{name}-%{version}
+
+# install lib
+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=$i;
+ SONAME=$i.3;
+ VNAME=$i.%{version};
+ base=`basename $i`;
+ NAMEbase=$base;
+ SONAMEbase=$base.3;
+ 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
+find %{name} -type d | while read a; do
+ mkdir -p $RPM_BUILD_ROOT%{_includedir}/$a
+ find $a -mindepth 1 -maxdepth 1 -type f \
+ | xargs -r install -m 644 -p -t $RPM_BUILD_ROOT%{_includedir}/$a
+done
+
+# install doc files
+DOCPATH=$RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/
+find libs doc more -type f \( -name \*.htm -o -name \*.html \) \
+ | sed -n '/\//{s,/[^/]*$,,;p}' \
+ | sort -u > tmp-doc-directories
+sed "s:^:$DOCPATH:" tmp-doc-directories | xargs -r mkdir -p
+cat tmp-doc-directories | while read a; do
+ find $a -mindepth 1 -maxdepth 1 -name \*.htm\* \
+ | xargs install -m 644 -p -t $DOCPATH$a
+done
+rm tmp-doc-directories
+install -p -m 644 -t $DOCPATH LICENSE_1_0.txt index.htm
+
+# remove scripts used to generate include files
+find $RPM_BUILD_ROOT%{_includedir}/ \( -name '*.pl' -o -name '*.sh' \) -exec rm {} \;
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post -p /sbin/ldconfig
+
+%postun -p /sbin/ldconfig
+
+%files
+%defattr(-, root, root, -)
+%{_libdir}/*.so.%{version}
+%{_libdir}/*.so.3
+
+%files devel
+%defattr(-, root, root, -)
+%{_includedir}/boost
+%{_libdir}/*.so
+
+%files static
+%defattr(-, root, root, -)
+%{_libdir}/*.a
+
+%files doc
+%defattr(-, root, root, -)
+%doc %{_docdir}/%{name}-%{version}
+
+%changelog
+* Mon Oct 6 2008 Petr Machata <pmachata@redhat.com> - 1.34.1-17
+- Fix gcc43 patch to apply cleanly under --fuzz=0
+- Resolves: #465003
+
+* Thu Jun 12 2008 Petr Machata <pmachata@redhat.com> - 1.34.1-16
+- Fix "changes meaning of keywords" in boost date_time
+- Related: #450718
+
+* Thu May 29 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 1.34.1-15
+- fix license tag
+
+* Thu Mar 27 2008 Petr Machata <pmachata@redhat.com> - 1.34.1-14
+- Change devel-static back to static.
+- Related: #225622
+
+* Wed Mar 26 2008 Petr Machata <pmachata@redhat.com> - 1.34.1-13
+- Install library doc files
+- Revamp %%install phase to speed up overall build time
+- Some cleanups per merge review
+- Resolves: #437032
+
+* Thu Feb 14 2008 Petr Machata <pmachata@redhat.com> - 1.34.1-12
+- Fix "changes meaning of keywords" in boost python
+- Resolves: #432694
+
+* Wed Feb 13 2008 Petr Machata <pmachata@redhat.com> - 1.34.1-11
+- Fix "changes meaning of special_values_parser" in boost date_time
+- Resolves: #432433
+
+* Wed Feb 6 2008 Petr Machata <pmachata@redhat.com> - 1.34.1-10
+- Fixes for GCC 4.3
+- Resolves: #431609
+
+* Mon Jan 14 2008 Benjamin Kosnik <bkoz@redhat.com> 1.34.1-7
+- Fixes for boost.regex (rev 42674).
+
+* Wed Sep 19 2007 Benjamin Kosnik <bkoz@redhat.com> 1.34.1-5
+- (#283771: Linking against boost libraries fails).
+
+* Tue Aug 21 2007 Benjamin Kosnik <bkoz@redhat.com> 1.34.1-4
+- Rebuild.
+
+* Wed Aug 08 2007 Benjamin Kosnik <bkoz@redhat.com> 1.34.1-3
+- Rebuild for icu 3.8 bump.
+
+* Thu Aug 02 2007 Benjamin Kosnik <bkoz@redhat.com> 1.34.1-2
+- SONAME to 3.
+
+* Tue Jul 31 2007 Benjamin Kosnik <bkoz@redhat.com> 1.34.1-1
+- Update to boost_1_34_1.
+- Source via http.
+- Philipp Thomas <pth.suse.de> fix for RPM_OPT_FLAGS
+- Philipp Thomas <pth.suse.de> fix for .so sym links.
+- (#225622) Patrice Dumas review comments.
+
+* Tue Jun 26 2007 Benjamin Kosnik <bkoz@redhat.com> 1.34.1.rc1-0.1
+- Update to boost_1_34_1_RC1.
+
+* Mon Apr 02 2007 Benjamin Kosnik <bkoz@redhat.com> 1.33.1-13
+- (#225622: Merge Review: boost)
+ Change static to devel-static.
+
+* Mon Mar 26 2007 Benjamin Kosnik <bkoz@redhat.com> 1.33.1-12
+- (#233523: libboost_python needs rebuild against python 2.5)
+ Use patch.
+
+* Mon Mar 26 2007 Benjamin Kosnik <bkoz@redhat.com> 1.33.1-11
+- (#225622: Merge Review: boost)
+ Source to http.
+ BuildRoot to preferred value.
+ PreReq to post/postun -p
+ Clarified BSL as GPL-Compatible, Free Software License.
+ Remove Obsoletes.
+ Add Provides boost-python.
+ Remove mkdir -p $RPM_BUILD_ROOT%%{_docdir}
+ Added periods for decription text.
+ Fix Group field.
+ Remove doc Requires boost.
+ Preserve timestamps on install.
+ Use %%defattr(-, root, root, -)
+ Added static package for .a libs.
+ Install static libs with 0644 permissions.
+ Use %%doc for doc files.
+
+* Mon Jan 22 2007 Benjamin Kosnik <bkoz@redhat.com> 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 <bkoz@redhat.com> 1.33.1-10
+- (#182414: boost: put tests in %%check section) via Rex Dieter
+- Fix EVR with %%{?dist} tag via Gianluca Sforna
+
+* Wed Nov 15 2006 Benjamin Kosnik <bkoz@redhat.com> 1.33.1-9
+- (#154784: boost-debuginfo package is empty)
+
+* Tue Nov 14 2006 Benjamin Kosnik <bkoz@redhat.com> 1.33.1-8
+- (#205866: Revert scanner.hpp change.)
+
+* Mon Nov 13 2006 Benjamin Kosnik <bkoz@redhat.com> 1.33.1-7
+- (#205866: boost::spirit generates warnings with -Wshadow)
+- (#205863: serialization lib generates warnings)
+- (#204326: boost RPM missing dependencies)
+- (#193465: [SIGNAL/BIND] Regressions with GCC 4.1)
+- BUILD_FLAGS, add, to see actual compile line.
+- REGEX_FLAGS, add, to compile regex with ICU support.
+
+* Wed Jul 12 2006 Jesse Keating <jkeating@redhat.com> - 1.33.1-6.1
+- rebuild
+
+* Tue May 16 2006 Karsten Hopp <karsten@redhat.de> 1.33.1-6
+- buildrequire python-devel for Python.h
+
+* Thu Feb 16 2006 Florian La Roche <laroche@redhat.com> - 1.33.1-5
+- use the real version number to point to the shared libs
+
+* Fri Feb 10 2006 Jesse Keating <jkeating@redhat.com> - 1.33.1-4.2
+- bump again for double-long bug on ppc(64)
+
+* Tue Feb 07 2006 Jesse Keating <jkeating@redhat.com> - 1.33.1-4.1
+- rebuilt for new gcc4.1 snapshot and glibc changes
+
+* Thu Jan 05 2006 Benjamin Kosnik <bkoz@redhat.com> 1.33.1-4
+- Fix symbolic links.
+
+* Wed Jan 04 2006 Benjamin Kosnik <bkoz@redhat.com> 1.33.1-3
+- Update to boost-1.33.1.
+- (#176485: Missing BuildRequires)
+- (#169271: /usr/lib/libboost*.so.? links missing in package)
+
+* Thu Dec 22 2005 Jesse Keating <jkeating@redhat.com> 1.33.1-2
+- rebuilt
+
+* Mon Nov 14 2005 Benjamin Kosnik <bkoz@redhat.com> 1.33.1-1
+- Update to boost-1.33.1 beta.
+- Run testsuite, gather results.
+
+* Tue Oct 11 2005 Nils Philippsen <nphilipp@redhat.com> 1.33.0-4
+- build require bzip2-devel and zlib-devel
+
+* Tue Aug 23 2005 Benjamin Kosnik <bkoz@redhat.com> 1.33.0-3
+- Create doc package again.
+- Parts of the above by Neal Becker <ndbecker2@gmail.com>.
+
+* Fri Aug 12 2005 Benjamin Kosnik <bkoz@redhat.com> 1.33.0-1
+- Update to boost-1.33.0, update SONAME to 2 due to ABI changes.
+- Simplified PYTHON_VERSION by Philipp Thomas <pth@suse.de>
+
+* Tue May 24 2005 Benjamin Kosnik <bkoz@redhat.com> 1.32.0-6
+- (#153093: boost warns that gcc 4.0.0 is an unknown compiler)
+- (#152205: development .so symlinks should be in -devel subpackage)
+- (#154783: linker .so symlinks missing from boost-devel package)
+
+* Fri Mar 18 2005 Benjamin Kosnik <bkoz@redhat.com> 1.32.0-5
+- Revert boost-base.patch to old behavior.
+- Use SONAMEVERSION instead of dllversion.
+
+* Wed Mar 16 2005 Benjamin Kosnik <bkoz@redhat.com> 1.32.0-4
+- (#142612: Compiling Boost 1.32.0 Failed in RHEL 3.0 on Itanium2)
+- (#150069: libboost_python.so is missing)
+- (#141617: bad patch boost-base.patch)
+- (#122817: libboost_*.so symlinks missing)
+- Re-add boost-thread.patch.
+- Change boost-base.patch to show thread tags.
+- Change boost-gcc-tools.patch to use SOTAG, compile with dllversion.
+- Add symbolic links to files.
+- Sanity check can compile with gcc-3.3.x, gcc-3.4.2, gcc-4.0.x., gcc-4.1.x.
+
+* Thu Dec 02 2004 Benjamin Kosnik <bkoz@redhat.com> 1.32.0-3
+- (#122817: libboost_*.so symlinks missing)
+- (#141574: half of the package is missing)
+- (#141617: bad patch boost-base.patch)
+
+* Wed Dec 01 2004 Benjamin Kosnik <bkoz@redhat.com> 1.32.0-2
+- Remove bogus Obsoletes.
+
+* Mon Nov 29 2004 Benjamin Kosnik <bkoz@redhat.com> 1.32.0-1
+- Update to 1.32.0
+
+* Wed Sep 22 2004 Than Ngo <than@redhat.com> 1.31.0-9
+- cleanup specfile
+- fix multiarch problem
+
+* Tue Jun 15 2004 Elliot Lee <sopwith@redhat.com>
+- rebuilt
+
+* Wed May 05 2004 Warren Togami <wtogami@redhat.com> 1.31.0-7
+- missing Obsoletes boost-python
+
+* Mon May 03 2004 Benjamin Kosnik <bkoz@redhat.com>
+- (#121630: gcc34 patch needed)
+
+* Wed Apr 21 2004 Warren Togami <wtogami@redhat.com>
+- #121415 FC2 BLOCKER: Obsoletes boost-python-devel, boost-doc
+- other cleanups
+
+* Tue Mar 30 2004 Benjamin Kosnik <bkoz@redhat.com>
+- Remove bjam dependency. (via Graydon).
+- Fix installed library names.
+- Fix SONAMEs in shared libraries.
+- Fix installed header location.
+- Fix installed permissions.
+
+* Fri Feb 13 2004 Elliot Lee <sopwith@redhat.com>
+- rebuilt
+
+* Mon Feb 09 2004 Benjamin Kosnik <bkoz@redhat.com> 1.31.0-2
+- Update to boost-1.31.0
+
+* Thu Jan 22 2004 Benjamin Kosnik <bkoz@redhat.com> 1.31.0-1
+- Update to boost-1.31.0.rc2
+- (#109307: Compile Failure with boost libraries)
+- (#104831: Compile errors in apps using Boost.Python...)
+- Unify into boost, boost-devel rpms.
+- Simplify installation using bjam and prefix install.
+
+* Tue Sep 09 2003 Nalin Dahyabhai <nalin@redhat.com> 1.30.2-2
+- require boost-devel instead of devel in subpackages which require boost-devel
+- remove stray Prefix: tag
+
+* Mon Sep 08 2003 Benjamin Kosnik <bkoz@redhat.com> 1.30.2-1
+- change license to Freely distributable
+- verify installation of libboost_thread
+- more boost-devel removals
+- deal with lack of _REENTRANT on ia64/s390
+- (#99458) rpm -e fixed via explict dir additions
+- (#103293) update to 1.30.2
+
+* Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com>
+- rebuilt
+
+* Tue May 13 2003 Florian La Roche <Florian.LaRoche@redhat.de>
+- remove packager, change to new Group:
+
+* Tue May 06 2003 Tim Powers <timp@redhat.com> 1.30.0-3
+- add deffattr's so we don't have unknown users owning files