set TMPDIR - also removed a quote in comment that confuses emacs
[boost.git] / boost.spec
index 2bd5703..7141cfe 100644 (file)
@@ -1,13 +1,17 @@
 %bcond_with tests
+%define sonamever 4
+
+%define version 1.37.0
+%define taglevel 6
 
 Name: boost
 Summary: The Boost C++ Libraries
-Version: 1.40.0
-Release: 0%{?dist}
+Version: %{version}
+Release: %{taglevel}
 License: Boost
 URL: http://www.boost.org/
 Group: System Environment/Libraries
-Source: http://downloads.sourceforge.net/boost/boost_1_40_0.tar.bz2
+Source: boost_1_37_0.tar.bz2
 Obsoletes: boost-doc <= 1.30.2
 Obsoletes: boost-python <= 1.30.2
 Provides: boost-python = %{version}-%{release}
@@ -19,12 +23,16 @@ BuildRequires: bzip2-devel
 BuildRequires: zlib-devel
 BuildRequires: python-devel
 BuildRequires: libicu-devel
+BuildRequires: chrpath
 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
+Patch1: boost-use-rpm-optflags.patch
+Patch2: boost-run-tests.patch
+Patch3: boost-gcc43.patch
+Patch4: boost-gcc-soname.patch
+Patch5: boost-function_template.patch
+Patch6: boost-unneccessary_iostreams.patch
+Patch7: boost-1_37_0-smp.patch
+Patch8: boost-bitset.patch
 
 %description
 Boost provides free peer-reviewed portable C++ source libraries.  The
@@ -33,7 +41,7 @@ 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.)
+Standards Committee upcoming C++ Standard Library Technical Report.)
 
 %package devel
 Summary: The Boost C++ headers and shared development libraries
@@ -63,15 +71,19 @@ Provides: boost-python-docs = %{version}-%{release}
 HTML documentation files for Boost C++ libraries.
 
 %prep
-%setup -q -n %{name}_1_34_1
+%setup -q -n %{name}_1_37_0
 %patch0 -p0
 %patch1 -p0
 %patch2 -p0
-%patch3 -p0
-%patch4 -p0
-%patch5 -p1
+%patch3 -p1
+sed 's/!!!SONAME!!!/%{sonamever}/' %{PATCH4} | %{__patch} -p1 --fuzz=0
+%patch5 -p0
+%patch6 -p0
+sed 's/!!!SMP_FLAGS!!!/%{?_smp_mflags}/' %{PATCH7} | %{__patch} -p1 --fuzz=0
+%patch8 -p1
 
 %build
+export TMPDIR=/tmp
 BOOST_ROOT=`pwd`
 staged_dir=stage
 export BOOST_ROOT
@@ -80,7 +92,6 @@ export BOOST_ROOT
 (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"
@@ -135,16 +146,21 @@ for i in `find stage -type f -name \*.a`; do
 done;
 for i in `find stage -type f -name \*.so`; do
   NAME=$i;
-  SONAME=$i.3;
+  SONAME=$i.%{sonamever};
   VNAME=$i.%{version};
   base=`basename $i`;
   NAMEbase=$base;
-  SONAMEbase=$base.3;
+  SONAMEbase=$base.%{sonamever};
   VNAMEbase=$base.%{version};
   mv $i $VNAME;
+
+  # remove rpath
+  chrpath --delete $VNAME;
+
   ln -s $VNAMEbase $SONAME;
   ln -s $VNAMEbase $NAME;
-  install -p -m 755 $VNAME $RPM_BUILD_ROOT%{_libdir}/$VNAMEbase;
+  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;
@@ -153,7 +169,7 @@ done;
 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
+  | xargs -r install -m 644 -p -t $RPM_BUILD_ROOT%{_includedir}/$a
 done
 
 # install doc files
@@ -164,7 +180,7 @@ find libs doc more -type f \( -name \*.htm -o -name \*.html \) \
 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
+    | 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
@@ -182,7 +198,7 @@ rm -rf $RPM_BUILD_ROOT
 %files
 %defattr(-, root, root, -)
 %{_libdir}/*.so.%{version}
-%{_libdir}/*.so.3
+%{_libdir}/*.so.%{sonamever}
 
 %files devel
 %defattr(-, root, root, -)
@@ -198,10 +214,46 @@ rm -rf $RPM_BUILD_ROOT
 %doc %{_docdir}/%{name}-%{version}
 
 %changelog
+* Mon Mar 23 2009 Petr Machata <pmachata@redhat.com> - 1.37.0-6
+- Apply a SMP patch from Stefan Ring
+- Apply a workaround for "cannot appear in a constant-expression" in
+  dynamic_bitset library.
+- Resolves: #491537
+
+* Mon Feb 23 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.37.0-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
+
+* Mon Jan 12 2009 Petr Machata <pmachata@redhat.com> - 1.37.0-3
+- Apply a unneccessary_iostreams patch from Caolan McNamara
+- Fix soname patch so that it applies with fuzz=0.  Use fuzz=0 option
+  in spec file just like ordinary patches do.
+- Resolves: #479409
+
+* Fri Dec 19 2008 Petr Machata <pmachata@redhat.com> - 1.37.0-2
+- Apply a function_template patch from Caolan McNamara
+- Resolves: #477131
+
+* Tue Dec 16 2008 Benjamin Kosnik <bkoz@redhat.com> - 1.37.0-1
+- Fix rpmlint rpath errors.
+- Fix rpmlint warnings on tabs and spaces.
+- Bump SONAME to 4
+
+* Tue Nov 17 2008 Benjamin Kosnik <bkoz@redhat.com> - 1.37.0-0.1
+- Rebase to 1.37.0.
+
+* Tue Oct 21 2008 Benjamin Kosnik <bkoz@redhat.com> - 1.36.0-1
+- Rebase to 1.36.0.
+
 * Mon Oct  6 2008 Petr Machata <pmachata@redhat.com> - 1.34.1-17
 - Fix gcc43 patch to apply cleanly under --fuzz=0
 - Resolves: #465003
 
+* Mon Aug 11 2008 Petr Machata <pmachata@redhat.com> - 1.36.0-0.1.beta1
+- Rebase to 1.36.0.beta1
+  - Drop boost-regex.patch and portions of boost-gcc43.patch, port the rest
+  - Automate SONAME tracking and bump SONAME to 4
+  - Adjust boost-configure.patch to include threading=single,multi explicitly
+
 * Thu Jun 12 2008 Petr Machata <pmachata@redhat.com> - 1.34.1-16
 - Fix "changes meaning of keywords" in boost date_time
 - Related: #450718