%define pckver %(echo %version | tr . _) %define pckmajver %(echo %version | cut -d. -f1-2 | tr . _) Name: libboost Version: 1.75.0 Release: 2mamba Summary: Free peer-reviewed portable C++ source libraries Group: System/Libraries Vendor: openmamba Distribution: openmamba Packager: Silvan Calarco URL: http://boost.org/ Source: https://dl.bintray.com/boostorg/release/%{version}/source/boost_%{pckver}.tar.bz2 #Source: http://download.sourceforge.net/sourceforge/boost/boost_%{pckver}.tar.bz2 Patch0: libboost-1.57.0-moc-libqt4-4.8.6.patch Patch1: libboost-1.58.0-python-3.3.patch License: Boost Software License ## AUTOBUILDREQ-BEGIN BuildRequires: glibc-devel BuildRequires: ldconfig BuildRequires: libbzip2-devel BuildRequires: libgcc BuildRequires: libicu-devel BuildRequires: liblzma-devel BuildRequires: libmpi-devel BuildRequires: libstdc++6-devel BuildRequires: libz-devel BuildRequires: libzstd-devel ## AUTOBUILDREQ-END BuildRequires: libicu-devel >= 67.1 BuildRequires: libpython3-devel BuildRequires: python-numpy-py3 BuildRequires: openmpi-devel BuildRequires: boost-jam %description The Boost libraries provide free peer-reviewed portable C++ source libraries. The emphasis is on libraries which work well with the C++ Standard Library. The libraries are intended to be widely useful, and are in regular use by thousands of programmers across a broad spectrum of applications. A further goal is to establish "existing practice" and provide reference implementations so that Boost libraries are suitable for eventual standardization. Ten Boost libraries will be included in the C++ Standards Committee's upcoming C++ Standard Library Technical Report as a step toward becoming part of a future C++ Standard. %package devel Group: Development/Libraries Summary: Devel package for libboost Requires: %{name} = %{version}-%{release} Provides: python-boost-devel Obsoletes: python-boost-devel Requires: python-boost-py3 = %{?epoch:%epoch:}%{version}-%{release} %description devel The Boost libraries provide free peer-reviewed portable C++ source libraries. The emphasis is on libraries which work well with the C++ Standard Library. The libraries are intended to be widely useful, and are in regular use by thousands of programmers across a broad spectrum of applications. A further goal is to establish "existing practice" and provide reference implementations so that Boost libraries are suitable for eventual standardization. Ten Boost libraries will be included in the C++ Standards Committee's upcoming C++ Standard Library Technical Report as a step toward becoming part of a future C++ Standard. This is the devel package. %package -n python-boost-py3 Group: System/Libraries Summary: Boost.Python library for Python 3 Requires: %{name} = %{version}-%{release} %description -n python-boost-py3 The Boost libraries provides free peer-reviewed portable C++ source libraries. The emphasis is on libraries which work well with the C++ Standard Library. The libraries are intended to be widely useful, and are in regular use by thousands of programmers across a broad spectrum of applications. A further goal is to establish "existing practice" and provide reference implementations so that Boost libraries are suitable for eventual standardization. Ten Boost libraries will be included in the C++ Standards Committee's upcoming C++ Standard Library Technical Report as a step toward becoming part of a future C++ Standard. This package contains then Boost.python library for Python 3. %debug_package %prep %setup -q -n boost_%{pckver} -a0 #-D -T #:<< _EOF mv boost_%{pckver} boost_python cp -a boost_python boost_python36 #%patch0 -p1 #%patch1 -p1 %build #:<< _EOF # Build boost with python3 ./bootstrap.sh \ --with-icu \ --with-python-root=%{_prefix} \ --with-python-version=%{python3_version} sed -i "s|using python.*|using python : %{python3_version} : %{_prefix} : %{python3_inc} ;|" project-config.jam echo "using mpi ;" >> project-config.jam EXPAT_INCLUDE=%{_includedir} \ EXPAT_LIBPATH=%{_libdir} \ ./b2 \ --prefix=%{_prefix} \ --layout=system -d2 \ python=3.7 \ runtime-link=shared \ link=shared,static \ toolset=gcc \ variant=release \ threading=multi \ debug-symbols=on \ stage \ %ifarch x86_64 cflags="-fPIC" %endif %ifarch disabled cd boost_python # Rebuild boost with Python 2 rm -f user-config.jam ./bootstrap.sh \ --with-icu \ --with-python-root=%{_prefix} \ --with-python-version=%{python_version} \ --with-libraries=python EXPAT_INCLUDE=%{_includedir} \ EXPAT_LIBPATH=%{_libdir} \ ./b2 \ -a \ --prefix=%{_prefix} \ --layout=system -d2 \ python=2.7 \ runtime-link=shared \ link=shared,static \ toolset=gcc \ variant=release \ threading=multi \ debug-symbols=on \ stage \ %ifarch x86_64 cflags="-fPIC" %endif cd ../boost_python36 # Rebuild boost with Python 3.6 rm -f user-config.jam ./bootstrap.sh \ --with-icu \ --with-python-root=%{_prefix} \ --with-python-version=%{python36_version} \ --with-libraries=python sed -i "s|using python.*|using python : %{python36_version} : %{_prefix} : %{python36_inc} ;|" project-config.jam echo "using mpi ;" >> project-config.jam EXPAT_INCLUDE=%{_includedir} \ EXPAT_LIBPATH=%{_libdir} \ ./b2 \ -a \ --prefix=%{_prefix} \ --layout=system -d2 \ python=3.6 \ runtime-link=shared \ link=shared,static \ toolset=gcc \ variant=release \ threading=multi \ debug-symbols=on \ stage \ %ifarch x86_64 cflags="-fPIC" %endif %endif %install [ "%{buildroot}" != / ] && rm -rf "%{buildroot}" EXPAT_INCLUDE=%{_includedir} \ EXPAT_LIBPATH=%{_libdir} \ ./b2 \ --prefix=%{buildroot}%{_prefix} \ --libdir=%{buildroot}%{_libdir} \ --execprefix=%{buildroot}%{_libexecdir} \ --includedir=%{buildroot}%{_includedir} \ --layout=system -d2 \ python=3.7 \ runtime-link=shared \ link=shared,static \ toolset=gcc \ variant=release \ threading=multi \ debug-symbols=on \ install # https://github.com/boostorg/python/issues/203#issuecomment-391477685 for _lib in python numpy; do ln -srL %{buildroot}%{_libdir}/libboost_${_lib}{27,}.so ln -srL %{buildroot}%{_libdir}/libboost_${_lib}3{7,}.so done %ifarch disabled cd boost_python EXPAT_INCLUDE=%{_includedir} \ EXPAT_LIBPATH=%{_libdir} \ ./b2 \ --prefix=%{buildroot}%{_prefix} \ --libdir=%{buildroot}%{_libdir} \ --execprefix=%{buildroot}%{_libexecdir} \ --includedir=%{buildroot}%{_includedir} \ --layout=system -d2 \ python=2.7 \ runtime-link=shared \ link=shared,static \ toolset=gcc \ variant=release \ threading=multi \ debug-symbols=on \ install cd ../boost_python36 EXPAT_INCLUDE=%{_includedir} \ EXPAT_LIBPATH=%{_libdir} \ ./b2 \ --prefix=%{buildroot}%{_prefix} \ --libdir=%{buildroot}%{_libdir} \ --execprefix=%{buildroot}%{_libexecdir} \ --includedir=%{buildroot}%{_includedir} \ --layout=system -d2 \ python=3.6 \ runtime-link=shared \ link=shared,static \ toolset=gcc \ variant=release \ threading=multi \ debug-symbols=on \ install %endif %clean [ "%{buildroot}" != / ] && rm -rf "%{buildroot}" %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files %defattr(-,root,root) %{_libdir}/libboost_atomic.so.* %{_libdir}/libboost_chrono.so.* %{_libdir}/libboost_container.so.* %{_libdir}/libboost_context.so.* %{_libdir}/libboost_contract.so.* %{_libdir}/libboost_coroutine.so.* %{_libdir}/libboost_date_time.so.* %{_libdir}/libboost_fiber.so.* %{_libdir}/libboost_filesystem.so.* %{_libdir}/libboost_graph.so.* %{_libdir}/libboost_graph_parallel.so.* %{_libdir}/libboost_iostreams.so.* %{_libdir}/libboost_json.so.* %{_libdir}/libboost_locale.so.* %{_libdir}/libboost_log.so.* %{_libdir}/libboost_log_setup.so.* %{_libdir}/libboost_math_c99.so.* %{_libdir}/libboost_math_c99f.so.* %{_libdir}/libboost_math_c99l.so.* %{_libdir}/libboost_math_tr1.so.* %{_libdir}/libboost_math_tr1f.so.* %{_libdir}/libboost_math_tr1l.so.* %{_libdir}/libboost_mpi.so.* %{_libdir}/libboost_nowide.so.* %{_libdir}/libboost_prg_exec_monitor.so.* %{_libdir}/libboost_program_options.so.* %{_libdir}/libboost_random.so.* %{_libdir}/libboost_regex.so.* %{_libdir}/libboost_serialization.so.* %{_libdir}/libboost_stacktrace_addr2line.so.* %{_libdir}/libboost_stacktrace_basic.so.* %{_libdir}/libboost_stacktrace_noop.so.* %{_libdir}/libboost_system.so.* %{_libdir}/libboost_thread.so.* %{_libdir}/libboost_timer.so.* %{_libdir}/libboost_type_erasure.so.* %{_libdir}/libboost_unit_test_framework.so.* %{_libdir}/libboost_wave.so.* %{_libdir}/libboost_wserialization.so.* %doc LICENSE_1_0.txt %files devel %defattr(-,root,root) %dir %{_includedir}/boost %{_includedir}/boost/* %{_libdir}/*.so %{_libdir}/*.a #%exclude %{_libdir}/mpi.so %dir %{_libdir}/cmake/Boost-%{version} %{_libdir}/cmake/Boost-%{version}/Boost*.cmake %{_libdir}/cmake/Boost*.cmake %{_libdir}/cmake/boost_*/*.cmake %files -n python-boost-py3 %defattr(-,root,root) %{_libdir}/boost-python3*/mpi.so %{_libdir}/libboost_python3*.so.* %{_libdir}/libboost_mpi_python3*.so.* %ifnarch arm %{_libdir}/libboost_numpy3*.so.* %endif %changelog * Tue Jan 19 2021 Silvan Calarco 1.75.0-2mamba - libboost-devel: restore libboost_[python|numpy]3.so symlinks * Fri Jan 15 2021 Automatic Build System 1.75.0-1mamba - automatic version update by autodist * Sun Sep 06 2020 Silvan Calarco 1.72.0-2mamba - rebuilt with libicu 67.1 * Fri Jan 31 2020 Automatic Build System 1.72.0-1mamba - automatic version update by autodist * Mon Dec 23 2019 Silvan Calarco 1.71.0-5mamba - python-boost-py3: don't obsolete python3-boost provided by legacy package * Sun Dec 22 2019 Silvan Calarco 1.71.0-4mamba - added python-boost-py36 package, rename python3-boost to python-boost-py3 * Wed Nov 27 2019 Silvan Calarco 1.71.0-3mamba - fix build for python3 * Fri Nov 22 2019 Silvan Calarco 1.71.0-2mamba - rebuilt with debug package and python3 * Sat Oct 26 2019 Silvan Calarco 1.71.0-1mamba - update to 1.71.0 * Mon Feb 11 2019 Silvan Calarco 1.69.0-2mamba - rebuilt with --threading=multi and --layout=system * Tue Jan 22 2019 Automatic Build System 1.69.0-1mamba - automatic version update by autodist * Fri Oct 05 2018 Automatic Build System 1.68.0-1mamba - automatic version update by autodist * Sat Sep 01 2018 Silvan Calarco 1.66.0-2mamba - move mpi.so from devel to main package * Sat Jan 06 2018 Automatic Build System 1.66.0-1mamba - automatic version update by autodist * Thu Sep 21 2017 Automatic Build System 1.65.1-1mamba - automatic version update by autodist * Fri Feb 24 2017 Automatic Build System 1.63.0-1mamba - automatic version update by autodist * Sun Oct 30 2016 Automatic Build System 1.62.0-1mamba - automatic version update by autodist * Sat Sep 10 2016 Automatic Build System 1.61.0-1mamba - automatic version update by autodist * Sat Jan 16 2016 Automatic Build System 1.60.0-1mamba - automatic version update by autodist * Thu Dec 17 2015 Silvan Calarco 1.59.0-2mamba - rebuilt with gcc 5.3.0 * Wed Oct 28 2015 Automatic Build System 1.59.0-1mamba - automatic version update by autodist * Thu Apr 30 2015 Automatic Build System 1.58.0-1mamba - automatic version update by autodist * Sat Apr 11 2015 Silvan Calarco 1.57.0-4mamba - patch to fix qt4 moc (kdepim 4.14.6) * Thu Feb 05 2015 Silvan Calarco 1.57.0-3mamba - fix python3 module * Wed Feb 04 2015 Silvan Calarco 1.57.0-2mamba - rebuilt adding python3-boost and python3-boost-devel * Sat Nov 22 2014 Automatic Build System 1.57.0-1mamba - automatic version update by autodist * Thu Oct 09 2014 Silvan Calarco 1.55.0-2mamba - rebuilt with libicu 53 * Sat Nov 30 2013 Silvan Calarco 1.55.0-1mamba - update to 1.55.0 * Sat Jul 13 2013 Automatic Build System 1.54.0-1mamba - automatic version update by autodist * Sat Mar 30 2013 Automatic Build System 1.53.0-1mamba - automatic version update by autodist * Mon Dec 24 2012 Silvan Calarco 1.52.0-2mamba - fix adding locales library (added --with-libraries=all to bootstrap.sh) * Sat Dec 15 2012 Silvan Calarco 1.52.0-1mamba - update to 1.52.0 - add --with-locale required by blender 2.65 * Mon Jul 30 2012 Silvan Calarco 1.50.0-1mamba - update to 1.50.0 * Fri Jun 29 2012 Silvan Calarco 1.45.0-2mamba - added patch to fix thread support with gcc >= 4.7 * Tue Dec 14 2010 Silvan Calarco 1.45.0-1mamba - update to 1.45.0 * Tue Jun 29 2010 Automatic Build System 1.43.0-2mamba - automatic rebuild by autodist * Thu Jun 10 2010 Automatic Build System 1.43.0-1mamba - update to 1.43.0 * Thu Jun 25 2009 Silvan Calarco 1.39.0-3mamba - added no_exception patch to serialization/throw_exception.hpp (see http://marc.info/?l=boost&m=123972460823115&w=2) * Thu Jun 04 2009 Silvan Calarco 1.39.0-2mamba - re-enable ICU support and threading variants * Thu Jun 04 2009 Silvan Calarco 1.39.0-1mamba - update to 1.39.0 * Tue Mar 31 2009 Silvan Calarco 1.38.0-1mamba - update to 1.38.0 - python packages renamed to python-boost* * Wed Feb 04 2009 Silvan Calarco 1.37.0-1mamba - automatic update by autodist * Tue Oct 28 2008 Silvan Calarco 1.36.0-2mamba - rebuilt against python 2.6 * Fri Sep 12 2008 gil 1.36.0-1mamba - update to 1.36.0 * Mon Jul 21 2008 gil 1.35.0-1mamba - update to 1.35.0 - edit patch0 * Sun Oct 14 2007 Silvan Calarco 1.34.1-1mamba - update to 1.34.1 * Mon Jul 02 2007 Silvan Calarco 1.34.0-1mamba - update to 1.34.0 * Fri Apr 27 2007 Silvan Calarco 1.33.1-1mamba - update to 1.33.1 * Tue Feb 22 2005 Davide Madrisan 1.32.0-1qilnx - update to version 1.32.0 by autospec - package license modified - added license file in the package documentation - specfile updates - fixes in the install section - added missing header files * Tue Jun 29 2004 Silvan Calarco 1.31.0-1qilnx - first build