Accepting request 543915 from home:adamm:branches:devel:libraries:c_c++

- Use multibuild setup - build no-dependency libraries in the
  base package and build the rest of the compiled libraries in
  the main variant. This should speed up bootstrapping.
- build Python 2 conditionally
- boost-devel not built by default anymore.
- libboost_headers-devel now provides boost-devel for legacy
  dependencies. If you need compiled boost libraries depend on
  the current compiled devel subpackage.
- run %fdupes only on the header files and documentation
- drop build dependencies on gcc-fortran, chrpath.

OBS-URL: https://build.opensuse.org/request/show/543915
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/boost?expand=0&rev=203
This commit is contained in:
Adam Majer 2017-11-20 16:05:29 +00:00 committed by Git OBS Bridge
parent 562779e48b
commit ed9b1c834b
5 changed files with 315 additions and 213 deletions

3
_multibuild Normal file
View File

@ -0,0 +1,3 @@
<multibuild>
<package>base</package>
</multibuild>

View File

@ -1,5 +1,3 @@
boost_1_65-devel
requires -boost-<targettype>
libboost_atomic1_65_1
libboost_container1_65_1
libboost_context1_65_1

View File

@ -1,3 +1,21 @@
-------------------------------------------------------------------
Tue Oct 24 14:24:06 UTC 2017 - jmatejek@suse.com
- build Python 2 conditionally
-------------------------------------------------------------------
Tue Oct 10 13:49:10 UTC 2017 - adam.majer@suse.de
- Use multibuild setup - build no-dependency libraries in the
base package and build the rest of the compiled libraries in
the main variant. This should speed up bootstrapping.
- boost-devel not built by default anymore.
- libboost_headers-devel now provides boost-devel for legacy
dependencies. If you need compiled boost libraries depend on
the current compiled devel subpackage.
- run %fdupes only on the header files and documentation
- drop build dependencies on gcc-fortran, chrpath.
-------------------------------------------------------------------
Mon Oct 9 08:13:38 UTC 2017 - nmoreychaisemartin@suse.com

View File

