From cd9168e58cbabbdee336031f55fdaca1cc5217d50ddbf44624590cfcb7482783 Mon Sep 17 00:00:00 2001 From: Adam Majer Date: Tue, 17 Apr 2018 07:57:19 +0000 Subject: [PATCH] Accepting request 597342 from home:adamm:boost_test - Update to version 1.67.0 New libraries: * Contract: Contract programming for C++. All contract programming features are supported: Subcontracting, class invariants, postconditions (with old and return values), preconditions, customizable actions on assertion failure (e.g., terminate or throw), optional compilation and checking of assertions, etc, from Lorenzo Caminiti. * HOF: Higher-order functions for C++, from Paul Fultz II. Breaking changes in updated libraries: * atomic: Breaking change: Changed the result of the (op)_and_test operations added in Boost 1.66 to the opposite - the functions now return true if the operation result is non-zero. This is consistent with other test methods in Boost.Atomic and the C++ standard library. Users can define BOOST_ATOMIC_DETAIL_HIGHLIGHT_OP_AND_TEST when compiling their code to emit warnings on every use of the changed functions. This way users can locate the code that needs to be updated. * multiprecission: When converting a multiprecision integer to a narrower type, if the value is too large (or negative) to fit in the smaller type, then the result is either the maximum (or minimum) value of the target type. This was always the intended behaviour, but was somewhat haphazardly enforced before. If you really do want just the low order N bits of a value, then you will need to mask these out prior to the case, for example: static_cast(~static_cast(0) & my_value). Note that technically (to avoid undefined behaviour) you should do the same thing with built in integer types too. * spirit: Removed `with_context` utility: header no longer includes boost::next and boost::prior as they have been moved to the iterator module. Instead include . Other uses of are discouraged, it's better to use the header for the specific functionality instead. * uuid: random_generator is no longer copyable Libraries that were updated: Asio, Atomic, Beast, ContainerHash, Context, Core, Coroutine2, DateTime, DLL, Fiber, Filesystem, Fusion, Locale, Log, Math, Multi-index Containers, Multiprecission, Optional, Phoenix, PolyCollection, Python, Spirit, Stacktrace, Test, TypeIndex, TypeTraits, Utility, Unordered, Units, Uuid, and Variant. For complete list of changes, see, https://www.boost.org/users/history/version_1_67_0.html - refreshed patches: * boost-strict_aliasing.patch * boost-aarch64-flags.patch - python_library_name.patch: adapted to not append version number to library names, like new boost is doing. - disable python2 builds by default - use regular Requires for libboost_header dependency OBS-URL: https://build.opensuse.org/request/show/597342 OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/boost?expand=0&rev=212 --- baselibs.conf | 52 ++++++++--------- boost-aarch64-flags.patch | 25 ++++----- boost-strict_aliasing.patch | 14 ++--- boost.changes | 60 ++++++++++++++++++++ boost.spec | 109 +++++++++++++++++++++++------------- boost_1_66_0.tar.bz2 | 3 - boost_1_67_0.tar.bz2 | 3 + python_library_name.patch | 97 +++++++++----------------------- 8 files changed, 202 insertions(+), 161 deletions(-) delete mode 100644 boost_1_66_0.tar.bz2 create mode 100644 boost_1_67_0.tar.bz2 diff --git a/baselibs.conf b/baselibs.conf index fec8b75..990b4fe 100644 --- a/baselibs.conf +++ b/baselibs.conf @@ -1,26 +1,26 @@ -libboost_atomic1_66_0 -libboost_container1_66_0 -libboost_context1_66_0 -libboost_coroutine1_66_0 -libboost_date_time1_66_0 -libboost_fiber1_66_0 -libboost_filesystem1_66_0 -libboost_graph1_66_0 -libboost_graph_parallel1_66_0 -libboost_iostreams1_66_0 -libboost_locale1_66_0 -libboost_math1_66_0 -libboost_mpi1_66_0 -libboost_test1_66_0 -libboost_program_options1_66_0 -libboost_python-py2_7-1_66_0 -libboost_python-py3-1_66_0 -libboost_random1_66_0 -libboost_serialization1_66_0 -libboost_signals1_66_0 -libboost_stacktrace1_66_0 -libboost_system1_66_0 -libboost_thread1_66_0 -libboost_type_erasure1_66_0 -libboost_wave1_66_0 -libboost_regex1_66_0 +libboost_atomic1_67_0 +libboost_container1_67_0 +libboost_context1_67_0 +libboost_coroutine1_67_0 +libboost_date_time1_67_0 +libboost_fiber1_67_0 +libboost_filesystem1_67_0 +libboost_graph1_67_0 +libboost_graph_parallel1_67_0 +libboost_iostreams1_67_0 +libboost_locale1_67_0 +libboost_math1_67_0 +libboost_mpi1_67_0 +libboost_test1_67_0 +libboost_program_options1_67_0 +libboost_python-py2_7-1_67_0 +libboost_python-py3-1_67_0 +libboost_random1_67_0 +libboost_serialization1_67_0 +libboost_signals1_67_0 +libboost_stacktrace1_67_0 +libboost_system1_67_0 +libboost_thread1_67_0 +libboost_type_erasure1_67_0 +libboost_wave1_67_0 +libboost_regex1_67_0 diff --git a/boost-aarch64-flags.patch b/boost-aarch64-flags.patch index d7ea382..fc840ac 100644 --- a/boost-aarch64-flags.patch +++ b/boost-aarch64-flags.patch @@ -1,15 +1,12 @@ -Index: boost_1_58_0/tools/build/src/tools/gcc.jam +Index: boost_1_67_0/tools/build/src/tools/gcc.jam =================================================================== ---- boost_1_58_0.orig/tools/build/src/tools/gcc.jam -+++ boost_1_58_0/tools/build/src/tools/gcc.jam -@@ -457,10 +457,6 @@ rule setup-address-model ( targets * : s - { - option = -m32 ; - } -- else if $(model) = 64 -- { -- option = -m64 ; -- } - } - # For darwin, the model can be 32_64. darwin.jam will handle that - # on its own. +--- boost_1_67_0.orig/tools/build/src/tools/gcc.jam ++++ boost_1_67_0/tools/build/src/tools/gcc.jam +@@ -360,7 +360,6 @@ local rule compile-link-flags ( * ) + local generic-os = [ set.difference $(all-os) : aix hpux ] ; + local arch = power sparc x86 ; + compile-link-flags $(generic-os)/$(arch)/32 : -m32 ; +- compile-link-flags $(generic-os)/$(arch)/64 : -m64 ; + } + + { diff --git a/boost-strict_aliasing.patch b/boost-strict_aliasing.patch index f6b007e..94854f9 100644 --- a/boost-strict_aliasing.patch +++ b/boost-strict_aliasing.patch @@ -2,11 +2,11 @@ Index: libs/python/build/Jamfile =================================================================== --- libs/python/build/Jamfile.orig +++ libs/python/build/Jamfile -@@ -110,6 +110,7 @@ rule lib_boost_python ( version ) - - -@$(BOOST_JAMROOT_MODULE)%$(BOOST_JAMROOT_MODULE).tag - @$(BOOST_JAMROOT_MODULE)%$(BOOST_JAMROOT_MODULE).python-tag -+ -fno-strict-aliasing - - @python.require-py +@@ -94,6 +94,7 @@ lib boost_python + on:BOOST_DEBUG_PYTHON + -@$(BOOST_JAMROOT_MODULE)%$(BOOST_JAMROOT_MODULE).tag + @$(__name__).python-tag ++ -fno-strict-aliasing + @python.require-py + : # default build diff --git a/boost.changes b/boost.changes index 44c5da8..daeb0dc 100644 --- a/boost.changes +++ b/boost.changes @@ -1,3 +1,63 @@ +------------------------------------------------------------------- +Wed Apr 4 12:10:27 CEST 2018 - adam.majer@suse.de + +- Update to version 1.67.0 + New libraries: + * Contract: Contract programming for C++. All contract + programming features are supported: Subcontracting, class + invariants, postconditions (with old and return values), + preconditions, customizable actions on assertion failure (e.g., + terminate or throw), optional compilation and checking of + assertions, etc, from Lorenzo Caminiti. + * HOF: Higher-order functions for C++, from Paul Fultz II. + + Breaking changes in updated libraries: + * atomic: Breaking change: Changed the result of the + (op)_and_test operations added in Boost 1.66 to the opposite - + the functions now return true if the operation result is + non-zero. This is consistent with other test methods in + Boost.Atomic and the C++ standard library. Users can define + BOOST_ATOMIC_DETAIL_HIGHLIGHT_OP_AND_TEST when compiling their + code to emit warnings on every use of the changed functions. + This way users can locate the code that needs to be updated. + + * multiprecission: When converting a multiprecision integer to a + narrower type, if the value is too large (or negative) to fit + in the smaller type, then the result is either the maximum (or + minimum) value of the target type. This was always the intended + behaviour, but was somewhat haphazardly enforced before. If you + really do want just the low order N bits of a value, then you + will need to mask these out prior to the case, for example: + static_cast(~static_cast(0) & my_value). + Note that technically (to avoid undefined behaviour) you should + do the same thing with built in integer types too. + + * spirit: Removed `with_context` + utility: header no longer includes + boost::next and boost::prior as they have been moved to the + iterator module. Instead include . Other + uses of are discouraged, it's better to use + the header for the specific functionality instead. + + * uuid: random_generator is no longer copyable + + Libraries that were updated: Asio, Atomic, Beast, ContainerHash, + Context, Core, Coroutine2, DateTime, DLL, Fiber, Filesystem, + Fusion, Locale, Log, Math, Multi-index Containers, + Multiprecission, Optional, Phoenix, PolyCollection, Python, + Spirit, Stacktrace, Test, TypeIndex, TypeTraits, Utility, + Unordered, Units, Uuid, and Variant. For complete list of + changes, see, + https://www.boost.org/users/history/version_1_67_0.html + +- refreshed patches: + * boost-strict_aliasing.patch + * boost-aarch64-flags.patch +- python_library_name.patch: adapted to not append version number + to library names, like new boost is doing. +- disable python2 builds by default +- use regular Requires for libboost_header dependency + ------------------------------------------------------------------- Wed Apr 4 09:59:53 CEST 2018 - kukuk@suse.de diff --git a/boost.spec b/boost.spec index 474ed91..653c752 100644 --- a/boost.spec +++ b/boost.spec @@ -16,11 +16,11 @@ # -%define ver 1.66.0 -%define file_version 1_66_0 +%define ver 1.67.0 +%define file_version 1_67_0 %define docs_version 1.56.0 %define short_version 1_56 -%define lib_appendix 1_66_0 +%define lib_appendix 1_67_0 %bcond_with build_docs %bcond_without package_pdf %bcond_without build_quickbook @@ -55,7 +55,7 @@ %endif %bcond_without python3 -%bcond_without python2 +%bcond_with python2 # Python NumPy library is only available on Leap 42.1 OpenSUSE onward # and is not availble in SLE @@ -80,8 +80,8 @@ %endif Name: boost%name_suffix -%define package_name boost_1_66 -Version: 1.66.0 +%define package_name boost_1_67 +Version: 1.67.0 Release: 0 Summary: Boost C++ Libraries License: BSL-1.0 @@ -171,7 +171,7 @@ Group: Development/Libraries/C and C++ Requires: boost-license%{lib_appendix} Requires: libstdc++-devel Provides: libboost_headers-devel = %{version} -%if %{without boost_devel} +%if 0%{without boost_devel} Provides: boost-devel = %{version} %endif Conflicts: otherproviders(libboost_headers-devel) @@ -305,7 +305,7 @@ required for coordinating multiple threads through atomic variables. Summary: Development headers for Boost.Atomic Group: Development/Libraries/C and C++ Requires: libboost_atomic%{lib_appendix} = %{version} -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libstdc++-devel Provides: libboost_atomic-devel = %{version} Conflicts: otherproviders(libboost_atomic-devel) @@ -329,7 +329,7 @@ This package contains the Boost.Container runtime library. Summary: Development headers for Boost.Container Group: Development/Libraries/C and C++ Requires: libboost_container%{lib_appendix} = %{version} -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libstdc++-devel Provides: libboost_container-devel = %{version} Conflicts: otherproviders(libboost_container-devel) @@ -356,7 +356,7 @@ multitasking support. Summary: Development headers for Boost.Context Group: Development/Libraries/C and C++ Requires: libboost_context%{lib_appendix} = %{version} -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libstdc++-devel Provides: libboost_context-devel = %{version} Conflicts: otherproviders(libboost_context-devel) @@ -366,6 +366,28 @@ Conflicts: boost-devel < 1.63 Development headers and libraries for Boost.Context, a library that providing cooperative multitasking support. +%package -n libboost_contract%{lib_appendix} +Summary: Boost.Contract runtime library +Group: System/Libraries +Requires: boost-license%{lib_appendix} + +%description -n libboost_contract%{lib_appendix} +Runtime support for Boost.Contract, a library that implements +Design by Contract or DbC or contract programming. + +%package -n libboost_contract%{lib_appendix}-devel +Summary: Development headers for Boost.Contract +Group: Development/Libraries/C and C++ +Requires: libboost_contract%{lib_appendix} = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libstdc++-devel +Provides: libboost_contract-devel = %{version} +Conflicts: otherproviders(libboost_contract-devel) + +%description -n libboost_contract%{lib_appendix}-devel +Development headers and libraries for Boost.Contract, a library +that implements Design by Contract or DbC or contract programming. + %package -n libboost_coroutine%{lib_appendix} Summary: Boost::Coroutine runtime library Group: System/Libraries @@ -379,7 +401,7 @@ Summary: Development headers for Boost.Coroutine Group: Development/Libraries/C and C++ Requires: libboost_context%{lib_appendix}-devel = %{version} Requires: libboost_coroutine%{lib_appendix} = %{version} -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libstdc++-devel Provides: libboost_coroutine-devel = %{version} Conflicts: otherproviders(libboost_coroutine-devel) @@ -402,7 +424,7 @@ This package contains the Boost Date.DateTime runtime libraries. Summary: Development headers for Boost.DateTime library Group: Development/Libraries/C and C++ Requires: libboost_date_time%{lib_appendix} = %{version} -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Recommends: libboost_serialization%{lib_appendix}-devel = %{version} Requires: libstdc++-devel Provides: libboost_date_time-devel = %{version} @@ -426,7 +448,7 @@ Summary: Development headers for Boost.Fiber library Group: Development/Libraries/C and C++ Requires: libboost_context%{lib_appendix}-devel = %{version} Requires: libboost_fiber%{lib_appendix} = %{version} -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libstdc++-devel Provides: libboost_fiber-devel = %{version} Conflicts: otherproviders(libboost_fiber-devel) @@ -449,7 +471,7 @@ This package contains the Boost.Filesystem library. Summary: Development headers for Boost.Filesystem library Group: Development/Libraries/C and C++ Requires: libboost_filesystem%{lib_appendix} = %{version} -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_system%{lib_appendix}-devel = %{version} Requires: libstdc++-devel Provides: libboost_filesystem-devel = %{version} @@ -473,7 +495,7 @@ This package contains the Boost.Graph runtime library. Summary: Development headers for Boost.Graph library Group: Development/Libraries/C and C++ Requires: libboost_graph%{lib_appendix} = %{version} -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} ## FIXME:!!!! need better list of requirements here Requires: libstdc++-devel Provides: libboost_graph-devel = %{version} @@ -498,7 +520,7 @@ This package contains the Boost.IOStreams Runtime libraries. %package -n libboost_iostreams%{lib_appendix}-devel Summary: Development headers for Boost.IOStreans library Group: Development/Libraries/C and C++ -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_iostreams%{lib_appendix} = %{version} Provides: libboost_iostreams-devel = %{version} Conflicts: otherproviders(libboost_iostreams-devel) @@ -520,7 +542,7 @@ This package contains runtime library for Boost.Log. Summary: Development headers for Boost.Log library Group: Development/Libraries/C and C++ Requires: libboost_date_time%{lib_appendix}-devel = %{version} -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_log%{lib_appendix} = %{version} Requires: libboost_system%{lib_appendix} = %{version} Requires: libboost_thread%{lib_appendix} = %{version} @@ -545,7 +567,7 @@ This package contains the Boost.Math Runtime libraries. %package -n libboost_math%{lib_appendix}-devel Summary: Development headers for Boost.Math libraries Group: Development/Libraries/C and C++ -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_math%{lib_appendix} = %{version} Provides: libboost_math-devel = %{version} Conflicts: otherproviders(libboost_math-devel) @@ -567,7 +589,7 @@ This package contains the Boost.MPI runtime library. 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} +Requires: libboost_headers%{lib_appendix}-devel = %{version} %if %{with python2} Requires: libboost_python-py2_7-%{lib_appendix}-devel %endif @@ -596,7 +618,7 @@ This package contains the Boost.Graph parallel runtime library Summary: Development headers for Boost.Graph parallel library Group: Development/Libraries/C and C++ Requires: libboost_graph_parallel%{lib_appendix} = %{version} -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_mpi%{lib_appendix}-devel = %{version} Provides: libboost_graph_parallel-devel = %{version} Conflicts: otherproviders(libboost_graph_parallel-devel) @@ -689,7 +711,7 @@ This package contains the BoosttTest runtime library. %package -n libboost_test%{lib_appendix}-devel Summary: Development headers for Boost.Test library Group: Development/Libraries/C and C++ -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_test%{lib_appendix} = %{version} Provides: libboost_test-devel = %{version} Conflicts: otherproviders(libboost_test-devel) @@ -711,7 +733,7 @@ This package contains the Boost.ProgramOptions runtime library. %package -n libboost_program_options%{lib_appendix}-devel Summary: Development headers for Boost.ProgramOptions library Group: Development/Libraries/C and C++ -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_program_options%{lib_appendix} = %{version} Provides: libboost_program_options-devel = %{version} Conflicts: otherproviders(libboost_program_options-devel) @@ -734,7 +756,7 @@ version of python. %package -n libboost_python-py2_7-%{lib_appendix}-devel Summary: Development headers for Boost.Python library Group: Development/Libraries/C and C++ -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_python-py2_7-%{lib_appendix} = %{version} Provides: libboost_python-devel = %{version} Conflicts: otherproviders(libboost_python-devel) @@ -757,7 +779,7 @@ version of python. %package -n libboost_numpy-py2_7-%{lib_appendix}-devel Summary: Development headers for Boost.Python.NumPy library Group: Development/Libraries/C and C++ -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_numpy-py2_7-%{lib_appendix} = %{version} Provides: libboost_numpy-devel = %{version} Conflicts: otherproviders(libboost_numpy-devel) @@ -782,7 +804,7 @@ bindings. %package -n libboost_python-py3-%{lib_appendix}-devel Summary: Development headers for Boost.Python library Group: Development/Libraries/C and C++ -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_python-py3-%{lib_appendix} = %{version} Provides: libboost_python3-devel = %{version} Conflicts: otherproviders(libboost_python3-devel) @@ -805,7 +827,7 @@ bindings. %package -n libboost_numpy-py3-%{lib_appendix}-devel Summary: Development headers for Boost.Python.NumPy library Group: Development/Libraries/C and C++ -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_numpy-py3-%{lib_appendix} = %{version} Provides: libboost_numpy3-devel = %{version} Conflicts: otherproviders(libboost_numpy3-devel) @@ -829,7 +851,7 @@ This package contains the Boost.Serialization runtime library. %package -n libboost_serialization%{lib_appendix}-devel Summary: Development headers for Boost.Serialization library Group: Development/Libraries/C and C++ -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_serialization%{lib_appendix} = %{version} Provides: libboost_serialization-devel = %{version} Conflicts: otherproviders(libboost_serialization-devel) @@ -850,7 +872,7 @@ This package contains the Boost::Signals Runtime library. %package -n libboost_signals%{lib_appendix}-devel Summary: Development headers for Boost.Signals library Group: Development/Libraries/C and C++ -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_signals%{lib_appendix} = %{version} Provides: libboost_signals-devel = %{version} Conflicts: otherproviders(libboost_signals-devel) @@ -872,7 +894,7 @@ This package contains the Boost.Stacktrace runtime library. %package -n libboost_stacktrace%{lib_appendix}-devel Summary: Development headers for Boost.Stacktrace library Group: Development/Libraries/C and C++ -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_stacktrace%{lib_appendix} = %{version} Provides: libboost_stacktrace-devel = %{version} Conflicts: otherproviders(libboost_stacktrace-devel) @@ -893,7 +915,7 @@ This package contains the Boost.System runtime library. %package -n libboost_system%{lib_appendix}-devel Summary: Development headers for Boost.System library Group: Development/Libraries/C and C++ -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_system%{lib_appendix} = %{version} Provides: libboost_system-devel = %{version} Conflicts: otherproviders(libboost_system-devel) @@ -915,7 +937,7 @@ Summary: Development headers for Boost.Thread library Group: Development/Libraries/C and C++ Requires: libboost_chrono%{lib_appendix}-devel = %{version} Requires: libboost_date_time%{lib_appendix}-devel = %{version} -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_thread%{lib_appendix} = %{version} Provides: libboost_thread-devel = %{version} Conflicts: otherproviders(libboost_thread-devel) @@ -936,7 +958,7 @@ This package contains the Boost::Wave runtime library. Summary: Development headers for Boost.Wave library Group: Development/Libraries/C and C++ Requires: libboost_filesystem%{lib_appendix}-devel = %{version} -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_serialization%{lib_appendix}-devel = %{version} Requires: libboost_wave%{lib_appendix} = %{version} Provides: libboost_wave-devel = %{version} @@ -957,7 +979,7 @@ This package contains the Boost.Regex runtime library. %package -n libboost_regex%{lib_appendix}-devel Summary: Development headers for Boost.Regex library Group: Development/Libraries/C and C++ -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_regex%{lib_appendix} = %{version} Provides: libboost_regex-devel = %{version} Conflicts: otherproviders(libboost_regex-devel) @@ -977,7 +999,7 @@ This package contains the Boost.Random runtime library. %package -n libboost_random%{lib_appendix}-devel Summary: Development headers for Boost.Random library Group: Development/Libraries/C and C++ -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_random%{lib_appendix} = %{version} Provides: libboost_random-devel = %{version} Conflicts: otherproviders(libboost_random-devel) @@ -998,7 +1020,7 @@ This package contains the Boost::Chrono runtime library. Summary: Development headers for Boost.Chrono library Group: Development/Libraries/C and C++ Requires: libboost_chrono%{lib_appendix} = %{version} -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Provides: libboost_chrono-devel = %{version} Conflicts: otherproviders(libboost_chrono-devel) Conflicts: boost-devel < 1.63 @@ -1017,7 +1039,7 @@ This package contains Boost::Locale runtime library. %package -n libboost_locale%{lib_appendix}-devel Summary: Development headers for Boost.Locale library Group: Development/Libraries/C and C++ -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_locale%{lib_appendix} = %{version} Provides: libboost_locale-devel = %{version} Conflicts: otherproviders(libboost_locale-devel) @@ -1037,7 +1059,7 @@ This package contains Boost.Timer runtime library. %package -n libboost_timer%{lib_appendix}-devel Summary: Development headers for Boost.Timer library Group: Development/Libraries/C and C++ -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_system%{lib_appendix}-devel = %{version} Requires: libboost_timer%{lib_appendix} = %{version} Provides: libboost_timer-devel = %{version} @@ -1058,7 +1080,7 @@ This package contains Boost::TypeErasure runtime library. %package -n libboost_type_erasure%{lib_appendix}-devel Summary: Development headers for Boost.TypeErasure library Group: Development/Libraries/C and C++ -PreReq: libboost_headers%{lib_appendix}-devel = %{version} +Requires: libboost_headers%{lib_appendix}-devel = %{version} Requires: libboost_type_erasure%{lib_appendix} = %{version} Provides: libboost_type_erasure-devel = %{version} Conflicts: otherproviders(libboost_type_erasure-devel) @@ -1416,6 +1438,7 @@ rmdir --ignore-fail-on-non-empty %{buildroot}%{_libdir} %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 +%post -n libboost_contract%{lib_appendix} -p /sbin/ldconfig %post -n libboost_coroutine%{lib_appendix} -p /sbin/ldconfig %post -n libboost_date_time%{lib_appendix} -p /sbin/ldconfig %post -n libboost_fiber%{lib_appendix} -p /sbin/ldconfig @@ -1474,6 +1497,7 @@ rmdir --ignore-fail-on-non-empty %{buildroot}%{_libdir} %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 +%postun -n libboost_contract%{lib_appendix} -p /sbin/ldconfig %postun -n libboost_coroutine%{lib_appendix} -p /sbin/ldconfig %postun -n libboost_date_time%{lib_appendix} -p /sbin/ldconfig %postun -n libboost_fiber%{lib_appendix} -p /sbin/ldconfig @@ -1559,6 +1583,14 @@ rmdir --ignore-fail-on-non-empty %{buildroot}%{_libdir} %defattr(-, root, root, -) %{_libdir}/libboost_context.so +%files -n libboost_contract%{lib_appendix} +%defattr(-, root, root, -) +%{_libdir}/libboost_contract.so.%{version} + +%files -n libboost_contract%{lib_appendix}-devel +%defattr(-, root, root, -) +%{_libdir}/libboost_contract.so + %files -n libboost_coroutine%{lib_appendix} %defattr(-, root, root, -) %{_libdir}/libboost_coroutine.so.%{version} @@ -1885,7 +1917,6 @@ rmdir --ignore-fail-on-non-empty %{buildroot}%{_libdir} %defattr(-, root, root, -) %dir %{my_docdir} %doc %{my_docdir}/* -# %%exclude %%{my_docdir}/LICENSE_1_0.txt %if %{with boost_devel} %exclude %{my_docdir}/README.boost-devel %endif diff --git a/boost_1_66_0.tar.bz2 b/boost_1_66_0.tar.bz2 deleted file mode 100644 index e494acc..0000000 --- a/boost_1_66_0.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5721818253e6a0989583192f96782c4a98eb6204965316df9f5ad75819225ca9 -size 85995778 diff --git a/boost_1_67_0.tar.bz2 b/boost_1_67_0.tar.bz2 new file mode 100644 index 0000000..726ee48 --- /dev/null +++ b/boost_1_67_0.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2684c972994ee57fc5632e03bf044746f6eb45d4920c343937a465fd67a5adba +size 87336566 diff --git a/python_library_name.patch b/python_library_name.patch index a979382..6f504bf 100644 --- a/python_library_name.patch +++ b/python_library_name.patch @@ -27,76 +27,11 @@ MPI module needs to reference correct python ~ boost_mpi_python ~ boost_mpi ~ /mpi//mpi [ mpi.extra-requirements ] -Index: boost_1_65_0/libs/python/build/Jamfile +Index: boost_1_67_0/libs/mpi/build/Jamfile.v2 =================================================================== ---- boost_1_65_0.orig/libs/python/build/Jamfile -+++ boost_1_65_0/libs/python/build/Jamfile -@@ -42,15 +42,15 @@ rule cond ( test ? : yes * : no * ) { if - rule unless ( test ? : yes * : no * ) { if ! $(test) { return $(yes) ; } else { return $(no) ; } } - local rule eq ( a : b ) { if $(a) = $(b) { return 1 ; } } - --lib_boost_python(2) = boost_python ; --lib_boost_python(3) = boost_python3 ; -+#lib_boost_python(2) = boost_python ; -+#lib_boost_python(3) = boost_python3 ; - --lib_boost_python($(py2-version)) = $(lib_boost_python(2)) ; --lib_boost_python($(py3-version)) = $(lib_boost_python(3)) ; -+#lib_boost_python($(py2-version)) = $(lib_boost_python(2)) ; -+#lib_boost_python($(py3-version)) = $(lib_boost_python(3)) ; - - rule lib_boost_python ( version ) - { -- lib $(lib_boost_python($(version))) -+ lib boost_python #$(lib_boost_python($(version))) - : # sources - list.cpp - long.cpp -@@ -121,16 +121,16 @@ rule lib_boost_python ( version ) - ; - } - --lib_boost_numpy(2) = boost_numpy ; --lib_boost_numpy(3) = boost_numpy3 ; -+#lib_boost_numpy(2) = boost_numpy ; -+#lib_boost_numpy(3) = boost_numpy3 ; - --lib_boost_numpy($(py2-version)) = $(lib_boost_numpy(2)) ; --lib_boost_numpy($(py3-version)) = $(lib_boost_numpy(3)) ; -+#lib_boost_numpy($(py2-version)) = $(lib_boost_numpy(2)) ; -+#lib_boost_numpy($(py3-version)) = $(lib_boost_numpy(3)) ; - - rule lib_boost_numpy ( version ) - { - numpy-include = [ python.numpy-include ] ; -- lib $(lib_boost_numpy($(version))) -+ lib boost_numpy #$(lib_boost_numpy($(version))) - : # sources - numpy/dtype.cpp - numpy/matrix.cpp -@@ -172,7 +172,7 @@ for local N in 2 3 - } - else - { -- alias $(lib_boost_python($(N))) ; -+ #alias $(lib_boost_python($(N))) ; - } - if $(py$(N)-version) && [ python.numpy ] - { -@@ -181,7 +181,7 @@ for local N in 2 3 - } - else - { -- alias $(lib_boost_numpy($(N))) ; -+ #alias $(lib_boost_numpy($(N))) ; - } - } - -Index: boost_1_65_0/libs/mpi/build/Jamfile.v2 -=================================================================== ---- boost_1_65_0.orig/libs/mpi/build/Jamfile.v2 -+++ boost_1_65_0/libs/mpi/build/Jamfile.v2 -@@ -58,33 +58,13 @@ libraries += boost_mpi ; +--- boost_1_67_0.orig/libs/mpi/build/Jamfile.v2 ++++ boost_1_67_0/libs/mpi/build/Jamfile.v2 +@@ -60,33 +60,13 @@ libraries += boost_mpi ; if [ python.configured ] { @@ -132,7 +67,7 @@ Index: boost_1_65_0/libs/mpi/build/Jamfile.v2 shared:BOOST_MPI_DYN_LINK=1 shared:BOOST_MPI_PYTHON_DYN_LINK=1 shared:BOOST_PYTHON_DYN_LINK=1 -@@ -92,12 +72,12 @@ libraries += boost_mpi ; +@@ -94,12 +74,12 @@ libraries += boost_mpi ; -@$(BOOST_JAMROOT_MODULE)%$(BOOST_JAMROOT_MODULE).tag @$(BOOST_JAMROOT_MODULE)%$(BOOST_JAMROOT_MODULE).python-tag on:BOOST_DEBUG_PYTHON @@ -146,7 +81,7 @@ Index: boost_1_65_0/libs/mpi/build/Jamfile.v2 python-extension mpi : # Sources -@@ -114,8 +94,8 @@ libraries += boost_mpi ; +@@ -116,8 +96,8 @@ libraries += boost_mpi ; python/status.cpp python/py_timer.cpp : # Requirements @@ -157,7 +92,7 @@ Index: boost_1_65_0/libs/mpi/build/Jamfile.v2 boost_mpi /mpi//mpi [ mpi.extra-requirements ] shared:BOOST_MPI_DYN_LINK=1 -@@ -123,16 +103,7 @@ libraries += boost_mpi ; +@@ -125,16 +105,7 @@ libraries += boost_mpi ; shared:BOOST_PYTHON_DYN_LINK=1 shared shared on:BOOST_DEBUG_PYTHON @@ -174,3 +109,21 @@ Index: boost_1_65_0/libs/mpi/build/Jamfile.v2 } } else if ! ( --without-mpi in [ modules.peek : ARGV ] ) +Index: boost_1_67_0/libs/python/Jamfile +=================================================================== +--- boost_1_67_0.orig/libs/python/Jamfile ++++ boost_1_67_0/libs/python/Jamfile +@@ -36,9 +36,10 @@ local rule split-version ( version ) + # For example, Boost.Python built for Python 2.7 uses the suffix "27" + rule version-suffix ( version ) + { +- local major-minor = [ split-version $(version) ] ; +- local suffix = $(major-minor:J="") ; +- return $(suffix) ; ++ # local major-minor = [ split-version $(version) ] ; ++ # local suffix = $(major-minor:J="") ; ++ # return $(suffix) ; ++ return "" ; + } + +