From f69846b9a02b7b86fcbe51d5c8baa4ab250cf707a56dca6911411712c4414dd9 Mon Sep 17 00:00:00 2001 From: Adam Majer Date: Tue, 29 Jan 2019 10:56:06 +0000 Subject: [PATCH] Accepting request 669499 from home:mslacken:boost_up - added hpc modularized versions, which have a different naming scheme so that they do not collide with existing libraries * hpc builds miss the documentation * three new _mulitbuild flavors which are * gnu-hpc -> all libraries except the parallel ones * gnu-openmpi2-hpc -> parallel versions with openmpi2 * gnu-mvapich2-hpc -> parallel versions with mvapich2 OBS-URL: https://build.opensuse.org/request/show/669499 OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/boost?expand=0&rev=226 --- _multibuild | 3 + boost.changes | 12 ++ boost.spec | 536 +++++++++++++++++++++++++++++++++++--------------- 3 files changed, 395 insertions(+), 156 deletions(-) diff --git a/_multibuild b/_multibuild index 4cc652f..adbf813 100644 --- a/_multibuild +++ b/_multibuild @@ -1,4 +1,7 @@ base extra + gnu-hpc + gnu-openmpi2-hpc + gnu-mvapich2-hpc diff --git a/boost.changes b/boost.changes index 9202993..f7b33d0 100644 --- a/boost.changes +++ b/boost.changes @@ -1,3 +1,15 @@ +------------------------------------------------------------------- +Wed Jan 23 20:23:54 UTC 2019 - cgoll@suse.com + +- added hpc modularized versions, which have a different naming + scheme so that they do not collide with existing libraries + * hpc builds miss the documentation + * three new _mulitbuild flavors which are + * gnu-hpc -> all libraries except the parallel ones + * gnu-openmpi2-hpc -> parallel versions with openmpi2 + * gnu-mvapich2-hpc -> parallel versions with mvapich2 + + ------------------------------------------------------------------- Mon Jan 14 14:57:14 UTC 2019 - adam.majer@suse.de diff --git a/boost.spec b/boost.spec index 3ea5a96..474388c 100644 --- a/boost.spec +++ b/boost.spec @@ -16,12 +16,18 @@ # +%define ver 1.69.0 +%define _ver 1_69_0 +%define package_version 1_69 +%define file_version %_ver +%define lib_appendix %_ver +%define docs_version 1.56.0 +%define short_version 1_56 +%define pname boost %bcond_with build_docs %bcond_without package_pdf %bcond_without build_quickbook %bcond_with boost_devel -%bcond_without python3 -%bcond_without python2 %define package_name boost%{library_version} %define my_docdir %{_docdir}/boost%{library_version} @@ -30,13 +36,19 @@ %define python2_sitearch %{python_sitearch} %endif -%if "@BUILD_FLAVOR@" == "" -ExclusiveArch: nothing_here +%if "@BUILD_FLAVOR@" == "%nil" +%define build_base 0 +%define name_suffix %{nil} +%bcond_with hpc +%bcond_without python3 +%bcond_without python2 +ExclusiveArch: do_not_build %endif %if "@BUILD_FLAVOR@" == "base" %define build_base 1 %define name_suffix -base +%bcond_with hpc %endif %if "@BUILD_FLAVOR@" == "extra" @@ -44,6 +56,44 @@ ExclusiveArch: nothing_here %define name_suffix -extra %endif +%if "@BUILD_FLAVOR@" == "gnu-hpc" +%define build_base 1 +%define name_suffix hpc +%define compiler_family gnu +%undefine c_f_ver +%bcond_with mpi +%bcond_without hpc +#ExcludeArch: %%arm s390x i586 +ExcludeArch: s390x %{ix86} ppc64 ppc64le +%endif + +%if "@BUILD_FLAVOR@" == "gnu-openmpi2-hpc" +%define build_base 0 +%define name_suffix openmpi2_hpc +%define mpi_vers 2 +%define compiler_family gnu +%define mpi_flavor openmpi +%undefine c_f_ver +%bcond_without hpc +%bcond_without mpi +%bcond_without python2 +%bcond_without python3 +ExcludeArch: s390x %{ix86} ppc64 ppc64le +%endif + +%if "@BUILD_FLAVOR@" == "gnu-mvapich2-hpc" +%define build_base 0 +%define name_suffix mvapich2_hpc +%define compiler_family gnu +%define mpi_flavor mvapich2 +%undefine c_f_ver +%bcond_without hpc +%bcond_without mpi +%bcond_without python2 +%bcond_without python3 +ExcludeArch: s390x %{ix86} ppc64 ppc64le +%endif + # Build with OpenMPI %if 0%{?suse_version} >= 1330 # OpenMPI >= 2 is not available on ppc64be @@ -74,6 +124,26 @@ ExclusiveArch: nothing_here %else %bcond_with build_context %endif +%if %{with hpc} +# needed by the hpc tools +%{hpc_init -c %compiler_family %{?with_mpi:-m %mpi_flavor} %{?c_f_ver:-v %{c_f_ver}} %{?mpi_vers:-V %{mpi_vers}} %{?ext:-e %{ext}}} +%define package_prefix %{hpc_prefix} +%define package_libdir %{hpc_libdir} +%define package_bindir %{hpc_bindir} +%define package_includedir %{hpc_includedir} +%define base_name %{hpc_package_name %_ver} +%define package_name %{hpc_package_name %_ver} +%define package_python2_sitearch %hpc_python_sitearch +%define package_python3_sitearch %{hpc_libdir}/python3.6/site-packages +%else +%define package_prefix %{_prefix} +%define package_bindir %{_bindir} +%define package_libdir %{_libdir} +%define package_includedir %{_includedir} +%define base_name boost%{name_suffix} +%define package_python2_sitearch %python2_sitearch +%define package_python3_sitearch %python3_sitearch +%endif # needs newer *default* GCC to compile runtime %if %{with build_context} && 0%{?suse_version} > 1320 @@ -82,7 +152,7 @@ ExclusiveArch: nothing_here %bcond_with boost_fiber %endif -Name: boost%{name_suffix} +Name: %{base_name} Version: 1.69.0 Release: 0 %define library_version 1_69_0 @@ -155,6 +225,17 @@ BuildRequires: libxslt-tools BuildRequires: texlive-latex %endif %endif # ! build_base +%if %{with hpc} +BuildRequires: %{compiler_family}%{?c_f_ver}-compilers-hpc-macros-devel +BuildRequires: lua-lmod +BuildRequires: python +BuildRequires: suse-hpc +%hpc_requires +%if %{with mpi} +BuildRequires: %{mpi_flavor}%{?mpi_vers}-%{compiler_family}%{?c_f_ver}-hpc-macros-devel +Requires: %{mpi_flavor}%{?mpi_vers}-%{compiler_family}%{?c_f_ver}-hpc +%endif +%endif %description Boost provides free peer-reviewed portable C++ source libraries. The @@ -196,6 +277,9 @@ This package contains the license boost is provided under. %package -n %{package_name}-devel Summary: Development package for Boost C++ Group: Development/Libraries/C and C++ +%if %{with hpc} +Requires: %{package_name} +%else Requires: libboost_atomic%{library_version}-devel Requires: libboost_chrono%{library_version}-devel Requires: libboost_container%{library_version}-devel @@ -236,17 +320,51 @@ Requires: libboost_python-py2_7-%{library_version}-devel %if %{with python3} Requires: libboost_python-py3-%{library_version}-devel %endif - +%endif #hpc %description -n %{package_name}-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). +%if %{with hpc} +%if ! %{with mpi} +%package -n %{package_name}-jam +Summary: A Boost Make Replacement +Group: Development/Tools/Building +Provides: hpc-boost-jam-impl = %{version} + +%description -n %{package_name}-jam +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. This version is modularized so it +does not conflict with other versions, but the module must be used +before usage. +%endif # ! mpi +%package -n %{package_name}-python3 +Summary: Boost.MPI Python 3.x serialization library +Group: System/Libraries +Requires: %{package_name} + +%description -n %{package_name}-python3 +This package contains the Boost.MPI Python 3.x serialization +inteface. +%package -n %{package_name}-python2 +Summary: Boost.MPI Python 2.x serialization library +Group: System/Libraries +Requires: %{package_name} + +%description -n %{package_name}-python2 +This package contains the Boost.MPI Python 2.x serialization +inteface. + + +%endif # hpc + %package -n boost%{library_version}-jam Summary: A Boost Make Replacement Group: Development/Tools/Building Conflicts: boost-jam-impl -Provides: boost-jam-impl +Provides: boost-jam-impl = %{version} %description -n boost%{library_version}-jam Boost Jam is a build tool based on FTJam, which in turn is based on @@ -1052,6 +1170,17 @@ QuickBook is a WikiWiki style documentation tool geared towards C++ documentation using simple rules and markup for simple formatting tasks. +%if %{with hpc} +%{hpc_master_package} +%{hpc_master_package devel} +%if %{with python2} +%{hpc_master_package python2} +%endif +%if %{with python3} +%{hpc_master_package python3} +%endif +%endif + %prep %setup -q -n boost_%{library_version} -b 3 #everything in the tarball has the executable flag set ... @@ -1121,7 +1250,11 @@ EOF %if %{with build_mpi} # Set PATH, MANPATH and LD_LIBRARY_PATH for mpi -. %{_libdir}/mpi/gcc/%{mpi_implem}/bin/mpivars.sh +%if %{with hpc} +module load gnu %mpi_flavor +%else +. %{package_libdir}/mpi/gcc/%{mpi_implem}/bin/mpivars.sh +%endif %endif # Need specific Boost Jam config files. @@ -1137,8 +1270,8 @@ EOF # bootstrap b2 ./bootstrap.sh \ - --prefix=%{_prefix} --exec-prefix=%{_bindir} \ - --libdir=%{_libdir} --includedir=%{_includedir} \ + --prefix=%{package_prefix} --exec-prefix=%{package_bindir} \ + --libdir=%{package_libdir} --includedir=%{package_includedir} \ --with-toolset=gcc # Read shared build instructions @@ -1246,6 +1379,7 @@ chmod +x symbol_diff.sh #./symbol_diff.sh python-stage/lib/libboost_mpi.so stage/lib/libboost_mpi.so # Build documentation +%if ! %{with hpc} %if %{with build_quickbook} pushd tools/quickbook ../../b2 --user-config=../../user-config.jam --v2 dist-bin %{?_smp_mflags} @@ -1256,6 +1390,7 @@ popd cd doc ./b2 --user-config=../user-config.jam --v2 man %{?_smp_mflags} %endif +%endif # ! hpc %endif # ! build_base @@ -1268,15 +1403,19 @@ cd doc %if %{with build_mpi} # Set PATH, MANPATH and LD_LIBRARY_PATH for mpi -. %{_libdir}/mpi/gcc/%{mpi_implem}/bin/mpivars.sh +%if %{with hpc} +module load gnu %mpi_flavor +%else +. %{package_libdir}/mpi/gcc/%{mpi_implem}/bin/mpivars.sh +%endif %endif %if %{with python3} ./b2 -d+2 -q --user-config=./user-config-py3.jam \ --build-type=minimal --build-dir=./python3-build \ --python-buildid=py3 \ - --prefix=%{buildroot}%{_prefix} --exec-prefix=%{buildroot}%{_bindir} \ - --libdir=%{buildroot}%{_libdir} --includedir=%{buildroot}%{_includedir} \ + --prefix=%{buildroot}%{package_prefix} --exec-prefix=%{buildroot}%{package_bindir} \ + --libdir=%{buildroot}%{package_libdir} --includedir=%{buildroot}%{package_includedir} \ --stagedir=./python3-stage %{?_smp_mflags} \ $PY_LIBRARIES_FLAGS \ threading=multi link=shared runtime-link=shared install @@ -1286,8 +1425,8 @@ cd doc ./b2 -d+2 -q --user-config=./user-config-py.jam \ --build-type=minimal --build-dir=./python-build \ --python-buildid=py2.7 \ - --prefix=%{buildroot}%{_prefix} --exec-prefix=%{buildroot}%{_bindir} \ - --libdir=%{buildroot}%{_libdir} --includedir=%{buildroot}%{_includedir} \ + --prefix=%{buildroot}%{package_prefix} --exec-prefix=%{buildroot}%{package_bindir} \ + --libdir=%{buildroot}%{package_libdir} --includedir=%{buildroot}%{package_includedir} \ --stagedir=./python-stage %{?_smp_mflags} \ $PY_LIBRARIES_FLAGS \ threading=multi link=shared runtime-link=shared install @@ -1298,44 +1437,45 @@ cd doc # Generic install ./b2 -d+2 -q \ --build-type=minimal --build-dir=./build --stagedir=./stage \ - --prefix=%{buildroot}%{_prefix} --exec-prefix=%{buildroot}%{_bindir} \ - --libdir=%{buildroot}%{_libdir} --includedir=%{buildroot}%{_includedir} \ + --prefix=%{buildroot}%{package_prefix} --exec-prefix=%{buildroot}%{package_bindir} \ + --libdir=%{buildroot}%{package_libdir} --includedir=%{buildroot}%{package_includedir} \ --user-config=./user-config.jam \ $LIBRARIES_FLAGS \ threading=multi link=shared runtime-link=shared install # No python dependencies in the main tree -! $(ldd %{buildroot}%{_libdir}/*.so* | grep python\\.) +! $(ldd %{buildroot}%{package_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 +ln -s libboost_mpi_python-py2_7.so %{buildroot}%{package_libdir}/libboost_mpi_python.so +ln -s libboost_python-py2_7.so %{buildroot}%{package_libdir}/libboost_python.so %endif %if %{with python3} -! $(ldd %{buildroot}%{_libdir}/*.so* | grep python3-\\.) -ln -s libboost_python-py3.so %{buildroot}%{_libdir}/libboost_python3.so +! $(ldd %{buildroot}%{package_libdir}/*.so* | grep python3-\\.) +ln -s libboost_python-py3.so %{buildroot}%{package_libdir}/libboost_python3.so %endif # Move Python libraries over to proper places %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 +mkdir -p %{buildroot}%{package_python2_sitearch}/boost/parallel/mpi/ +mv %{buildroot}/%{package_libdir}/mpi.so %{buildroot}%{package_python2_sitearch}/boost/parallel/mpi/ +install -m 0644 libs/mpi/build/__init__.py %{buildroot}%{package_python2_sitearch}/boost/parallel/mpi/ +install -m 0644 %{SOURCE11} %{buildroot}%{package_python2_sitearch}/boost/parallel +install -m 0644 %{SOURCE11} %{buildroot}%{package_python2_sitearch}/boost %endif %if %{with python3} -mkdir -p %{buildroot}%{python3_sitearch}/boost/parallel/mpi/ -mv %{buildroot}/%{_libdir}/mpi.*so %{buildroot}%{python3_sitearch}/boost/parallel/mpi/mpi.%{py3_soflags}.so -install -m 0644 libs/mpi/build/__init__.py %{buildroot}%{python3_sitearch}/boost/parallel/mpi/ -install -m 0644 %{SOURCE11} %{buildroot}%{python3_sitearch}/boost/parallel -install -m 0644 %{SOURCE11} %{buildroot}%{python3_sitearch}/boost +mkdir -p %{buildroot}%{package_python3_sitearch}/boost/parallel/mpi/ +mv %{buildroot}/%{package_libdir}/mpi.*so %{buildroot}%{package_python3_sitearch}/boost/parallel/mpi/mpi.%{py3_soflags}.so +install -m 0644 libs/mpi/build/__init__.py %{buildroot}%{package_python3_sitearch}/boost/parallel/mpi/ +install -m 0644 %{SOURCE11} %{buildroot}%{package_python3_sitearch}/boost/parallel +install -m 0644 %{SOURCE11} %{buildroot}%{package_python3_sitearch}/boost %endif +%if ! %{with hpc} #install doc files mkdir -p %{buildroot}%{my_docdir} %if %{with boost_devel} @@ -1345,46 +1485,88 @@ 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 %%{package_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_1_56_pdf/*.pdf %if %{with build_quickbook} -mkdir -p %{buildroot}%{_bindir} -install -m 0755 dist/bin/quickbook %{buildroot}%{_bindir}/quickbook +mkdir -p %{buildroot}%{package_bindir} +install -m 0755 dist/bin/quickbook %{buildroot}%{package_bindir}/quickbook %endif - +%endif # ! hpc %endif # ! build_base %if %{build_base} -mkdir -p %{buildroot}%{_bindir} -install -m 755 bjam %{buildroot}%{_bindir} -ln -s bjam %{buildroot}%{_bindir}/jam +mkdir -p %{buildroot}%{package_bindir} +install -m 755 bjam %{buildroot}%{package_bindir} +ln -s bjam %{buildroot}%{package_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, # verify that here. -objdump -Ctj .text -Ctj .text %{buildroot}%{_libdir}/libboost_exception.so | \ +objdump -Ctj .text -Ctj .text %{buildroot}%{package_libdir}/libboost_exception.so | \ grep '^[0-9a-f]\+[[:space:]]\+g[[:space:]]\+F' | \ sed -e 's#[0-9a-f]\+[[:space:]]\+g[[:space:]]\+F[[:space:]]\+\.text[[:space:]]\+[0-9a-f]\+[[:space:]]\+##' | \ diff %{SOURCE10} - || echo "WARNING: libexception symbol change?" -rm %{buildroot}%{_libdir}/libboost_exception.so -rm %{buildroot}%{_libdir}/libboost_exception.so.%{version} +rm %{buildroot}%{package_libdir}/libboost_exception.so +rm %{buildroot}%{package_libdir}/libboost_exception.so.%{version} -%fdupes %{buildroot}%{_includedir}/boost +%fdupes %{buildroot}%{package_includedir}/boost mkdir -p %{buildroot}%{my_docdir} %if 0%{?sle_version} >= 120000 && 0%{?sle_version} <= 120200 && !0%{?is_opensuse} mkdir -p %{buildroot}%{_defaultlicensedir} %endif %else # ! build_base -rm -r %{buildroot}%{_includedir}/boost -rm %{buildroot}%{_libdir}/libboost_serialization* -rmdir --ignore-fail-on-non-empty %{buildroot}%{_libdir} +rm -r %{buildroot}%{package_includedir}/boost +rm %{buildroot}%{package_libdir}/libboost_serialization* +rmdir --ignore-fail-on-non-empty %{buildroot}%{package_libdir} %fdupes %{buildroot}%{my_docdir} %endif +%if %{with hpc} +%hpc_write_modules_files +#%%Module1.0##################################################################### + +proc ModulesHelp { } { + +puts stderr " " +puts stderr "This module loads the %{pname} library built with the %{compiler_family} toolchain." +puts stderr "\nVersion %{version}\n" + +} +module-whatis "Name: %{pname} built with %{compiler_family} toolchain" +module-whatis "Version: %{version}" +module-whatis "Category: runtime library" +module-whatis "Description: %{summary:0}" +module-whatis "URL: %{url}" + +set version %{version} + +prepend-path PATH %{hpc_bindir} +prepend-path MANPATH %{hpc_mandir} +prepend-path LD_LIBRARY_PATH %{hpc_libdir} +setenv BOOST_DIR %{hpc_path} +setenv BOOST_DIR %{hpc_libdir} +setenv BOOST_INC %{hpc_includedir} +if ([file isdirectory %{hpc_includedir}]) { +prepend-path CPATH %{hpc_includedir} +prepend-path C_INCLUDE_PATH %{hpc_includedir} +prepend-path CPLUS_INCLUDE_PATH %{hpc_includedir} +} +if ([file isdirectory %{package_python2_sitearch}]) { +prepend-path PYTHONPATH %{package_python2_sitearch} +} +if ([file isdirectory %{package_python3_sitearch}]) { +prepend-path PYTHONPATH %{package_python3_sitearch} +} + +%{hpc_modulefile_add_pkgconfig_path} + +EOF +%endif + %if %{build_base} %post -n libboost_atomic%{library_version} -p /sbin/ldconfig %post -n libboost_container%{library_version} -p /sbin/ldconfig @@ -1439,6 +1621,9 @@ rmdir --ignore-fail-on-non-empty %{buildroot}%{_libdir} %endif %endif # ! build_base +%if %{with hpc} +%post -n %base_name -p /sbin/ldconfig +%endif %if %{build_base} %postun -n libboost_atomic%{library_version} -p /sbin/ldconfig @@ -1495,202 +1680,240 @@ rmdir --ignore-fail-on-non-empty %{buildroot}%{_libdir} %endif # build_base +%if %{with hpc} +%postun -n %{base_name} -p /sbin/ldconfig +%endif + +%if %{with hpc} + +%files +%hpc_modules_files +%{!?hpc_compiler_family:%dir %{hpc_install_base}} +%dir %{hpc_install_path_base} +%dir %{hpc_install_path} +%package_libdir +%exclude %package_libdir/*.so +%if %{with python2} +%exclude %package_python2_sitearch +%endif +%if %{with python3} +%exclude %package_python3_sitearch +%endif + +%files -n %{package_name}-devel +%package_includedir +%package_libdir/*.so +# do not package jam/bjam when building with mpi +%if ! %{with mpi} +%files -n %{package_name}-jam +%package_bindir +%endif # ! +%if %{with python2} +%files -n %{package_name}-python2 +%package_python2_sitearch +%endif +%if %{with python3} +%files -n %{package_name}-python3 +%package_python3_sitearch +%endif + +%else %if %{build_base} %files -n boost%{library_version}-jam -%{_bindir}/bjam -%{_bindir}/jam +%{package_bindir}/bjam +%{package_bindir}/jam %files -n libboost_atomic%{library_version} -%{_libdir}/libboost_atomic.so.%{version} +%{package_libdir}/libboost_atomic.so.%{version} %files -n libboost_atomic%{library_version}-devel -%{_libdir}/libboost_atomic.so +%{package_libdir}/libboost_atomic.so %files -n libboost_container%{library_version} -%{_libdir}/libboost_container.so.%{version} +%{package_libdir}/libboost_container.so.%{version} %files -n libboost_container%{library_version}-devel -%{_libdir}/libboost_container.so +%{package_libdir}/libboost_container.so %if %{with build_context} %files -n libboost_context%{library_version} -%{_libdir}/libboost_context.so.%{version} +%{package_libdir}/libboost_context.so.%{version} %files -n libboost_context%{library_version}-devel -%{_libdir}/libboost_context.so +%{package_libdir}/libboost_context.so %files -n libboost_coroutine%{library_version} -%{_libdir}/libboost_coroutine.so.%{version} +%{package_libdir}/libboost_coroutine.so.%{version} %files -n libboost_coroutine%{library_version}-devel -%{_libdir}/libboost_coroutine.so +%{package_libdir}/libboost_coroutine.so %endif # if with build_context %files -n libboost_contract%{library_version} -%{_libdir}/libboost_contract.so.%{version} +%{package_libdir}/libboost_contract.so.%{version} %files -n libboost_contract%{library_version}-devel -%{_libdir}/libboost_contract.so +%{package_libdir}/libboost_contract.so %files -n libboost_date_time%{library_version} -%{_libdir}/libboost_date_time.so.%{version} +%{package_libdir}/libboost_date_time.so.%{version} %files -n libboost_date_time%{library_version}-devel -%{_libdir}/libboost_date_time.so +%{package_libdir}/libboost_date_time.so %if %{with boost_fiber} %files -n libboost_fiber%{library_version} -%{_libdir}/libboost_fiber.so.%{version} +%{package_libdir}/libboost_fiber.so.%{version} %files -n libboost_fiber%{library_version}-devel -%{_libdir}/libboost_fiber.so +%{package_libdir}/libboost_fiber.so %endif # with boost_fiber %files -n libboost_filesystem%{library_version} -%{_libdir}/libboost_filesystem.so.%{version} +%{package_libdir}/libboost_filesystem.so.%{version} %files -n libboost_filesystem%{library_version}-devel -%{_libdir}/libboost_filesystem.so +%{package_libdir}/libboost_filesystem.so %files -n libboost_graph%{library_version} -%{_libdir}/libboost_graph.so.%{version} +%{package_libdir}/libboost_graph.so.%{version} %files -n libboost_graph%{library_version}-devel -%{_libdir}/libboost_graph.so +%{package_libdir}/libboost_graph.so %files -n libboost_iostreams%{library_version} -%{_libdir}/libboost_iostreams.so.%{version} +%{package_libdir}/libboost_iostreams.so.%{version} %files -n libboost_iostreams%{library_version}-devel -%{_libdir}/libboost_iostreams.so +%{package_libdir}/libboost_iostreams.so %files -n libboost_log%{library_version} -%{_libdir}/libboost_log.so.%{version} -%{_libdir}/libboost_log_setup.so.%{version} +%{package_libdir}/libboost_log.so.%{version} +%{package_libdir}/libboost_log_setup.so.%{version} %files -n libboost_log%{library_version}-devel -%{_libdir}/libboost_log.so -%{_libdir}/libboost_log_setup.so +%{package_libdir}/libboost_log.so +%{package_libdir}/libboost_log_setup.so %files -n libboost_math%{library_version} -%{_libdir}/libboost_math_c99f.so.%{version} -%{_libdir}/libboost_math_c99l.so.%{version} -%{_libdir}/libboost_math_c99.so.%{version} -%{_libdir}/libboost_math_tr1f.so.%{version} -%{_libdir}/libboost_math_tr1l.so.%{version} -%{_libdir}/libboost_math_tr1.so.%{version} +%{package_libdir}/libboost_math_c99f.so.%{version} +%{package_libdir}/libboost_math_c99l.so.%{version} +%{package_libdir}/libboost_math_c99.so.%{version} +%{package_libdir}/libboost_math_tr1f.so.%{version} +%{package_libdir}/libboost_math_tr1l.so.%{version} +%{package_libdir}/libboost_math_tr1.so.%{version} %files -n libboost_math%{library_version}-devel -%{_libdir}/libboost_math_c99f.so -%{_libdir}/libboost_math_c99l.so -%{_libdir}/libboost_math_c99.so -%{_libdir}/libboost_math_tr1f.so -%{_libdir}/libboost_math_tr1l.so -%{_libdir}/libboost_math_tr1.so +%{package_libdir}/libboost_math_c99f.so +%{package_libdir}/libboost_math_c99l.so +%{package_libdir}/libboost_math_c99.so +%{package_libdir}/libboost_math_tr1f.so +%{package_libdir}/libboost_math_tr1l.so +%{package_libdir}/libboost_math_tr1.so %files -n libboost_test%{library_version} -%{_libdir}/libboost_prg_exec_monitor.so.%{version} -%{_libdir}/libboost_test_exec_monitor.so.%{version} -%{_libdir}/libboost_unit_test_framework.so.%{version} +%{package_libdir}/libboost_prg_exec_monitor.so.%{version} +%{package_libdir}/libboost_test_exec_monitor.so.%{version} +%{package_libdir}/libboost_unit_test_framework.so.%{version} %files -n libboost_test%{library_version}-devel -%{_libdir}/libboost_prg_exec_monitor.so -%{_libdir}/libboost_test_exec_monitor.so -%{_libdir}/libboost_unit_test_framework.so +%{package_libdir}/libboost_prg_exec_monitor.so +%{package_libdir}/libboost_test_exec_monitor.so +%{package_libdir}/libboost_unit_test_framework.so %files -n libboost_program_options%{library_version} -%{_libdir}/libboost_program_options.so.%{version} +%{package_libdir}/libboost_program_options.so.%{version} %files -n libboost_program_options%{library_version}-devel -%{_libdir}/libboost_program_options.so +%{package_libdir}/libboost_program_options.so %endif # build_base %if ! %{build_base} %if %{with build_mpi} %files -n libboost_mpi%{library_version} -%{_libdir}/libboost_mpi.so.%{version} +%{package_libdir}/libboost_mpi.so.%{version} %files -n libboost_mpi%{library_version}-devel -%{_libdir}/libboost_mpi.so +%{package_libdir}/libboost_mpi.so %files -n libboost_graph_parallel%{library_version} -%{_libdir}/libboost_graph_parallel.so.%{version} +%{package_libdir}/libboost_graph_parallel.so.%{version} %files -n libboost_graph_parallel%{library_version}-devel -%{_libdir}/libboost_graph_parallel.so +%{package_libdir}/libboost_graph_parallel.so %if %{with python2} %files -n libboost_mpi_python-py2_7-%{library_version} -%{_libdir}/libboost_mpi_python-py2_7.so.%{version} +%{package_libdir}/libboost_mpi_python-py2_7.so.%{version} %files -n libboost_mpi_python-py2_7-%{library_version}-devel -%{_libdir}/libboost_mpi_python-py2_7.so -%{_libdir}/libboost_mpi_python.so +%{package_libdir}/libboost_mpi_python-py2_7.so +%{package_libdir}/libboost_mpi_python.so %files -n python2-boost_parallel_mpi%{library_version} -%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 +%dir %{package_python2_sitearch}/boost +%dir %{package_python2_sitearch}/boost/parallel +%dir %{package_python2_sitearch}/boost/parallel/mpi +%{package_python2_sitearch}/boost/__init__.py +%{package_python2_sitearch}/boost/parallel/__init__.py +%{package_python2_sitearch}/boost/parallel/mpi/__init__.py +%{package_python2_sitearch}/boost/parallel/mpi/mpi.so %endif # with python2 %if %{with python3} %files -n libboost_mpi_python-py3-%{library_version} -%{_libdir}/libboost_mpi_python-py3.so.%{version} +%{package_libdir}/libboost_mpi_python-py3.so.%{version} %files -n libboost_mpi_python-py3-%{library_version}-devel -%{_libdir}/libboost_mpi_python-py3.so +%{package_libdir}/libboost_mpi_python-py3.so %files -n python3-boost_parallel_mpi%{library_version} -%dir %{python3_sitearch}/boost -%dir %{python3_sitearch}/boost/parallel -%dir %{python3_sitearch}/boost/parallel/mpi -%{python3_sitearch}/boost/__init__.py -%{python3_sitearch}/boost/parallel/__init__.py -%{python3_sitearch}/boost/parallel/mpi/__init__.py -%{python3_sitearch}/boost/parallel/mpi/mpi.%{py3_soflags}.so +%dir %{package_python3_sitearch}/boost +%dir %{package_python3_sitearch}/boost/parallel +%dir %{package_python3_sitearch}/boost/parallel/mpi +%{package_python3_sitearch}/boost/__init__.py +%{package_python3_sitearch}/boost/parallel/__init__.py +%{package_python3_sitearch}/boost/parallel/mpi/__init__.py +%{package_python3_sitearch}/boost/parallel/mpi/mpi.%{py3_soflags}.so %endif # with python3 %endif # with build_mpi %if %{with python2} %files -n libboost_python-py2_7-%{library_version} -%{_libdir}/libboost_python-py2_7.so.%{version} +%{package_libdir}/libboost_python-py2_7.so.%{version} %files -n libboost_python-py2_7-%{library_version}-devel -%{_libdir}/libboost_python.so -%{_libdir}/libboost_python-py2_7.so +%{package_libdir}/libboost_python.so +%{package_libdir}/libboost_python-py2_7.so %if %{with python_numpy} %files -n libboost_numpy-py2_7-%{library_version} -%{_libdir}/libboost_numpy-py2_7.so.%{version} +%{package_libdir}/libboost_numpy-py2_7.so.%{version} %files -n libboost_numpy-py2_7-%{library_version}-devel -%{_libdir}/libboost_numpy-py2_7.so +%{package_libdir}/libboost_numpy-py2_7.so %endif # with numpy %endif # with python2 %if %{with python3} %files -n libboost_python-py3-%{library_version} -%{_libdir}/libboost_python-py3.so.%{version} +%{package_libdir}/libboost_python-py3.so.%{version} %files -n libboost_python-py3-%{library_version}-devel -%{_libdir}/libboost_python3.so -%{_libdir}/libboost_python-py3.so +%{package_libdir}/libboost_python3.so +%{package_libdir}/libboost_python-py3.so %if %{with python_numpy} %files -n libboost_numpy-py3-%{library_version} -%{_libdir}/libboost_numpy-py3.so.%{version} +%{package_libdir}/libboost_numpy-py3.so.%{version} %files -n libboost_numpy-py3-%{library_version}-devel -%{_libdir}/libboost_numpy-py3.so +%{package_libdir}/libboost_numpy-py3.so %endif # with numpy %endif # with python3 @@ -1698,76 +1921,76 @@ rmdir --ignore-fail-on-non-empty %{buildroot}%{_libdir} %if %{build_base} %files -n libboost_serialization%{library_version} -%{_libdir}/libboost_serialization.so.%{version} -%{_libdir}/libboost_wserialization.so.%{version} +%{package_libdir}/libboost_serialization.so.%{version} +%{package_libdir}/libboost_wserialization.so.%{version} %files -n libboost_serialization%{library_version}-devel -%{_libdir}/libboost_serialization.so -%{_libdir}/libboost_wserialization.so +%{package_libdir}/libboost_serialization.so +%{package_libdir}/libboost_wserialization.so %files -n libboost_stacktrace%{library_version} -%{_libdir}/libboost_stacktrace_addr2line.so.%{version} -%{_libdir}/libboost_stacktrace_basic.so.%{version} -%{_libdir}/libboost_stacktrace_noop.so.%{version} +%{package_libdir}/libboost_stacktrace_addr2line.so.%{version} +%{package_libdir}/libboost_stacktrace_basic.so.%{version} +%{package_libdir}/libboost_stacktrace_noop.so.%{version} %files -n libboost_stacktrace%{library_version}-devel -%{_libdir}/libboost_stacktrace_addr2line.so -%{_libdir}/libboost_stacktrace_basic.so -%{_libdir}/libboost_stacktrace_noop.so +%{package_libdir}/libboost_stacktrace_addr2line.so +%{package_libdir}/libboost_stacktrace_basic.so +%{package_libdir}/libboost_stacktrace_noop.so %files -n libboost_system%{library_version} -%{_libdir}/libboost_system.so.%{version} +%{package_libdir}/libboost_system.so.%{version} %files -n libboost_system%{library_version}-devel -%{_libdir}/libboost_system.so +%{package_libdir}/libboost_system.so %files -n libboost_thread%{library_version} -%{_libdir}/libboost_thread.so.%{version} +%{package_libdir}/libboost_thread.so.%{version} %files -n libboost_thread%{library_version}-devel -%{_libdir}/libboost_thread.so +%{package_libdir}/libboost_thread.so %files -n libboost_wave%{library_version} -%{_libdir}/libboost_wave.so.%{version} +%{package_libdir}/libboost_wave.so.%{version} %files -n libboost_wave%{library_version}-devel -%{_libdir}/libboost_wave.so +%{package_libdir}/libboost_wave.so %files -n libboost_regex%{library_version} -%{_libdir}/libboost_regex.so.%{version} +%{package_libdir}/libboost_regex.so.%{version} %files -n libboost_regex%{library_version}-devel -%{_libdir}/libboost_regex.so +%{package_libdir}/libboost_regex.so %files -n libboost_random%{library_version} -%{_libdir}/libboost_random.so.%{version} +%{package_libdir}/libboost_random.so.%{version} %files -n libboost_random%{library_version}-devel -%{_libdir}/libboost_random.so +%{package_libdir}/libboost_random.so %files -n libboost_chrono%{library_version} -%{_libdir}/libboost_chrono.so.%{version} +%{package_libdir}/libboost_chrono.so.%{version} %files -n libboost_chrono%{library_version}-devel -%{_libdir}/libboost_chrono.so +%{package_libdir}/libboost_chrono.so %files -n libboost_locale%{library_version} -%{_libdir}/libboost_locale.so.%{version} +%{package_libdir}/libboost_locale.so.%{version} %files -n libboost_locale%{library_version}-devel -%{_libdir}/libboost_locale.so +%{package_libdir}/libboost_locale.so %files -n libboost_timer%{library_version} -%{_libdir}/libboost_timer.so.%{version} +%{package_libdir}/libboost_timer.so.%{version} %files -n libboost_timer%{library_version}-devel -%{_libdir}/libboost_timer.so +%{package_libdir}/libboost_timer.so %files -n libboost_type_erasure%{library_version} -%{_libdir}/libboost_type_erasure.so.%{version} +%{package_libdir}/libboost_type_erasure.so.%{version} %files -n libboost_type_erasure%{library_version}-devel -%{_libdir}/libboost_type_erasure.so +%{package_libdir}/libboost_type_erasure.so %endif # if build_base %if ! %{build_base} @@ -1798,14 +2021,14 @@ rmdir --ignore-fail-on-non-empty %{buildroot}%{_libdir} %if %{with build_quickbook} %files -n %{package_name}-quickbook -%{_bindir}/quickbook +%{package_bindir}/quickbook %endif %endif # ! build_base %if %{build_base} %files -n libboost_headers%{library_version}-devel -%dir %{_includedir}/boost -%{_includedir}/boost/* +%dir %{package_includedir}/boost +%{package_includedir}/boost/* %files -n boost-license%{library_version} %license LICENSE_1_0.txt @@ -1814,5 +2037,6 @@ rmdir --ignore-fail-on-non-empty %{buildroot}%{_libdir} %endif %endif +%endif # without hpc %changelog