@ -24,8 +24,15 @@
%bcond_with build_docs
%bcond_without package_pdf
%bcond_without build_quickbook
%bcond_with boost_devel
%define my_docdir %{_docdir}/boost-%{version}
%if "@BUILD_FLAVOR@" == "base"
%define build_base 1
%else
%define build_base 0
%endif
# Build with OpenMPI
%if 0%{?suse_version} >= 1330
# OpenMPI >= 2 is not available on ppc64be
@ -45,10 +52,11 @@
%bcond_without build_mpi
%endif
%if 0%{?suse_version} < 1200
%bcond_with python3
%else
%bcond_without python3
%if 0%{?have_python2}
%bcond_without python2
%else
%bcond_with python2
%endif
# Python NumPy library is only available on Leap 42.1 OpenSUSE onward
@ -73,12 +81,6 @@
%bcond_with boost_fiber
%endif
#%ifarch hppa
#%bcond_with long_double
#%else
#%bcond_without long_double
#%endif
Name: boost
%define package_name boost_1_65
Version: 1.65.1
@ -114,34 +116,30 @@ Patch17: python_mpi.patch
Patch18: dynamic_linking.patch
Patch20: python_library_name.patch
Patch21: python_numpy_retfunc.patch
BuildRequires: chrpath
BuildRequires: dos2unix
BuildRequires: fdupes
BuildRequires: libbz2-devel
BuildRequires: libexpat-devel
BuildRequires: libicu-devel
BuildRequires: zlib-devel
%if %{with boost_fiber}
BuildRequires: gcc-c++ > 5
%else
BuildRequires: gcc-c++
%endif
%if 0%{?suse_version} <= 1320
# boost requires quadmath.h
BuildRequires: gcc-fortran
%endif
BuildRequires: libbz2-devel
BuildRequires: libexpat-devel
BuildRequires: libicu-devel
BuildRequires: python-devel
%if ! %build_base
BuildRequires: dos2unix
%if %{with python2}
BuildRequires: python2-devel
%if %{with python_numpy}
BuildRequires: python-numpy-devel
%endif
BuildRequires: python2-numpy-devel
%endif # numpy2
%endif # python2
%if %{with python3}
BuildRequires: python3-devel
%if %{with python_numpy}
BuildRequires: python3-numpy-devel
%endif # numpy
%endif # numpy3
%endif # python3
#!BuildIgnore: python
BuildRequires: zlib-devel
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if %{with build_mpi}
BuildRequires: %{mpi_implem}-devel
%endif
@ -152,6 +150,8 @@ BuildRequires: doxygen
BuildRequires: libxslt-tools
BuildRequires: texlive-latex
%endif
%endif # ! build_base
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
Boost provides free peer-reviewed portable C++ source libraries. The
@ -166,11 +166,34 @@ Although Boost was begun by members of the C++ Standards Committee
Library Working Group, membership has expanded to include nearly two
thousand members of the C++ community at large.
This package is mainly needed for updating from a prior version, the
dynamic libraries are found in their respective package. For development
using Boost, you also need the boost-devel package. For documentation,
see the boost-doc package.
# %%if %%build_base
%package -n libboost_headers%{lib_appendix}-devel
Summary: Development headers for Boost
Group: Development/Libraries/C and C++
Requires: boost-license%{lib_appendix}
Requires: libstdc++-devel
Provides: libboost_headers-devel = %{version}
%if %{without boost_devel}
Provides: boost-devel = %{version}
%endif
Conflicts: otherproviders(libboost_headers-devel)
Conflicts: boost-devel < 1.63
%description -n libboost_headers%{lib_appendix}-devel
A collection of header-only libraries for Boost.
%package -n boost-license%{lib_appendix}
Summary: Boost License
Group: Development/Libraries/C and C++
Provides: boost-license = %{version}-%{release}
%if 0%{?suse_version} >= 1120
BuildArch: noarch
%endif
%description -n boost-license%{lib_appendix}
This package contains the license boost is provided under.
%if %{with boost_devel}
%package -n %{package_name}-devel
Summary: Development package for Boost C++
Group: Development/Libraries/C and C++
@ -196,7 +219,9 @@ Requires: libboost_graph_parallel%{lib_appendix}-devel
Requires: libboost_mpi%{lib_appendix}-devel
%endif
Requires: libboost_program_options%{lib_appendix}-devel
%if %{with python2}
Requires: libboost_python-py2_7-%{lib_appendix}-devel
%endif
%if %{with python3}
Requires: libboost_python-py3-%{lib_appendix}-devel
%endif
@ -218,17 +243,7 @@ Conflicts: otherproviders(boost-devel)
This package contains all that is needed to develop/compile
applications that use the Boost C++ libraries. For documentation see
the documentation packages (html, man or pdf).
%package -n libboost_headers%{lib_appendix}-devel
Summary: Development headers for Boost
Group: Development/Libraries/C and C++
Requires: libstdc++-devel
Provides: libboost_headers-devel = %{version}
Conflicts: otherproviders(libboost_headers-devel)
Conflicts: boost-devel < 1.63
%description -n libboost_headers%{lib_appendix}-devel
A collection of header-only libraries for Boost.
%endif # with boost_devel
%package -n %{package_name}-jam
Summary: A Boost Make Replacement
@ -241,17 +256,6 @@ Boost Jam is a build tool based on FTJam, which in turn is based on
Perforce Jam. It contains significant improvements made to facilitate
its use in the Boost Build System.
%package -n boost-license%{lib_appendix}
Summary: Boost License
Group: Development/Libraries/C and C++
Provides: boost-license = %{version}-%{release}
%if 0%{?suse_version} >= 1120
BuildArch: noarch
%endif
%description -n boost-license%{lib_appendix}
This package contains the license boost is provided under.
%package -n %{package_name}-doc-html
Summary: HTML documentation for the Boost C++ Libraries
Group: Development/Libraries/C and C++
@ -566,7 +570,9 @@ Summary: Development headers for Boost.MPI library
Group: Development/Libraries/C and C++
Requires: libboost_graph%{lib_appendix}-devel
PreReq: libboost_headers%{lib_appendix}-devel = %{version}
%if %{with python2}
Requires: libboost_python-py2_7-%{lib_appendix}-devel
%endif
%if %{with python3}
Requires: libboost_python-py3-%{lib_appendix}-devel
%endif
@ -601,6 +607,7 @@ Conflicts: boost-devel < 1.63
%description -n libboost_graph_parallel%{lib_appendix}-devel
Development headers for Boost.Graph parallel boost library.
%if %{with python2}
%package -n libboost_mpi_python-py2_7-%{lib_appendix}
Summary: Boost.MPI Python serialization library
Group: System/Libraries
@ -623,15 +630,19 @@ Conflicts: boost-devel < 1.63
This package contains the Boost.MPI development library for Python 2.7
serialization interface.
%package -n python-boost_parallel_mpi%{lib_appendix}
%package -n python2-boost_parallel_mpi%{lib_appendix}
Summary: Python 2.7 bindings for Boost.Parallel.MPI library
Group: Development/Languages/Python
Provides: python-boost_parallel_mpi = %{version}
Provides: python-boost_parallel_mpi%{lib_appendix} = %{version}
Conflicts: otherproviders(python-boost_parallel_mpi)
%description -n python-boost_parallel_mpi%{lib_appendix}
%description -n python2-boost_parallel_mpi%{lib_appendix}
This package contains the Boost.Parallel.MPI bindings for Python 2.7
%endif # python2
%if %{with python3}
%package -n libboost_mpi_python-py3-%{lib_appendix}
@ -712,6 +723,7 @@ Conflicts: boost-devel < 1.63
This package contains development headers for Boost.ProgramOptions
library.
%if %{with python2}
%package -n libboost_python-py2_7-%{lib_appendix}
Summary: Boost.Python runtime library
Group: System/Libraries
@ -756,7 +768,8 @@ Conflicts: boost-devel < 1.63
%description -n libboost_numpy-py2_7-%{lib_appendix}-devel
Development headers for Boost::Python::NumPy library for the default version of
python.
%endif
%endif # with numpy
%endif # with python2
%if %{with python3}
%package -n libboost_python-py3-%{lib_appendix}
@ -1092,12 +1105,32 @@ find -type f ! \( -name \*.sh -o -name \*.py -o -name \*.pl \) -exec chmod -x {}
%patch20 -p1
%patch21 -p1
#stupid build machinery copies .orig files
# find . -name \*.orig -exec rm {} +
%build
find . -type f -exec chmod u+w {} +
# General case
cat << EOF >user-config.jam
import os ;
local RPM_OPT_FLAGS = [ os.environ RPM_OPT_FLAGS ] ;
using gcc : : : <compileflags>\$(RPM_OPT_FLAGS) ;
project user-config ;
EOF
%if %build_base
cat << \EOF >.build
export LIBRARIES_FLAGS="--without-mpi --without-python"
%if ! %{with build_context}
# coroutine depends on context
LIBRARIES_FLAGS+=" --without-context --without-coroutine"
%endif
%if ! %{with boost_fiber}
LIBRARIES_FLAGS+=" --without-fiber"
%endif
EOF
%else # ! build_base
# Since boost build system is broken and incable of handling multiple python versions,
# we need to build boost piece by piece. First time to build all the non-python bits,
# then we build MPI and/or PYTHON modules for two python versions we need.
@ -1108,21 +1141,16 @@ export PY_LIBRARIES_FLAGS="--with-python"
PY_LIBRARIES_FLAGS+=" --with-mpi"
%endif
export LIBRARIES_FLAGS="--without-python"
# Dummy entry to make sure we don't build everything
export LIBRARIES_FLAGS="--with-system"
%if ! %{with build_context}
# coroutine depends on context
LIBRARIES_FLAGS+=" --without-context --without-coroutine"
# Dummy entry replaced with real libraries, if we build something
%if %{with build_mpi}
LIBRARIES_FLAGS=" --with-graph_parallel"
%endif
%if ! %{with boost_fiber}
LIBRARIES_FLAGS+=" --without-fiber"
%endif
EOF
# Read shared build instructions
. ./.build
%if %{with build_mpi}
# Set PATH, MANPATH and LD_LIBRARY_PATH for mpi
. %{_libdir}/mpi/gcc/%{mpi_implem}/bin/mpivars.sh
@ -1135,19 +1163,22 @@ EOF
# General case
cat << EOF >user-config.jam
import os ;
local RPM_OPT_FLAGS = [ os.environ RPM_OPT_FLAGS ] ;
using gcc : : : <compileflags>\$(RPM_OPT_FLAGS) ;
project user-config ;
alias boost_python_alias : : <library>/boost/python//boost_python ;
EOF
%endif # ! build_base
# Build boost base PYTHON and MPI, installed in python staging
# bootstrap b2
./bootstrap.sh \
--prefix=%{_prefix} --exec-prefix=%{_bindir} \
--libdir=%{_libdir} --includedir=%{_includedir} \
--with-toolset=gcc
# Read shared build instructions
. ./.build
%if ! %build_base
# Build boost base PYTHON and MPI, installed in python staging
cp user-config.jam user-config-py.jam
cat << EOF >> user-config-py.jam
using python
@ -1156,19 +1187,21 @@ using python
: %{_includedir}/python%{py_ver}
: %{_libdir}/python%{py_ver}
:
:
:
;
%if %{with build_mpi}
using mpi ;
%endif
EOF
%if %{with python2}
./b2 -d+2 -q --user-config=./user-config-py.jam \
--build-type=minimal --build-dir=./python-build \
--python-buildid=py2.7 \
--stagedir=./python-stage %{?_smp_mflags} \
$PY_LIBRARIES_FLAGS \
threading=multi link=shared runtime-link=shared stage
%endif # with python2
# Build boost python3 and MPI, installed in python3 staging
%if %{with python3}
@ -1218,22 +1251,31 @@ EOF
echo 'using mpi ;' >> ./user-config.jam
%endif
%endif # ! build_base
# This is run for both mini and non-mini build
./b2 -d+2 -q --user-config=./user-config.jam \
--build-type=minimal --build-dir=./build \
--stagedir=./stage %{?_smp_mflags} \
$LIBRARIES_FLAGS \
threading=multi link=shared runtime-link=shared stage
%if ! %build_base
# Verify that all symbols built in different stages are interchangeable.
# Can't be too careful!
cp %{SOURCE101} .
chmod +x symbol_diff.sh
%if %{with python3}
./symbol_diff.sh python3-stage/lib/libboost_mpi.so python-stage/lib/libboost_mpi.so
./symbol_diff.sh python3-stage/lib/libboost_serialization.so python-stage/lib/libboost_serialization.so
./symbol_diff.sh python3-stage/lib/libboost_mpi.so stage/lib/libboost_mpi.so
./symbol_diff.sh python3-stage/lib/libboost_serialization.so stage/lib/libboost_serialization.so
%endif
%if %{with python2}
./symbol_diff.sh python-stage/lib/libboost_serialization.so stage/lib/libboost_serialization.so
./symbol_diff.sh python-stage/lib/libboost_mpi.so stage/lib/libboost_mpi.so
%endif
#./symbol_diff.sh python-stage/lib/libboost_serialization.so stage/lib/libboost_serialization.so
#./symbol_diff.sh python-stage/lib/libboost_mpi.so stage/lib/libboost_mpi.so
# Build documentation
%if %{with build_quickbook}
@ -1247,11 +1289,15 @@ cd doc
./b2 --user-config=../user-config.jam --v2 man %{?_smp_mflags}
%endif
%endif # ! build_base
%install
# Read shared build instructions
. ./.build
%if ! %build_base
%if %{with build_mpi}
# Set PATH, MANPATH and LD_LIBRARY_PATH for mpi
. %{_libdir}/mpi/gcc/%{mpi_implem}/bin/mpivars.sh
@ -1268,6 +1314,7 @@ cd doc
threading=multi link=shared runtime-link=shared install
%endif
%if %{with python2}
./b2 -d+2 -q --user-config=./user-config-py.jam \
--build-type=minimal --build-dir=./python-build \
--python-buildid=py2.7 \
@ -1276,7 +1323,11 @@ cd doc
--stagedir=./python-stage %{?_smp_mflags} \
$PY_LIBRARIES_FLAGS \
threading=multi link=shared runtime-link=shared install
%endif
%endif # ! build_base
# Generic install
./b2 -d+2 -q \
--build-type=minimal --build-dir=./build --stagedir=./stage \
--prefix=%{buildroot}%{_prefix} --exec-prefix=%{buildroot}%{_bindir} \
@ -1285,36 +1336,29 @@ cd doc
$LIBRARIES_FLAGS \
threading=multi link=shared runtime-link=shared install
mkdir -p %{buildroot}%{_bindir}
install -m 755 bjam %{buildroot}%{_bindir}
ln -s bjam %{buildroot}%{_bindir}/jam
# Make sure nothing depends on non-id'ed python binaries!
rm %{buildroot}%{_libdir}/libboost_mpi_python.so
rm %{buildroot}%{_libdir}/libboost_mpi_python.so.%{version}
rm %{buildroot}%{_libdir}/libboost_python.so
rm %{buildroot}%{_libdir}/libboost_python.so.%{version}
# No python dependencies in the main tree
! $(ldd %{buildroot}%{_libdir}/*.so* | grep python\\.)
%if ! %build_base
%if %{with python2}
ln -s libboost_mpi_python-py2_7.so %{buildroot}%{_libdir}/libboost_mpi_python.so
ln -s libboost_python-py2_7.so %{buildroot}%{_libdir}/libboost_python.so
%endif
%if %{with python3}
#rm %{buildroot}%{_libdir}/libboost_python3-py3.so
#rm %{buildroot}%{_libdir}/libboost_python3-py3.so.%{version}
! $(ldd %{buildroot}%{_libdir}/*.so* | grep python3-\\.)
ln -s libboost_python-py3.so %{buildroot}%{_libdir}/libboost_python3.so
%endif
# Move Python libraries over to proper places
mkdir -p %{buildroot}%{py_sitedir}/boost/parallel/mpi/
mv %{buildroot}/%{_libdir}/mpi.so %{buildroot}%{py_sitedir}/boost/parallel/mpi/
install -m 0644 libs/mpi/build/__init__.py %{buildroot}%{py_sitedir}/boost/parallel/mpi/
install -m 0644 %{SOURCE11} %{buildroot}%{py_sitedir}/boost/parallel
install -m 0644 %{SOURCE11} %{buildroot}%{py_sitedir}/boost
%if %{with python2}
mkdir -p %{buildroot}%{python2_sitearch}/boost/parallel/mpi/
mv %{buildroot}/%{_libdir}/mpi.so %{buildroot}%{python2_sitearch}/boost/parallel/mpi/
install -m 0644 libs/mpi/build/__init__.py %{buildroot}%{python2_sitearch}/boost/parallel/mpi/
install -m 0644 %{SOURCE11} %{buildroot}%{python2_sitearch}/boost/parallel
install -m 0644 %{SOURCE11} %{buildroot}%{python2_sitearch}/boost
%endif
%if %{with python3}
mkdir -p %{buildroot}%{python3_sitearch}/boost/parallel/mpi/
@ -1324,6 +1368,32 @@ install -m 0644 %{SOURCE11} %{buildroot}%{python3_sitearch}/boost/parallel
install -m 0644 %{SOURCE11} %{buildroot}%{python3_sitearch}/boost
%endif
#install doc files
mkdir -p %{buildroot}%{my_docdir}
%if %{with boost_devel}
install -m 0644 %{SOURCE102} %{buildroot}%{my_docdir}
%endif
find libs/ -name \*.htm\* -o -name \*.css -o -name \*.js | xargs dos2unix
find . -name \*.htm\* -o -name \*.gif -o -name \*.css -o -name \*.jpg -o -name \*.png -o -name \*.ico | \
tar --files-from=%{SOURCE4} -cf - --files-from=- | tar -C %{buildroot}%{my_docdir} -xf -
rm -rf %{buildroot}%{my_docdir}/boost
#ln -s %%{_includedir}/boost %%{buildroot}%%{my_docdir}
#ln -s ../LICENSE_1_0.txt %%{buildroot}%%{my_docdir}/libs
find %{buildroot}%{my_docdir} -name \*.py -exec chmod -x {} +
chmod -x ../boost_%{short_version}_pdf/*.pdf
%if %{with build_quickbook}
mkdir -p %{buildroot}%{_bindir}
install -m 0755 dist/bin/quickbook %{buildroot}%{_bindir}/quickbook
%endif
%endif # ! build_base
%if %build_base
mkdir -p %{buildroot}%{_bindir}
install -m 755 bjam %{buildroot}%{_bindir}
ln -s bjam %{buildroot}%{_bindir}/jam
# Remove exception library, but only if the symbols are not
# actually used. For now, the only symbol that is linked is
# should never be used as it's only available on Windows. So,
@ -1335,25 +1405,6 @@ objdump -Ctj .text -Ctj .text %{buildroot}%{_libdir}/libboost_exception.so | \
rm %{buildroot}%{_libdir}/libboost_exception.so
rm %{buildroot}%{_libdir}/libboost_exception.so.%{version}
#install doc files
mkdir -p %{buildroot}%{my_docdir}
install -m 0644 %{SOURCE102} %{buildroot}%{my_docdir}
find libs/ -name \*.htm\* -o -name \*.css -o -name \*.js | xargs dos2unix
find . -name \*.htm\* -o -name \*.gif -o -name \*.css -o -name \*.jpg -o -name \*.png -o -name \*.ico | \
tar --files-from=%{SOURCE4} -cf - --files-from=- | tar -C %{buildroot}%{my_docdir} -xf -
rm -rf %{buildroot}%{my_docdir}/boost
ln -s %{_includedir}/boost %{buildroot}%{my_docdir}
ln -s ../LICENSE_1_0.txt %{buildroot}%{my_docdir}/libs
find %{buildroot}%{my_docdir} -name \*.py -exec chmod -x {} +
chmod -x ../boost_%{short_version}_pdf/*.pdf
#symlink dupes
%fdupes %{buildroot}
%if %{with build_quickbook}
mkdir -p %{buildroot}%{_bindir}
install -m 0755 dist/bin/quickbook %{buildroot}%{_bindir}/quickbook
%endif
# Remove cruft
# FIXME: these shouldn't be built in the first place
rm %{buildroot}%{_libdir}/libboost_chrono.a
@ -1361,21 +1412,18 @@ rm %{buildroot}%{_libdir}/libboost_system.a
rm %{buildroot}%{_libdir}/libboost_timer.a
rm %{buildroot}%{_libdir}/libboost_unit_test_framework.a
%if ! %{with boost_fiber}
rm -r %{buildroot}%{_includedir}/boost/fiber
%endif
%if ! %{with build_mpi}
rm -r %{buildroot}%{_includedir}/boost/mpi
rm %{buildroot}%{_includedir}/boost/mpi.hpp
%endif
%if ! %{with build_context}
rm -r %{buildroot}%{_includedir}/boost/coroutine
rm -r %{buildroot}%{_includedir}/boost/coroutine2
rm -r %{buildroot}%{_includedir}/boost/context
%fdupes %{buildroot}%{_includedir}/boost
mkdir -p %{buildroot}%{my_docdir}
cp LICENSE_1_0.txt %{buildroot}%{my_docdir}
%else # ! build_base
rm -r %{buildroot}%{_includedir}/boost
rm -f %{buildroot}%{_libdir}/libboost_serialization*
rm -f %{buildroot}%{_libdir}/libboost_system*
rmdir --ignore-fail-on-non-empty %{buildroot}%{_libdir}
%fdupes %{buildroot}%{my_docdir}
%endif
%if %build_base
%post -n libboost_atomic%{lib_appendix} -p /sbin/ldconfig
%post -n libboost_container%{lib_appendix} -p /sbin/ldconfig
%post -n libboost_context%{lib_appendix} -p /sbin/ldconfig
@ -1387,18 +1435,6 @@ rm -r %{buildroot}%{_includedir}/boost/context
%post -n libboost_log%{lib_appendix} -p /sbin/ldconfig
%post -n libboost_test%{lib_appendix} -p /sbin/ldconfig
%post -n libboost_program_options%{lib_appendix} -p /sbin/ldconfig
%post -n libboost_python-py2_7-%{lib_appendix} -p /sbin/ldconfig
%if %{with python_numpy}
%post -n libboost_numpy-py2_7-%{lib_appendix} -p /sbin/ldconfig
%endif
%if %{with python3}
%post -n libboost_python-py3-%{lib_appendix} -p /sbin/ldconfig
%if %{with python_numpy}
%post -n libboost_numpy-py3-%{lib_appendix} -p /sbin/ldconfig
%endif
%endif
%post -n libboost_regex%{lib_appendix} -p /sbin/ldconfig
%post -n libboost_serialization%{lib_appendix} -p /sbin/ldconfig
@ -1407,15 +1443,6 @@ rm -r %{buildroot}%{_includedir}/boost/context
%post -n libboost_type_erasure%{lib_appendix} -p /sbin/ldconfig
%post -n libboost_math%{lib_appendix} -p /sbin/ldconfig
%if %{with build_mpi}
%post -n libboost_mpi%{lib_appendix} -p /sbin/ldconfig
%post -n libboost_graph_parallel%{lib_appendix} -p /sbin/ldconfig
%post -n libboost_mpi_python-py2_7-%{lib_appendix} -p /sbin/ldconfig
%if %{with python3}
%post -n libboost_mpi_python-py3-%{lib_appendix} -p /sbin/ldconfig
%endif
%endif
%post -n libboost_graph%{lib_appendix} -p /sbin/ldconfig
%post -n libboost_stacktrace%{lib_appendix} -p /sbin/ldconfig
%post -n libboost_system%{lib_appendix} -p /sbin/ldconfig
@ -1425,6 +1452,36 @@ rm -r %{buildroot}%{_includedir}/boost/context
%post -n libboost_locale%{lib_appendix} -p /sbin/ldconfig
%post -n libboost_timer%{lib_appendix} -p /sbin/ldconfig
%else # ! build_base
%if %{with python2}
%post -n libboost_python-py2_7-%{lib_appendix} -p /sbin/ldconfig
%if %{with python_numpy}
%post -n libboost_numpy-py2_7-%{lib_appendix} -p /sbin/ldconfig
%endif
%endif
%if %{with python3}
%post -n libboost_python-py3-%{lib_appendix} -p /sbin/ldconfig
%if %{with python_numpy}
%post -n libboost_numpy-py3-%{lib_appendix} -p /sbin/ldconfig
%endif
%endif
%if %{with build_mpi}
%post -n libboost_mpi%{lib_appendix} -p /sbin/ldconfig
%post -n libboost_graph_parallel%{lib_appendix} -p /sbin/ldconfig
%if %{with python2}
%post -n libboost_mpi_python-py2_7-%{lib_appendix} -p /sbin/ldconfig
%endif
%if %{with python3}
%post -n libboost_mpi_python-py3-%{lib_appendix} -p /sbin/ldconfig
%endif
%endif
%endif # ! build_base
%if %build_base
%postun -n libboost_atomic%{lib_appendix} -p /sbin/ldconfig
%postun -n libboost_container%{lib_appendix} -p /sbin/ldconfig
%postun -n libboost_context%{lib_appendix} -p /sbin/ldconfig
@ -1436,19 +1493,6 @@ rm -r %{buildroot}%{_includedir}/boost/context
%postun -n libboost_log%{lib_appendix} -p /sbin/ldconfig
%postun -n libboost_test%{lib_appendix} -p /sbin/ldconfig
%postun -n libboost_program_options%{lib_appendix} -p /sbin/ldconfig
%postun -n libboost_python-py2_7-%{lib_appendix} -p /sbin/ldconfig
%if %{with python_numpy}
%postun -n libboost_numpy-py2_7-%{lib_appendix} -p /sbin/ldconfig
%endif
%if %{with python3}
%postun -n libboost_python-py3-%{lib_appendix} -p /sbin/ldconfig
%if %{with python_numpy}
%postun -n libboost_numpy-py3-%{lib_appendix} -p /sbin/ldconfig
%endif
%endif
%postun -n libboost_regex%{lib_appendix} -p /sbin/ldconfig
%postun -n libboost_serialization%{lib_appendix} -p /sbin/ldconfig
%postun -n libboost_signals%{lib_appendix} -p /sbin/ldconfig
@ -1456,15 +1500,6 @@ rm -r %{buildroot}%{_includedir}/boost/context
%postun -n libboost_type_erasure%{lib_appendix} -p /sbin/ldconfig
%postun -n libboost_math%{lib_appendix} -p /sbin/ldconfig
%if %{with build_mpi}
%postun -n libboost_mpi%{lib_appendix} -p /sbin/ldconfig
%postun -n libboost_graph_parallel%{lib_appendix} -p /sbin/ldconfig
%postun -n libboost_mpi_python-py2_7-%{lib_appendix} -p /sbin/ldconfig
%if %{with python3}
%postun -n libboost_mpi_python-py3-%{lib_appendix} -p /sbin/ldconfig
%endif
%endif
%postun -n libboost_graph%{lib_appendix} -p /sbin/ldconfig
%postun -n libboost_stacktrace%{lib_appendix} -p /sbin/ldconfig
%postun -n libboost_system%{lib_appendix} -p /sbin/ldconfig
@ -1474,16 +1509,41 @@ rm -r %{buildroot}%{_includedir}/boost/context
%postun -n libboost_locale%{lib_appendix} -p /sbin/ldconfig
%postun -n libboost_timer%{lib_appendix} -p /sbin/ldconfig
%else # ! build_base
%if %{with python2}
%postun -n libboost_python-py2_7-%{lib_appendix} -p /sbin/ldconfig
%if %{with python_numpy}
%postun -n libboost_numpy-py2_7-%{lib_appendix} -p /sbin/ldconfig
%endif
%endif
%if %{with python3}
%postun -n libboost_python-py3-%{lib_appendix} -p /sbin/ldconfig
%if %{with python_numpy}
%postun -n libboost_numpy-py3-%{lib_appendix} -p /sbin/ldconfig
%endif
%endif
%if %{with build_mpi}
%postun -n libboost_mpi%{lib_appendix} -p /sbin/ldconfig
%postun -n libboost_graph_parallel%{lib_appendix} -p /sbin/ldconfig
%if %{with python2}
%postun -n libboost_mpi_python-py2_7-%{lib_appendix} -p /sbin/ldconfig
%endif
%if %{with python3}
%postun -n libboost_mpi_python-py3-%{lib_appendix} -p /sbin/ldconfig
%endif
%endif
%endif # build_base
%if %{build_base}
%files -n %{package_name}-jam
%defattr(-, root, root, -)
%{_bindir}/bjam
%{_bindir}/jam
%files -n boost-license%{lib_appendix}
%defattr(-, root, root, -)
%dir %{my_docdir}
%doc %{my_docdir}/LICENSE_1_0.txt
%files -n libboost_atomic%{lib_appendix}
%defattr(-, root, root, -)
%{_libdir}/libboost_atomic.so.%{version}
@ -1592,6 +1652,29 @@ rm -r %{buildroot}%{_includedir}/boost/context
%{_libdir}/libboost_math_tr1l.so
%{_libdir}/libboost_math_tr1.so
%files -n libboost_test%{lib_appendix}
%defattr(-, root, root, -)
%{_libdir}/libboost_prg_exec_monitor.so.%{version}
%{_libdir}/libboost_test_exec_monitor.so.%{version}
%{_libdir}/libboost_unit_test_framework.so.%{version}
%files -n libboost_test%{lib_appendix}-devel
%defattr(-, root, root, -)
%{_libdir}/libboost_prg_exec_monitor.so
%{_libdir}/libboost_test_exec_monitor.so
%{_libdir}/libboost_unit_test_framework.so
%files -n libboost_program_options%{lib_appendix}
%defattr(-, root, root, -)
%{_libdir}/libboost_program_options.so.%{version}
%files -n libboost_program_options%{lib_appendix}-devel
%defattr(-, root, root, -)
%{_libdir}/libboost_program_options.so
%endif # build_base
%if ! %build_base
%if %{with build_mpi}
%files -n libboost_mpi%{lib_appendix}
%defattr(-, root, root, -)
@ -1609,6 +1692,7 @@ rm -r %{buildroot}%{_includedir}/boost/context
%defattr(-,root,root)
%{_libdir}/libboost_graph_parallel.so
%if %{with python2}
%files -n libboost_mpi_python-py2_7-%{lib_appendix}
%defattr(-,root,root)
%{_libdir}/libboost_mpi_python-py2_7.so.%{version}
@ -1618,15 +1702,16 @@ rm -r %{buildroot}%{_includedir}/boost/context
%{_libdir}/libboost_mpi_python-py2_7.so
%{_libdir}/libboost_mpi_python.so
%files -n python-boost_parallel_mpi%{lib_appendix}
%files -n python2-boost_parallel_mpi%{lib_appendix}
%defattr(-, root, root, -)
%dir %{py_sitedir}/boost
%dir %{py_sitedir}/boost/parallel
%dir %{py_sitedir}/boost/parallel/mpi
%{py_sitedir}/boost/__init__.py
%{py_sitedir}/boost/parallel/__init__.py
%{py_sitedir}/boost/parallel/mpi/__init__.py
%{py_sitedir}/boost/parallel/mpi/mpi.so
%dir %{python2_sitearch}/boost
%dir %{python2_sitearch}/boost/parallel
%dir %{python2_sitearch}/boost/parallel/mpi
%{python2_sitearch}/boost/__init__.py
%{python2_sitearch}/boost/parallel/__init__.py
%{python2_sitearch}/boost/parallel/mpi/__init__.py
%{python2_sitearch}/boost/parallel/mpi/mpi.so
%endif # with python2
%if %{with python3}
%files -n libboost_mpi_python-py3-%{lib_appendix}
@ -1650,26 +1735,7 @@ rm -r %{buildroot}%{_includedir}/boost/context
%endif # with python3
%endif # with build_mpi
%files -n libboost_test%{lib_appendix}
%defattr(-, root, root, -)
%{_libdir}/libboost_prg_exec_monitor.so.%{version}
%{_libdir}/libboost_test_exec_monitor.so.%{version}
%{_libdir}/libboost_unit_test_framework.so.%{version}
%files -n libboost_test%{lib_appendix}-devel
%defattr(-, root, root, -)
%{_libdir}/libboost_prg_exec_monitor.so
%{_libdir}/libboost_test_exec_monitor.so
%{_libdir}/libboost_unit_test_framework.so
%files -n libboost_program_options%{lib_appendix}
%defattr(-, root, root, -)
%{_libdir}/libboost_program_options.so.%{version}
%files -n libboost_program_options%{lib_appendix}-devel
%defattr(-, root, root, -)
%{_libdir}/libboost_program_options.so
%if %{with python2}
%files -n libboost_python-py2_7-%{lib_appendix}
%defattr(-, root, root, -)
%{_libdir}/libboost_python-py2_7.so.%{version}
@ -1687,7 +1753,9 @@ rm -r %{buildroot}%{_includedir}/boost/context
%files -n libboost_numpy-py2_7-%{lib_appendix}-devel
%defattr(-, root, root, -)
%{_libdir}/libboost_numpy-py2_7.so
%endif
%endif # with numpy
%endif # with python2
%if %{with python3}
%files -n libboost_python-py3-%{lib_appendix}
@ -1710,7 +1778,9 @@ rm -r %{buildroot}%{_includedir}/boost/context
%endif # with numpy
%endif # with python3
%endif # ! build_base
%if %build_base
%files -n libboost_serialization%{lib_appendix}
%defattr(-, root, root, -)
%{_libdir}/libboost_serialization.so.%{version}
@ -1812,21 +1882,24 @@ rm -r %{buildroot}%{_includedir}/boost/context
%files -n libboost_type_erasure%{lib_appendix}-devel
%defattr(-, root, root, -)
%{_libdir}/libboost_type_erasure.so
%endif # if build_base
%files -n libboost_headers%{lib_appendix}-devel
%defattr(-, root, root, -)
%dir %{_includedir}/boost
%{_includedir}/boost/*
%if ! %build_base
%if %{with boost_devel}
%files -n %{package_name}-devel
%defattr(-, root, root, -)
%dir %{my_docdir}
%{my_docdir}/README.boost-devel
%endif
%files -n %{package_name}-doc-html
%defattr(-, root, root, -)
%dir %{my_docdir}
%doc %{my_docdir}/*
%exclude %{my_docdir}/LICENSE_1_0.txt
# %%exclude %%{my_docdir}/LICENSE_1_0.txt
%if %{with boost_devel}
%exclude %{my_docdir}/README.boost-devel
%endif
%if %{with build_docs}
%files doc-man
@ -1834,20 +1907,31 @@ rm -r %{buildroot}%{_includedir}/boost/context
%doc %{_mandir}/man3/*.3.gz
%doc %{_mandir}/man7/*.7.gz
%doc %{_mandir}/man9/*.9.gz
%endif
%if %{with package_pdf}
%files -n %{package_name}-doc-pdf
%defattr(-, root, root, -)
%doc ../boost_%{short_version}_pdf/*.pdf
%endif
%if %{with build_quickbook}
%files -n %{package_name}-quickbook
%defattr(-, root, root, -)
%{_bindir}/quickbook
%endif
%endif # ! build_base
%if %build_base
%files -n libboost_headers%{lib_appendix}-devel
%defattr(-, root, root, -)
%dir %{_includedir}/boost
%{_includedir}/boost/*
%files -n boost-license%{lib_appendix}
%defattr(-, root, root, -)
%dir %{my_docdir}
%doc %{my_docdir}/LICENSE_1_0.txt
%endif

View File

@ -458,7 +458,6 @@ libs/utility/shared_iterator_example1.cpp
libs/utility/shared_iterator_example2.cpp
libs/utility/shared_iterator_example3.cpp
libs/wave/ChangeLog
LICENSE_1_0.txt
more/blanket-permission.txt
tools/build/v2/hacking.txt
tools/inspect/build/Jamfile.v2