From ceff9e48665c97152ad13e89086565c7fd6540742c94558cbeb04f38f79e6e88 Mon Sep 17 00:00:00 2001 From: OBS User unknown Date: Fri, 20 Feb 2009 20:48:27 +0000 Subject: [PATCH] OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/boost?expand=0&rev=26 --- boost-lib64.patch | 11 ++++++--- boost.changes | 6 +++++ boost.spec | 62 +++++++++++++++++++++++++---------------------- boost.spec.in | 61 +++++++++++++++++++++++++--------------------- mkspec.sh | 4 +-- 5 files changed, 81 insertions(+), 63 deletions(-) diff --git a/boost-lib64.patch b/boost-lib64.patch index bf7db3e..7599216 100644 --- a/boost-lib64.patch +++ b/boost-lib64.patch @@ -12,7 +12,7 @@ + boostlibsuff=$enableval, boostlibsuff="auto") + + -+ if test "$kdelibsuff" = "auto"; then ++ if test "$boostlibsuff" = "auto"; then + cat > conftest.c << EOF +#include +int main(int argc, char *argv[]) @@ -48,12 +48,15 @@ AC_DEFUN([AX_BOOST_BASE], [ AC_ARG_WITH([boost], -@@ -80,16 +121,17 @@ +@@ -77,6 +118,7 @@ + boost_lib_version_req_sub_minor="0" + fi + WANT_BOOST_VERSION=`expr $boost_lib_version_req_major \* 100000 \+ $boost_lib_version_req_minor \* 100 \+ $boost_lib_version_req_sub_minor` ++ AX_BOOST_CHECK_LIB64 AC_MSG_CHECKING(for boostlib >= $boost_lib_version_req) succeeded=no -+ AX_BOOST_CHECK_LIB64 - dnl first we check the system location for boost libraries +@@ -84,12 +126,12 @@ dnl this location ist chosen if boost libraries are installed with the --layout=system option dnl or if you install boost with RPM if test "$ac_boost_path" != ""; then diff --git a/boost.changes b/boost.changes index 03ff9d0..4bd59de 100644 --- a/boost.changes +++ b/boost.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Fri Feb 20 14:09:58 CET 2009 - pth@suse.de + +- Put the license in a versioned package. This allows installing + libraries in parallel (bnc#477603). + ------------------------------------------------------------------- Fri Feb 13 15:18:12 CET 2009 - pth@suse.de diff --git a/boost.spec b/boost.spec index cfa7e52..7fd5900 100644 --- a/boost.spec +++ b/boost.spec @@ -45,7 +45,7 @@ Group: Development/Libraries/C and C++ Summary: Boost C++ Libraries BuildRoot: %{_tmppath}/%{name}-%{version}-build Version: 1.38.0 -Release: 1 +Release: 2 Source0: %{name}_1_38_0.tar.bz2 Source1: boost-rpmlintrc Source2: boost_1_33_1_man.tar.bz2 @@ -65,6 +65,7 @@ Patch19: boost-sane_versioning.patch Patch20: boost-strict_aliasing.patch Patch21: boost-lib64.patch Recommends: %{all_libs} +%define _docdir %{_datadir}/doc/packages/boost-%{version} %description Boost provides free peer-reviewed portable C++ source libraries. The @@ -91,7 +92,6 @@ License: BSD 3-Clause Summary: Development package for Boost C++ Group: Development/Libraries/C and C++ Requires: %{all_libs} -Requires: %{name}-license = %{version} AutoReqProv: on %description devel @@ -101,13 +101,13 @@ the package boost-doc. -%package license +%package -n boost-license1_38_0 License: BSD 3-Clause Summary: Boost License Group: Development/Libraries/C and C++ AutoReqProv: on -%description license +%description -n boost-license1_38_0 This package contains the license boost is provided under. @@ -116,7 +116,6 @@ This package contains the license boost is provided under. License: BSD 3-Clause Summary: Documentation for the Boost C++ Libraries Group: Development/Libraries/C and C++ -Requires: %{name}-license = %{version} AutoReqProv: on %description doc @@ -128,7 +127,7 @@ This package contains documentation about the boost dynamic libraries. License: BSD 3-Clause Summary: Boost::Date.Time Runtime libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license1_38_0 AutoReqProv: on %description -n libboost_date_time1_38_0 @@ -140,7 +139,7 @@ This package contains the Boost Date.Time runtime libraries. License: BSD 3-Clause Summary: Boost::Filesystem Runtime Libraries Group: System/Localization -Requires: %{name}-license = %{version} +Requires: boost-license1_38_0 AutoReqProv: on %description -n libboost_filesystem1_38_0 @@ -152,7 +151,7 @@ This package contains the Boost::Filesystem libraries. License: BSD 3-Clause Summary: Boost::Graph Runtime Libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license1_38_0 AutoReqProv: on %description -n libboost_graph1_38_0 @@ -164,7 +163,7 @@ This package contains the Boost::Graph Runtime libraries. License: BSD 3-Clause Summary: Boost::IOStreams Runtime Libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license1_38_0 AutoReqProv: on %description -n libboost_iostreams1_38_0 @@ -176,7 +175,7 @@ This package contains the Boost::IOStreams Runtime libraries. License: BSD 3-Clause Summary: Boost::Math Runtime Libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license1_38_0 AutoReqProv: on %description -n libboost_math1_38_0 @@ -190,7 +189,7 @@ This package contains the Boost::Math Runtime libraries. License: BSD 3-Clause Summary: Boost::MPI Runtime libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license1_38_0 AutoReqProv: on %description -n libboost_mpi1_38_0 @@ -204,7 +203,7 @@ This package contains the Boost::MPI Runtime libraries. License: BSD 3-Clause Summary: Boost::Test Runtime Libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license1_38_0 AutoReqProv: on %description -n libboost_test1_38_0 @@ -216,7 +215,7 @@ This package contains the Boost::Test runtime libraries. License: BSD 3-Clause Summary: Boost::ProgramOptions Runtime libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license1_38_0 AutoReqProv: on %description -n libboost_program_options1_38_0 @@ -228,7 +227,7 @@ This package contains the Boost::ProgramOptions Runtime libraries. License: BSD 3-Clause Summary: Boost::Python Runtime Libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license1_38_0 AutoReqProv: on %description -n libboost_python1_38_0 @@ -240,7 +239,7 @@ This package contains the Boost::Python Runtime libraries. License: BSD 3-Clause Summary: Boost::Serialization Runtime Libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license1_38_0 AutoReqProv: on %description -n libboost_serialization1_38_0 @@ -252,7 +251,7 @@ This package contains the Boost::Serialization Runtime libraries. License: BSD 3-Clause Summary: Boost::Signals Runtime Libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license1_38_0 AutoReqProv: on %description -n libboost_signals1_38_0 @@ -264,7 +263,7 @@ This package contains the Boost::Signals Runtime libraries. License: BSD 3-Clause Summary: Boost::System Runtime Libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license1_38_0 AutoReqProv: on %description -n libboost_system1_38_0 @@ -276,7 +275,7 @@ This package contains the Boost::System runtime libraries. License: BSD 3-Clause Summary: Boost::Thread Runtime Libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license1_38_0 AutoReqProv: on %description -n libboost_thread1_38_0 @@ -288,7 +287,7 @@ This package contains the Boost::Thread runtime libraries. License: BSD 3-Clause Summary: Boost::Wave Runtime Libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license1_38_0 AutoReqProv: on %description -n libboost_wave1_38_0 @@ -300,7 +299,7 @@ This package contains the Boost::Wave runtime libraries. License: BSD 3-Clause Summary: The Boost::Regex runtime library Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license1_38_0 AutoReqProv: on %description -n libboost_regex1_38_0 @@ -396,7 +395,7 @@ source /var/mpi-selector/data/$(cat /etc/sysconfig/mpi-selector).sh --includedir=%{buildroot}%{_includedir} \ install || echo "Not all Boost libraries built properly." mv %{buildroot}%{_includedir}/boost-1_38/boost %{buildroot}%{_includedir}/ -mkdir -p %{buildroot}%{_docdir}/boost-%{version} +mkdir -p %{buildroot}%{_docdir} ## install lib #for i in $(find stage -type f -name \*.a); do # NAME=$(basename $i); @@ -448,12 +447,13 @@ dos2unix libs/ptr_container/doc/tutorial_example.html \ libs/graph/doc/lengauer_tarjan_dominator.htm \ libs/test/test/test_files/errors_handling_test.pattern \ libs/test/test/test_files/result_report_test.pattern -find . -name \*.htm\* -o -name \*.gif -o -name \*.css -o -name \*.jpg -o -name \*.png -o -name \*.ico | tar --files-from=%{S:3} -cf - --files-from=- | tar -C %{buildroot}%{_docdir}/boost-%{version} -xf - -rm -rf %{buildroot}%{_docdir}/boost-%{version}/boost -ln -s /usr/include/boost %{buildroot}%{_docdir}/boost-%{version}/ -ln -s ../LICENSE_1_0.txt %{buildroot}%{_docdir}/boost-%{version}/libs +find . -name \*.htm\* -o -name \*.gif -o -name \*.css -o -name \*.jpg -o -name \*.png -o -name \*.ico | tar --files-from=%{S:3} -cf - --files-from=- | tar -C %{buildroot}%{_docdir} +rm -rf %{buildroot}%{_docdir}/boost +ln -s /usr/include/boost %{buildroot}%{_docdir} +ln -s ../LICENSE_1_0.txt %{buildroot}%{_docdir}/libs #only for documentation, don't need to be executable -find %{buildroot}%{_docdir}/boost-%{version} -name \*.py -exec chmod -x {} + +find %{buildroot}%{_docdir} -name \*.py -exec chmod -x {} + +mkdir #symlink dupes %if 0%suse_version > 1020 %fdupes %buildroot @@ -523,9 +523,9 @@ find %{buildroot}%{_docdir}/boost-%{version} -name \*.py -exec chmod -x {} + %postun -n libboost_wave1_38_0 -p /sbin/ldconfig -%files license +%files -n boost-license1_38_0 %defattr(-, root, root, -) -%doc LICENSE_1_0.txt +%doc %{_docdir}/LICENSE_1_0.txt %files -n libboost_date_time1_38_0 %defattr(-, root, root, -) @@ -603,11 +603,15 @@ find %{buildroot}%{_docdir}/boost-%{version} -name \*.py -exec chmod -x {} + %files doc %defattr(-, root, root, -) -%doc %{_docdir}/boost-%{version} +%doc %{_docdir} +%exclude %{_docdir} %doc %{_mandir}/man3/*.3.gz %doc %{_mandir}/man7/*.7.gz %changelog +* Fri Feb 20 2009 pth@suse.de +- Put the license in a versioned package. This allows installing + libraries in parallel (bnc#477603). * Fri Feb 13 2009 pth@suse.de - Fix spec file (remove patches). * Wed Feb 11 2009 pth@suse.de diff --git a/boost.spec.in b/boost.spec.in index a767a3e..a031e73 100644 --- a/boost.spec.in +++ b/boost.spec.in @@ -76,6 +76,8 @@ Patch20: boost-strict_aliasing.patch Patch21: boost-lib64.patch Recommends: %{all_libs} +%define _docdir %{_datadir}/doc/packages/boost-%{version} + %description Boost provides free peer-reviewed portable C++ source libraries. The emphasis is on libraries that work well with the C++ Standard Library. @@ -101,7 +103,6 @@ License: BSD 3-Clause Summary: Development package for Boost C++ Group: Development/Libraries/C and C++ Requires: %{all_libs} -Requires: %{name}-license = %{version} AutoReqProv: on %description devel @@ -111,13 +112,13 @@ the package boost-doc. -%package license +%package -n boost-license@lib_appendix@ License: BSD 3-Clause Summary: Boost License Group: Development/Libraries/C and C++ AutoReqProv: on -%description license +%description -n boost-license@lib_appendix@ This package contains the license boost is provided under. @@ -126,7 +127,6 @@ This package contains the license boost is provided under. License: BSD 3-Clause Summary: Documentation for the Boost C++ Libraries Group: Development/Libraries/C and C++ -Requires: %{name}-license = %{version} AutoReqProv: on %description doc @@ -138,7 +138,7 @@ This package contains documentation about the boost dynamic libraries. License: BSD 3-Clause Summary: Boost::Date.Time Runtime libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license@lib_appendix@ AutoReqProv: on %description -n libboost_date_time@lib_appendix@ @@ -150,7 +150,7 @@ This package contains the Boost Date.Time runtime libraries. License: BSD 3-Clause Summary: Boost::Filesystem Runtime Libraries Group: System/Localization -Requires: %{name}-license = %{version} +Requires: boost-license@lib_appendix@ AutoReqProv: on %description -n libboost_filesystem@lib_appendix@ @@ -162,7 +162,7 @@ This package contains the Boost::Filesystem libraries. License: BSD 3-Clause Summary: Boost::Graph Runtime Libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license@lib_appendix@ AutoReqProv: on %description -n libboost_graph@lib_appendix@ @@ -174,7 +174,7 @@ This package contains the Boost::Graph Runtime libraries. License: BSD 3-Clause Summary: Boost::IOStreams Runtime Libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license@lib_appendix@ AutoReqProv: on %description -n libboost_iostreams@lib_appendix@ @@ -186,7 +186,7 @@ This package contains the Boost::IOStreams Runtime libraries. License: BSD 3-Clause Summary: Boost::Math Runtime Libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license@lib_appendix@ AutoReqProv: on %description -n libboost_math@lib_appendix@ @@ -198,7 +198,7 @@ This package contains the Boost::Math Runtime libraries. License: BSD 3-Clause Summary: Boost::MPI Runtime libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license@lib_appendix@ AutoReqProv: on %description -n libboost_mpi@lib_appendix@ @@ -210,7 +210,7 @@ This package contains the Boost::MPI Runtime libraries. License: BSD 3-Clause Summary: Boost::Test Runtime Libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license@lib_appendix@ AutoReqProv: on %description -n libboost_test@lib_appendix@ @@ -222,7 +222,7 @@ This package contains the Boost::Test runtime libraries. License: BSD 3-Clause Summary: Boost::ProgramOptions Runtime libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license@lib_appendix@ AutoReqProv: on %description -n libboost_program_options@lib_appendix@ @@ -234,7 +234,7 @@ This package contains the Boost::ProgramOptions Runtime libraries. License: BSD 3-Clause Summary: Boost::Python Runtime Libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license@lib_appendix@ AutoReqProv: on %description -n libboost_python@lib_appendix@ @@ -246,7 +246,7 @@ This package contains the Boost::Python Runtime libraries. License: BSD 3-Clause Summary: Boost::Serialization Runtime Libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license@lib_appendix@ AutoReqProv: on %description -n libboost_serialization@lib_appendix@ @@ -258,7 +258,7 @@ This package contains the Boost::Serialization Runtime libraries. License: BSD 3-Clause Summary: Boost::Signals Runtime Libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license@lib_appendix@ AutoReqProv: on %description -n libboost_signals@lib_appendix@ @@ -270,7 +270,7 @@ This package contains the Boost::Signals Runtime libraries. License: BSD 3-Clause Summary: Boost::System Runtime Libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license@lib_appendix@ AutoReqProv: on %description -n libboost_system@lib_appendix@ @@ -282,7 +282,7 @@ This package contains the Boost::System runtime libraries. License: BSD 3-Clause Summary: Boost::Thread Runtime Libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license@lib_appendix@ AutoReqProv: on %description -n libboost_thread@lib_appendix@ @@ -294,7 +294,7 @@ This package contains the Boost::Thread runtime libraries. License: BSD 3-Clause Summary: Boost::Wave Runtime Libraries Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license@lib_appendix@ AutoReqProv: on %description -n libboost_wave@lib_appendix@ @@ -306,7 +306,7 @@ This package contains the Boost::Wave runtime libraries. License: BSD 3-Clause Summary: The Boost::Regex runtime library Group: System/Libraries -Requires: %{name}-license = %{version} +Requires: boost-license@lib_appendix@ AutoReqProv: on %description -n libboost_regex@lib_appendix@ @@ -418,7 +418,7 @@ source /var/mpi-selector/data/$(cat /etc/sysconfig/mpi-selector).sh mv %{buildroot}%{_includedir}/boost-@short_version@/boost %{buildroot}%{_includedir}/ -mkdir -p %{buildroot}%{_docdir}/boost-%{version} +mkdir -p %{buildroot}%{_docdir} ## install lib #for i in $(find stage -type f -name \*.a); do @@ -479,12 +479,16 @@ dos2unix libs/ptr_container/doc/tutorial_example.html \ libs/graph/doc/lengauer_tarjan_dominator.htm \ libs/test/test/test_files/errors_handling_test.pattern \ libs/test/test/test_files/result_report_test.pattern -find . -name \*.htm\* -o -name \*.gif -o -name \*.css -o -name \*.jpg -o -name \*.png -o -name \*.ico | tar --files-from=%{S:3} -cf - --files-from=- | tar -C %{buildroot}%{_docdir}/boost-%{version} -xf - -rm -rf %{buildroot}%{_docdir}/boost-%{version}/boost -ln -s /usr/include/boost %{buildroot}%{_docdir}/boost-%{version}/ -ln -s ../LICENSE_1_0.txt %{buildroot}%{_docdir}/boost-%{version}/libs +find . -name \*.htm\* -o -name \*.gif -o -name \*.css -o -name \*.jpg -o -name \*.png -o -name \*.ico | tar --files-from=%{S:3} -cf - --files-from=- | tar -C %{buildroot}%{_docdir} +rm -rf %{buildroot}%{_docdir}/boost +ln -s /usr/include/boost %{buildroot}%{_docdir} +ln -s ../LICENSE_1_0.txt %{buildroot}%{_docdir}/libs #only for documentation, don't need to be executable -find %{buildroot}%{_docdir}/boost-%{version} -name \*.py -exec chmod -x {} + +find %{buildroot}%{_docdir} -name \*.py -exec chmod -x {} + + +mkdir + + #symlink dupes %if 0%suse_version > 1020 %fdupes %buildroot @@ -526,9 +530,9 @@ find %{buildroot}%{_docdir}/boost-%{version} -name \*.py -exec chmod -x {} + %postun -n libboost_system@lib_appendix@ -p /sbin/ldconfig %postun -n libboost_wave@lib_appendix@ -p /sbin/ldconfig -%files license +%files -n boost-license@lib_appendix@ %defattr(-, root, root, -) -%doc LICENSE_1_0.txt +%doc %{_docdir}/LICENSE_1_0.txt %files -n libboost_date_time@lib_appendix@ %defattr(-, root, root, -) @@ -606,7 +610,8 @@ find %{buildroot}%{_docdir}/boost-%{version} -name \*.py -exec chmod -x {} + %files doc %defattr(-, root, root, -) -%doc %{_docdir}/boost-%{version} +%doc %{_docdir} +%exclude %{_docdir} %doc %{_mandir}/man3/*.3.gz %doc %{_mandir}/man7/*.7.gz diff --git a/mkspec.sh b/mkspec.sh index 490a334..d78c685 100644 --- a/mkspec.sh +++ b/mkspec.sh @@ -3,9 +3,9 @@ version=1.38.0 man_version=1.33.1 -file_version="$(echo $version|sed 's/\./_/g')" +file_version="$(echo $version|tr '.' '_')" short_version="$(echo $file_version | cut -d_ -f 1,2)" -man_file_version="$(echo $man_version|sed 's/\./_/g')" +man_file_version="$(echo $man_version|tr '.' '_')" lib_appendix="${file_version}"