From 59105c3f6106fcab13ee5f54ead3afd33428d370 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Schr=C3=B6ter?= Date: Tue, 2 Jan 2024 09:27:46 +0100 Subject: [PATCH] Sync from SUSE:ALP:Source:Standard:1.0 boost revision dce21f69ca4f4a45372b311ef7776a61 --- .gitattributes | 23 + README.boost-devel | 4 + __init__.py | 1 + _constraints | 14 + _multibuild | 8 + baselibs.conf | 27 + ...0-python-test-PyImport_AppendInittab.patch | 87 + boost-1.57.0-python-abi_letters.patch | 82 + boost-aarch64-flags.patch | 12 + boost-no_type_punning.patch | 144 + boost-pool_check_overflow.patch | 36 + boost-process.patch | 23 + boost-remove-cmakedir.patch | 30 + boost-rpmlintrc | 14 + boost-rpmoptflags-only.patch | 31 + boost-strict_aliasing.patch | 12 + boost-thread.patch | 13 + boost-use_std_xml_catalog.patch | 46 + boost.changes | 2551 +++++++++++++++++ boost.spec | 2116 ++++++++++++++ boost_1_56_pdf.tar.bz2 | 3 + boost_1_84_0.tar.bz2 | 3 + dynamic_linking.patch | 110 + exception.objdump | 1 + existing_extra_docs | 470 +++ python_library_name.patch | 58 + python_mpi.patch | 27 + symbol_diff.sh | 21 + 28 files changed, 5967 insertions(+) create mode 100644 .gitattributes create mode 100644 README.boost-devel create mode 100644 __init__.py create mode 100644 _constraints create mode 100644 _multibuild create mode 100644 baselibs.conf create mode 100644 boost-1.55.0-python-test-PyImport_AppendInittab.patch create mode 100644 boost-1.57.0-python-abi_letters.patch create mode 100644 boost-aarch64-flags.patch create mode 100644 boost-no_type_punning.patch create mode 100644 boost-pool_check_overflow.patch create mode 100644 boost-process.patch create mode 100644 boost-remove-cmakedir.patch create mode 100644 boost-rpmlintrc create mode 100644 boost-rpmoptflags-only.patch create mode 100644 boost-strict_aliasing.patch create mode 100644 boost-thread.patch create mode 100644 boost-use_std_xml_catalog.patch create mode 100644 boost.changes create mode 100644 boost.spec create mode 100644 boost_1_56_pdf.tar.bz2 create mode 100644 boost_1_84_0.tar.bz2 create mode 100644 dynamic_linking.patch create mode 100644 exception.objdump create mode 100644 existing_extra_docs create mode 100644 python_library_name.patch create mode 100644 python_mpi.patch create mode 100644 symbol_diff.sh diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..fecc750 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/README.boost-devel b/README.boost-devel new file mode 100644 index 0000000..152efd4 --- /dev/null +++ b/README.boost-devel @@ -0,0 +1,4 @@ +boost-devel has been split up into individual packages for simpler +product management. Please stop depending explicitly on boost-devel +and depend on individual boost -devel packages + diff --git a/__init__.py b/__init__.py new file mode 100644 index 0000000..fdffa2a --- /dev/null +++ b/__init__.py @@ -0,0 +1 @@ +# placeholder diff --git a/_constraints b/_constraints new file mode 100644 index 0000000..833d8a3 --- /dev/null +++ b/_constraints @@ -0,0 +1,14 @@ + + + + + 2000 + + + 5 + + + kvm + SLOW_CPU + + diff --git a/_multibuild b/_multibuild new file mode 100644 index 0000000..2b7b0c1 --- /dev/null +++ b/_multibuild @@ -0,0 +1,8 @@ + + base + extra + gnu-hpc + gnu-openmpi4-hpc + gnu-mvapich2-hpc + gnu-mpich-hpc + diff --git a/baselibs.conf b/baselibs.conf new file mode 100644 index 0000000..c9b93fd --- /dev/null +++ b/baselibs.conf @@ -0,0 +1,27 @@ +libboost_atomic1_84_0 +libboost_container1_84_0 +libboost_context1_84_0 +libboost_coroutine1_84_0 +libboost_date_time1_84_0 +libboost_fiber1_84_0 +libboost_filesystem1_84_0 +libboost_graph1_84_0 +libboost_graph_parallel1_84_0 +libboost_iostreams1_84_0 +libboost_locale1_84_0 +libboost_math1_84_0 +libboost_mpi1_84_0 +libboost_nowide1_84_0 +libboost_test1_84_0 +libboost_program_options1_84_0 +libboost_python-py3-1_84_0 +libboost_random1_84_0 +libboost_serialization1_84_0 +libboost_stacktrace1_84_0 +libboost_system1_84_0 +libboost_thread1_84_0 +libboost_type_erasure1_84_0 +libboost_wave1_84_0 +libboost_url1_84_0 +libboost_regex1_84_0 +libboost_json1_84_0 diff --git a/boost-1.55.0-python-test-PyImport_AppendInittab.patch b/boost-1.55.0-python-test-PyImport_AppendInittab.patch new file mode 100644 index 0000000..b96121e --- /dev/null +++ b/boost-1.55.0-python-test-PyImport_AppendInittab.patch @@ -0,0 +1,87 @@ +Index: boost_1_63_0/libs/python/test/exec.cpp +=================================================================== +--- boost_1_63_0.orig/libs/python/test/exec.cpp ++++ boost_1_63_0/libs/python/test/exec.cpp +@@ -56,8 +56,24 @@ void eval_test() + BOOST_TEST(value == "ABCDEFG"); + } + ++struct PyCtx ++{ ++ PyCtx() { ++ Py_Initialize(); ++ } ++ ++ ~PyCtx() { ++ // N.B. certain problems may arise when Py_Finalize is called when ++ // using Boost.Python. However in this test suite it all seems to ++ // work fine. ++ Py_Finalize(); ++ } ++}; ++ + void exec_test() + { ++ PyCtx ctx; ++ + // Retrieve the main module + python::object main = python::import("__main__"); + +@@ -138,6 +154,19 @@ void check_pyerr(bool pyerr_expected=fal + } + } + ++template ++bool ++run_and_handle_exception(Cb cb, bool pyerr_expected = false) ++{ ++ PyCtx ctx; ++ if (python::handle_exception(cb)) { ++ check_pyerr(pyerr_expected); ++ return true; ++ } else { ++ return false; ++ } ++} ++ + int main(int argc, char **argv) + { + BOOST_TEST(argc == 2 || argc == 3); +@@ -156,29 +185,19 @@ int main(int argc, char **argv) + "builtin modules"); + } + +- // Initialize the interpreter +- Py_Initialize(); +- +- if (python::handle_exception(eval_test)) { ++ // N.B. exec_test mustn't be called through run_and_handle_exception ++ // as it needs to handles the python context by itself. ++ if (run_and_handle_exception(eval_test) ++ || python::handle_exception(exec_test)) + check_pyerr(); +- } +- else if(python::handle_exception(exec_test)) { +- check_pyerr(); +- } +- else if (python::handle_exception(boost::bind(exec_file_test, script))) { +- check_pyerr(); +- } +- +- if (python::handle_exception(exec_test_error)) +- { +- check_pyerr(/*pyerr_expected*/ true); +- } + else +- { ++ run_and_handle_exception(boost::bind(exec_file_test, script)); ++ ++ if (!run_and_handle_exception(exec_test_error, true)) + BOOST_ERROR("Python exception expected, but not seen."); +- } + + if (argc > 2) { ++ PyCtx ctx; + // The main purpose is to test compilation. Since this test generates + // a file and I (rwgk) am uncertain about the side-effects, run it only + // if explicitly requested. diff --git a/boost-1.57.0-python-abi_letters.patch b/boost-1.57.0-python-abi_letters.patch new file mode 100644 index 0000000..1360e56 --- /dev/null +++ b/boost-1.57.0-python-abi_letters.patch @@ -0,0 +1,82 @@ +Index: boost_1_80_0/tools/build/src/tools/python.jam +=================================================================== +--- boost_1_80_0.orig/tools/build/src/tools/python.jam ++++ boost_1_80_0/tools/build/src/tools/python.jam +@@ -102,7 +102,7 @@ py3-version = ; + # using python : 2.3 : /usr/local/bin/python ; + # + rule init ( version ? : cmd-or-prefix ? : includes * : libraries ? +- : condition * : extension-suffix ? ) ++ : condition * : extension-suffix ? : abi-letters ? ) + { + project.push-current $(.project) ; + +@@ -115,7 +115,7 @@ rule init ( version ? : cmd-or-prefix ? + } + } + +- configure $(version) : $(cmd-or-prefix) : $(includes) : $(libraries) : $(condition) : $(extension-suffix) ; ++ configure $(version) : $(cmd-or-prefix) : $(includes) : $(libraries) : $(condition) : $(extension-suffix) : $(abi-letters) ; + + project.pop-current ; + } +@@ -510,7 +510,7 @@ local rule probe ( python-cmd ) + # have a value based on the information given. + # + local rule compute-default-paths ( target-os : version ? : prefix ? : +- exec-prefix ? ) ++ exec-prefix ? : abi-letters ? ) + { + exec-prefix ?= $(prefix) ; + +@@ -677,7 +677,7 @@ rule version-suffix ( version ) + + # Declare a target to represent Python's library. + # +-local rule declare-libpython-target ( version ? : requirements * ) ++local rule declare-libpython-target ( version ? : requirements * : abi-letters ? ) + { + # Compute the representation of Python version in the name of Python's + # library file. +@@ -701,13 +701,13 @@ local rule declare-libpython-target ( ve + } + + # Declare it. +- lib python.lib : : python$(lib-version) $(requirements) ; ++ lib python.lib : : python$(lib-version)$(abi-letters) $(requirements) ; + } + + + # Implementation of init. + local rule configure ( version ? : cmd-or-prefix ? : includes * : libraries ? : +- condition * : extension-suffix ? ) ++ condition * : extension-suffix ? : abi-letters ? ) + { + local prefix ; + local exec-prefix ; +@@ -723,6 +723,7 @@ local rule configure ( version ? : cmd-o + extension-suffix ?= _d ; + } + extension-suffix ?= "" ; ++ abi-letters ?= "" ; + + local cmds-to-try ; + +@@ -798,7 +799,7 @@ local rule configure ( version ? : cmd-o + exec-prefix = $(sys.exec_prefix) ; + + compute-default-paths $(target-os) : $(sys.version) : +- $(sys.prefix) : $(sys.exec_prefix) ; ++ $(sys.prefix) : $(sys.exec_prefix) : $(sys.abi_letters) ; + + version = $(sys.version) ; + interpreter-cmd ?= $(cmd) ; +@@ -979,7 +980,7 @@ local rule configure ( version ? : cmd-o + } + else + { +- declare-libpython-target $(version) : $(target-requirements) ; ++ declare-libpython-target $(version) : $(target-requirements) : $(abi-letters) ; + + # This is an evil hack. On, Windows, when Python is embedded, nothing + # seems to set up sys.path to include Python's standard library diff --git a/boost-aarch64-flags.patch b/boost-aarch64-flags.patch new file mode 100644 index 0000000..2759467 --- /dev/null +++ b/boost-aarch64-flags.patch @@ -0,0 +1,12 @@ +Index: boost_1_80_0/tools/build/src/tools/gcc.jam +=================================================================== +--- boost_1_80_0.orig/tools/build/src/tools/gcc.jam ++++ boost_1_80_0/tools/build/src/tools/gcc.jam +@@ -371,7 +371,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-no_type_punning.patch b/boost-no_type_punning.patch new file mode 100644 index 0000000..cf634e5 --- /dev/null +++ b/boost-no_type_punning.patch @@ -0,0 +1,144 @@ +Index: libs/python/src/dict.cpp +=================================================================== +--- libs/python/src/dict.cpp.orig ++++ libs/python/src/dict.cpp +@@ -28,9 +28,9 @@ namespace + + detail::new_reference dict_base::call(object const& arg_) + { ++ union { PyTypeObject *ptop; PyObject *pop; }pun = { &PyDict_Type }; + return (detail::new_reference)PyObject_CallFunction( +- (PyObject*)&PyDict_Type, const_cast("(O)"), +- arg_.ptr()); ++ pun.pop, const_cast("(O)"), arg_.ptr()); + } + + dict_base::dict_base() +Index: libs/python/src/list.cpp +=================================================================== +--- libs/python/src/list.cpp.orig ++++ libs/python/src/list.cpp +@@ -10,11 +10,11 @@ namespace boost { namespace python { nam + + detail::new_non_null_reference list_base::call(object const& arg_) + { ++ union{ PyTypeObject *ptop; PyObject *pop; }pun = { &PyList_Type }; + return (detail::new_non_null_reference) + (expect_non_null)( + PyObject_CallFunction( +- (PyObject*)&PyList_Type, const_cast("(O)"), +- arg_.ptr())); ++ pun.pop, const_cast("(O)"), arg_.ptr())); + } + + list_base::list_base() +Index: libs/python/src/long.cpp +=================================================================== +--- libs/python/src/long.cpp.orig ++++ libs/python/src/long.cpp +@@ -8,16 +8,16 @@ namespace boost { namespace python { nam + + new_reference long_base::call(object const& arg_) + { ++ union { PyTypeObject *ptop; PyObject *pop; }pun = { &PyLong_Type }; + return (detail::new_reference)PyObject_CallFunction( +- (PyObject*)&PyLong_Type, const_cast("(O)"), +- arg_.ptr()); ++ pun.pop, const_cast("(O)"), arg_.ptr()); + } + + new_reference long_base::call(object const& arg_, object const& base) + { ++ union { PyTypeObject *ptop; PyObject *pop; }pun = { &PyLong_Type }; + return (detail::new_reference)PyObject_CallFunction( +- (PyObject*)&PyLong_Type, const_cast("(OO)"), +- arg_.ptr(), base.ptr()); ++ pun.pop, const_cast("(OO)"), arg_.ptr(), base.ptr()); + } + + long_base::long_base() +@@ -25,7 +25,12 @@ long_base::long_base() + detail::new_reference( + PyObject_CallFunction((PyObject*)&PyLong_Type, const_cast("()"))) + ) +-{} ++{ ++ union { PyTypeObject *ptop; PyObject *pop; }pun = { &PyLong_Type }; ++ object(detail::new_reference( ++ PyObject_CallFunction(pun.pop, const_cast("()")))); ++} ++ + + long_base::long_base(object_cref arg) + : object(long_base::call(arg)) +Index: libs/python/src/object/class.cpp +=================================================================== +--- libs/python/src/object/class.cpp.orig ++++ libs/python/src/object/class.cpp +@@ -612,9 +612,11 @@ namespace objects + void class_base::add_property( + char const* name, object const& fget, char const* docstr) + { ++ union { PyTypeObject *ptop; PyObject *pop; }pun = { &PyProperty_Type }; ++ + object property( + (python::detail::new_reference) +- PyObject_CallFunction((PyObject*)&PyProperty_Type, const_cast("Osss"), fget.ptr(), (char*)NULL, (char*)NULL, docstr)); ++ PyObject_CallFunction(pun.pop, const_cast("Osss"), fget.ptr(), (char*)NULL, (char*)NULL, docstr)); + + this->setattr(name, property); + } +@@ -622,9 +624,11 @@ namespace objects + void class_base::add_property( + char const* name, object const& fget, object const& fset, char const* docstr) + { ++ union { PyTypeObject *ptop; PyObject *pop; }pun = { &PyProperty_Type }; ++ + object property( + (python::detail::new_reference) +- PyObject_CallFunction((PyObject*)&PyProperty_Type, const_cast("OOss"), fget.ptr(), fset.ptr(), (char*)NULL, docstr)); ++ PyObject_CallFunction(pun.pop, const_cast("OOss"), fget.ptr(), fset.ptr(), (char*)NULL, docstr)); + + this->setattr(name, property); + } +Index: libs/python/src/str.cpp +=================================================================== +--- libs/python/src/str.cpp.orig ++++ libs/python/src/str.cpp +@@ -9,14 +9,14 @@ namespace boost { namespace python { nam + + detail::new_reference str_base::call(object const& arg_) + { +- return (detail::new_reference)PyObject_CallFunction( + #if PY_VERSION_HEX >= 0x03000000 +- (PyObject*)&PyUnicode_Type, ++ union { PyTypeObject *ptop; PyObject *pop; }pun = { &PyUnicode_Type }; + #else +- (PyObject*)&PyString_Type, ++ union { PyTypeObject *ptop; PyObject *pop; }pun = { &PyString_Type }; + #endif +- const_cast("(O)"), +- arg_.ptr()); ++ ++ return (detail::new_reference)PyObject_CallFunction( ++ pun.pop, const_cast("(O)"), arg_.ptr()); + } + + str_base::str_base() +Index: libs/python/src/tuple.cpp +=================================================================== +--- libs/python/src/tuple.cpp.orig ++++ libs/python/src/tuple.cpp +@@ -8,9 +8,10 @@ namespace boost { namespace python { nam + + detail::new_reference tuple_base::call(object const& arg_) + { ++ union { PyTypeObject *ptop; PyObject *pop; }pun = { &PyTuple_Type }; ++ + return (detail::new_reference)PyObject_CallFunction( +- (PyObject*)&PyTuple_Type, const_cast("(O)"), +- arg_.ptr()); ++ pun.pop, const_cast("(O)"), arg_.ptr()); + } + + tuple_base::tuple_base() diff --git a/boost-pool_check_overflow.patch b/boost-pool_check_overflow.patch new file mode 100644 index 0000000..a0006c7 --- /dev/null +++ b/boost-pool_check_overflow.patch @@ -0,0 +1,36 @@ +Upstream URL: https://svn.boost.org/trac/boost/ticket/6701 + +Check that request size doesn't overflow. + +Index: boost/pool/pool.hpp +=================================================================== +--- boost/pool/pool.hpp.orig ++++ boost/pool/pool.hpp +@@ -10,6 +10,8 @@ + #define BOOST_POOL_HPP + + #include // for workarounds ++// std::numeric_limits ++#include + + // std::less, std::less_equal, std::greater + #include +@@ -806,6 +808,9 @@ void * pool::ordered_mall + if (n > max_chunks()) + return 0; + ++ if (requested_size && (n > (std::numeric_limits::max)() / requested_size)) ++ return 0; ++ + const size_type partition_size = alloc_size(); + const size_type total_req_size = n * requested_size; + const size_type num_chunks = total_req_size / partition_size + +@@ -988,6 +993,8 @@ public: + { + if(max_alloc_size && (n > max_alloc_size)) + return 0; ++ if(chunk_size && (n > (std::numeric_limits::max)() / chunk_size)) ++ return 0; + void* ret = (user_allocator::malloc)(chunk_size * n); + used_list.insert(ret); + return ret; diff --git a/boost-process.patch b/boost-process.patch new file mode 100644 index 0000000..d9b4f31 --- /dev/null +++ b/boost-process.patch @@ -0,0 +1,23 @@ +From e08374ed95ac33865bda40602c94909e7cd9607f Mon Sep 17 00:00:00 2001 +From: Eddie-cz <48474051+Eddie-cz@users.noreply.github.com> +Date: Mon, 2 Aug 2021 10:49:42 +0200 +Subject: [PATCH] Update wchar_t.hpp + +--- + include/boost/process/detail/traits/wchar_t.hpp | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/include/boost/process/detail/traits/wchar_t.hpp b/include/boost/process/detail/traits/wchar_t.hpp +index 812a92c..98026d3 100644 +--- a/include/boost/process/detail/traits/wchar_t.hpp ++++ b/include/boost/process/detail/traits/wchar_t.hpp +@@ -12,6 +12,8 @@ + #include + #include + ++#include ++ + namespace boost { namespace process { namespace detail { + + //template + diff --git a/boost-remove-cmakedir.patch b/boost-remove-cmakedir.patch new file mode 100644 index 0000000..7682072 --- /dev/null +++ b/boost-remove-cmakedir.patch @@ -0,0 +1,30 @@ +Index: boost_1_80_0/tools/boost_install/boost-install.jam +=================================================================== +--- boost_1_80_0.orig/tools/boost_install/boost-install.jam ++++ boost_1_80_0/tools/boost_install/boost-install.jam +@@ -753,25 +753,6 @@ rule generate-cmake-config- ( target : s + "get_filename_component(_BOOST_CMAKEDIR \"${CMAKE_CURRENT_LIST_DIR}/../\" REALPATH)" + : true ; + +- if [ path.is-rooted $(cmakedir) ] +- { +- local cmakedir-native = [ path-native-fwd $(cmakedir) ] ; +- +- print.text +- +- "" +- "# If the computed and the original directories are symlink-equivalent, use original" +- "if(EXISTS \"$(cmakedir-native)\")" +- " get_filename_component(_BOOST_CMAKEDIR_ORIGINAL \"$(cmakedir-native)\" REALPATH)" +- " if(_BOOST_CMAKEDIR STREQUAL _BOOST_CMAKEDIR_ORIGINAL)" +- " set(_BOOST_CMAKEDIR \"$(cmakedir-native)\")" +- " endif()" +- " unset(_BOOST_CMAKEDIR_ORIGINAL)" +- "endif()" +- "" +- : true ; +- } +- + get-dir "_BOOST_INCLUDEDIR" : $(includedir) ; + + if $(library-type) = INTERFACE diff --git a/boost-rpmlintrc b/boost-rpmlintrc new file mode 100644 index 0000000..0f4dc07 --- /dev/null +++ b/boost-rpmlintrc @@ -0,0 +1,14 @@ +# This line is mandatory to access the configuration functions +from Config import * + +addFilter("boost.* shlib-policy-nonversioned-dir") +addFilter("boost.* shlib-policy-missing-suffix") +addFilter("boost-doc.* devel-dependency") +addFilter("boost.* rpm-buildroot-usage") +addFilter("boost.* explicit-lib-dependency") +addFilter("boost.* filename-too-long-for-joliet") +addFilter("boost.* no-binary") +addFilter("boost.* static-library-without-debuginfo") +addFilter("boost.* obsolete-suse-version-check") +addFilter("boost.* shlib-unversioned-lib") +addFilter("boost.* no-dependency-on") diff --git a/boost-rpmoptflags-only.patch b/boost-rpmoptflags-only.patch new file mode 100644 index 0000000..d7671e2 --- /dev/null +++ b/boost-rpmoptflags-only.patch @@ -0,0 +1,31 @@ +Index: tools/build/src/tools/gcc.jam +=================================================================== +--- tools/build/src/tools/gcc.jam.orig ++++ tools/build/src/tools/gcc.jam +@@ -623,17 +623,17 @@ actions compile.c.pch + ### + + # Declare flags and action for compilation. +-toolset.flags gcc.compile OPTIONS off : -O0 ; +-toolset.flags gcc.compile OPTIONS speed : -O3 ; +-toolset.flags gcc.compile OPTIONS space : -Os ; +-toolset.flags gcc.compile OPTIONS minimal : -O1 ; +-toolset.flags gcc.compile OPTIONS debug : -Og ; ++toolset.flags gcc.compile OPTIONS off : ; ++toolset.flags gcc.compile OPTIONS speed : ; ++toolset.flags gcc.compile OPTIONS space : ; ++toolset.flags gcc.compile OPTIONS minimal : ; ++toolset.flags gcc.compile OPTIONS debug : ; + +-toolset.flags gcc.compile OPTIONS off : -fno-inline ; +-toolset.flags gcc.compile OPTIONS on : -Wno-inline ; +-toolset.flags gcc.compile OPTIONS full : -finline-functions -Wno-inline ; ++toolset.flags gcc.compile OPTIONS off : ; ++toolset.flags gcc.compile OPTIONS on : ; ++toolset.flags gcc.compile OPTIONS full : ; + +-toolset.flags gcc.compile OPTIONS off : -w ; ++toolset.flags gcc.compile OPTIONS off : ; + toolset.flags gcc.compile OPTIONS on : -Wall ; + toolset.flags gcc.compile OPTIONS all : -Wall ; + toolset.flags gcc.compile OPTIONS extra : -Wall -Wextra ; diff --git a/boost-strict_aliasing.patch b/boost-strict_aliasing.patch new file mode 100644 index 0000000..f0034b4 --- /dev/null +++ b/boost-strict_aliasing.patch @@ -0,0 +1,12 @@ +Index: libs/python/build/Jamfile +=================================================================== +--- libs/python/build/Jamfile.orig ++++ libs/python/build/Jamfile +@@ -94,6 +94,7 @@ lib boost_python + on:BOOST_DEBUG_PYTHON + -@$(BOOST_JAMROOT_MODULE)%$(BOOST_JAMROOT_MODULE).tag + @python-tag ++ -fno-strict-aliasing + @python.require-py + + : # default build diff --git a/boost-thread.patch b/boost-thread.patch new file mode 100644 index 0000000..80829eb --- /dev/null +++ b/boost-thread.patch @@ -0,0 +1,13 @@ +Index: boost_1_58_0/boost/config/compiler/gcc.hpp +=================================================================== +--- boost_1_58_0.orig/boost/config/compiler/gcc.hpp ++++ boost_1_58_0/boost/config/compiler/gcc.hpp +@@ -73,7 +73,7 @@ + // those platforms where we can know for sure). It will get turned off again + // later if no threading API is detected. + // +-#if !defined(__MINGW32__) && !defined(linux) && !defined(__linux) && !defined(__linux__) ++#if !defined(__MINGW32__) + # define BOOST_HAS_THREADS + #endif + diff --git a/boost-use_std_xml_catalog.patch b/boost-use_std_xml_catalog.patch new file mode 100644 index 0000000..e83e190 --- /dev/null +++ b/boost-use_std_xml_catalog.patch @@ -0,0 +1,46 @@ +Index: boost_1_74_0/tools/build/src/tools/boostbook.jam +=================================================================== +--- boost_1_74_0.orig/tools/build/src/tools/boostbook.jam ++++ boost_1_74_0/tools/build/src/tools/boostbook.jam +@@ -546,40 +546,7 @@ rule generate-xml-catalog ( target : sou + " " + : true ; + +- local docbook-xsl-dir = [ boostbook.docbook-xsl-dir ] ; +- if ! $(docbook-xsl-dir) +- { +- ECHO "BoostBook warning: no DocBook XSL directory specified." ; +- ECHO " If you have the DocBook XSL stylesheets installed, please " ; +- ECHO " set DOCBOOK_XSL_DIR to the stylesheet directory on either " ; +- ECHO " the command line (via -sDOCBOOK_XSL_DIR=...) or in a " ; +- ECHO " Boost.Jam configuration file. The DocBook XSL stylesheets " ; +- ECHO " are available here: http://docbook.sourceforge.net/ " ; +- ECHO " Stylesheets will be downloaded on-the-fly (very slow!) " ; +- } +- else +- { +- docbook-xsl-dir = [ format-catalog-path $(docbook-xsl-dir) ] ; +- print.text " " ; +- } +- +- local docbook-dtd-dir = [ boostbook.docbook-dtd-dir ] ; +- if ! $(docbook-dtd-dir) +- { +- ECHO "BoostBook warning: no DocBook DTD directory specified." ; +- ECHO " If you have the DocBook DTD installed, please set " ; +- ECHO " DOCBOOK_DTD_DIR to the DTD directory on either " ; +- ECHO " the command line (via -sDOCBOOK_DTD_DIR=...) or in a " ; +- ECHO " Boost.Jam configuration file. The DocBook DTD is available " ; +- ECHO " here: http://www.oasis-open.org/docbook/xml/4.2/index.shtml" ; +- ECHO " The DTD will be downloaded on-the-fly (very slow!) " ; +- } +- else +- { +- docbook-dtd-dir = [ format-catalog-path $(docbook-dtd-dir) ] ; +- print.text " " ; +- } +- ++ print.text " " ; + print.text "" ; + } + diff --git a/boost.changes b/boost.changes new file mode 100644 index 0000000..2a18929 --- /dev/null +++ b/boost.changes @@ -0,0 +1,2551 @@ +------------------------------------------------------------------- +Thu Dec 14 08:43:05 CET 2023 - aschnell@suse.com + +- update to 1.84.0 + * new libraries: + + Cobalt (single-threaded asynchronicity framework) + + Redis (implements protocol RESP3) + * for details on all changes see, + https://www.boost.org/users/history/version_1_84_0.html +- drop boost-phoenix-revert-std-tuple-support.patch (upstream) +- drop boost-mpi-noreturn.patch (upstream) + +------------------------------------------------------------------- +Thu Oct 26 14:08:59 UTC 2023 - Nicolas Morey + +- Fix build for gnu-mpich-hpc broken by previous update + +------------------------------------------------------------------- +Tue Oct 24 08:09:17 UTC 2023 - Nicolas Morey + +- Drop support for obsolete openmpi[123] +- Prepare support for openmpi5 + +------------------------------------------------------------------- +Tue Sep 05 07:39:53 CEST 2023 - aschnell@suse.com + +- update to 1.83.0 + * new libraries: + + Compat - Header-only Library. + * for details on all changes see, + https://www.boost.org/users/history/version_1_83_0.html +- dynamic_linking.patch: updated +- boost-mpi-noreturn.patch: added + +------------------------------------------------------------------- +Thu Apr 20 10:04:18 CEST 2023 - aschnell@suse.com + +- update to 1.82.0 + * new libraries: + + MySQL - MySQL Header-only Library. + * for details on all changes see, + https://www.boost.org/users/history/version_1_82_0.html + +------------------------------------------------------------------- +Wed Mar 8 19:11:00 UTC 2023 - Martin Pluskal + +- Build AVX2 enabled hwcaps library for x86_64-v3 + +------------------------------------------------------------------- +Sat Jan 28 22:01:20 UTC 2023 - Dirk Müller + +- add boost-phoenix-revert-std-tuple-support.patch to fix + libetonyek and others build that use boost::phoenix + +------------------------------------------------------------------- +Wed Dec 14 18:00:01 CET 2022 - Arvin Schnell + +- update to 1.81.0 + * new libraries: + + URL - URL Library + * for details on all changes see, + https://www.boost.org/users/history/version_1_81_0.html + +------------------------------------------------------------------- +Mon Dec 12 08:58:58 UTC 2022 - Dirk Müller + +- switch to pkgconfig(zlib) so that alternative providers can be + used + +------------------------------------------------------------------- +Mon Aug 22 14:19:58 UTC 2022 - Adam Majer + +- ppc64le: added some new math libraries (bsc#1202594) + +------------------------------------------------------------------- +Wed Aug 17 21:05:02 UTC 2022 - Dirk Müller + +- update to 1.80.0: + * no new libraries + * for details on all the long list of changes, see + https://www.boost.org/users/history/version_1_80_0.html +- drop 0001-json-array-erase-relocate.patch + boost-mp-locale-fix.patch: upstream + +------------------------------------------------------------------- +Sun May 29 12:51:47 UTC 2022 - Stefan Brüns + +- Fix failing conversion of cpp_dec_float to double, depending on + locale (gh#boostorg/multiprecision#464, boo#1199968). + Add boost-mp-locale-fix.patch + +------------------------------------------------------------------- +Fri Apr 15 00:23:22 UTC 2022 - Dirk Müller + +- update to 1.79.0: + * no new libraries + * for details on all changes see, + https://www.boost.org/users/history/version_1_79_0.html +- add 0001-json-array-erase-relocate.patch +- drop 0001-b2-fix-install.patch (obsolete) + +------------------------------------------------------------------- +Fri Mar 11 15:11:05 CET 2022 - aschnell@suse.com + +- add dependency on libzstd and libzstd-devel to get on-the-fly + zstd compression in boost-iostreams + +------------------------------------------------------------------- +Tue Dec 21 09:08:17 CET 2021 - aschnell@suse.com + +- update to 1.78.0: + * for details on all changes see, + https://www.boost.org/users/history/version_1_78_0.html +- boost-math.patch: removed +- 0001-b2-fix-install.patch: added from upstream + +------------------------------------------------------------------- +Mon Oct 25 19:15:41 UTC 2021 - Matthias Mailänder + +- Fix boost nowide development not requiring the library itself + +------------------------------------------------------------------- +Thu Oct 21 10:37:47 CEST 2021 - aschnell@suse.com + +- make boost-json-devel require boost-container-devel (bsc#1191822) + +------------------------------------------------------------------- +Fri Sep 17 08:29:43 CEST 2021 - aschnell@suse.com + +- update to 1.77.0: + * new libraries: + + Describe - Reflection Library + + Lambda2 - Lambda Library + * for details on all changes see, + https://www.boost.org/users/history/version_1_77_0.html +- dynamic_linking.patch: updated +- boost-math.patch and boost-process.patch: added from upstream + +------------------------------------------------------------------- +Tue Jun 1 06:43:16 UTC 2021 - Haochuan Chen + +- Compile boost iostreams with lzma support for reading .xz files + +------------------------------------------------------------------- +Sat May 8 16:29:23 UTC 2021 - Dirk Müller + +- use https:// in spec file + +------------------------------------------------------------------- +Wed May 5 18:18:21 UTC 2021 - Andreas Schwab + +- Also exclude libboost_math_c99l and libboost_math_tr1l on ppc + +------------------------------------------------------------------- +Wed Apr 28 09:10:23 UTC 2021 - Michel Normand + +- Remove libboost_math_c99l.so* libboost_math_tr1l.so* in spec file + for PowerPC compiled w/ BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS + +------------------------------------------------------------------- +Mon Apr 19 11:20:53 CEST 2021 - aschnell@suse.com + +- update to 1.76.0: + * for details on all changes see, + https://www.boost.org/users/history/version_1_76_0.html +- remove boost-disable-pch-on-aarch64.patch, compile bug seems + to be fixed meanwhile +- baselibs.conf: updated to new version + +------------------------------------------------------------------- +Tue Feb 9 14:23:32 UTC 2021 - Adam Majer + +- Fix HPC build on ARM. It seems boost_serialization libraries + are no longer implicitly build with this setup. + +------------------------------------------------------------------- +Sat Feb 6 12:09:28 UTC 2021 - Egbert Eich + +- Add build support for gcc10 to HPC build (bsc#1174439). +- Add openmpi4 flavors (jsc#SLE-16462). + +------------------------------------------------------------------- +Mon Dec 28 15:09:51 UTC 2020 - Adam Majer + +- Log additional information during build +- Add missing dependencies in libboost_iostream-devel (bsc#1180359) + +------------------------------------------------------------------- +Wed Dec 23 11:04:47 UTC 2020 - Adam Majer + +- libboost_nowide now uses same pattern of Provides/Conflicts + and version numbers as other Boost libraries +- Add missing conflicts for Boost 1.66 +- Boost.Build (jam) implementation is now obsoletes older versions + +------------------------------------------------------------------- +Thu Dec 17 10:42:56 UTC 2020 - Adam Majer + +- Replace hardcoded python3.8 path in the spec file +- Add Conflicts with Boost 1.66 version in SLE15 since that version + uses different Provides. + +------------------------------------------------------------------- +Mon Dec 14 15:14:58 UTC 2020 - Adam Majer + +- update to 1.75.0: + * new library: + + Boost.JSON - JSON parsing library + + Boost.LEAF - error handling library + + Boost.PFR - basic reflection without macros or boilderplate code + * for details on all changes see, + https://www.boost.org/users/history/version_1_75_0.html + +- package boost's jam files so the Boost.Build is more usable +- python_library_name.patch: update it to remove python version + suffix and keep old sonames. We only support one python3 version + at a time. + +- refreshed patches: boost-no_type_punning.patch + boost-strict_aliasing.patch python_library_name.patch +- serialization_missing_includes.patch: upstreamed +- baselibs.conf: updated to new version + +------------------------------------------------------------------- +Tue Sep 29 12:20:56 UTC 2020 - Adam Majer + +- serialization_missing_includes.patch: Add additional missing + includes in the serialization library + +------------------------------------------------------------------- +Wed Sep 16 11:57:48 UTC 2020 - Adam Majer + +- serialization_missing_includes.patch: Add missing includes in the + serialization library (bsc#1176597) + +------------------------------------------------------------------- +Thu Sep 3 21:30:24 UTC 2020 - Berthold Gunreben + +- Enable context on s390x + +------------------------------------------------------------------- +Thu Aug 27 09:15:59 UTC 2020 - Dirk Mueller + +- fix nothing provides libboost_mpi_python-py3-1_74_0 + +------------------------------------------------------------------- +Fri Aug 21 20:06:18 UTC 2020 - Dirk Mueller + +- provide/obsolete boost-nowide 10.0.2 + +------------------------------------------------------------------- +Mon Aug 17 17:23:18 UTC 2020 - Dirk Mueller + +- update to 1.74.0: + * adds Boost.NoWide + * see https://www.boost.org/users/history/version_1_72_0.html + * see https://www.boost.org/users/history/version_1_73_0.html + * see https://www.boost.org/users/history/version_1_74_0.html +- remove riscv-support.patch, 3ecbf83f.patch (upstream) +- remove boost-visibility.patch, + boost-no_segfault_in_Regex_filter.patch (obsolete, will never go upstream) +- add boost-remove-cmakedir.patch (remove buildroot embedding in cmake files) +- remove python 2.7, it is 2020 after all + +------------------------------------------------------------------- +Thu Mar 12 10:18:33 UTC 2020 - Adam Majer + +- Fix packaging errors in cases where python2 is disabled and + unavailable. + +------------------------------------------------------------------- +Fri Feb 28 13:54:37 UTC 2020 - Egbert Eich + +- Fix macro which defines the name of the HPC python3 library + directory (bsc#1165277). +- Include headers and serial libs in the HPC MPI packages + (bsc#1165307). + +------------------------------------------------------------------- +Mon Jan 13 10:42:07 UTC 2020 - Christian Goll + +- removed hpc bjam package (boo#1160621) +- added gnu-hpc-openmpi3 and mpich flavor (boo#1160622) + +------------------------------------------------------------------- +Fri Dec 13 04:03:05 UTC 2019 - Stefan Brüns + +- Remove hardcoded abiflags (%py3_abiflags is not available for 3 + years), use python3-config instead. Fixes build with Python 3.8. + +------------------------------------------------------------------- +Fri Nov 8 15:21:03 UTC 2019 - Stefan Brüns + +- Make sure openmpi-macros-devel is not required for base flavor -- + consolidate build_mpi/mpi macro into just one. +- Remove BuildArch guards, no longer relevant since SuSE 11.2 + +------------------------------------------------------------------- +Thu Oct 3 14:13:20 UTC 2019 - Nicolas Morey-Chaisemartin + +- Use new openmpi-macros-devel package + +------------------------------------------------------------------- +Thu Sep 19 15:34:53 UTC 2019 - Andreas Schwab + +- Enable context on riscv64 +- riscv-support.patch: Add missing bits for riscv support + +------------------------------------------------------------------- +Wed Sep 18 15:38:24 UTC 2019 - Andreas Schwab + +- Make sure %{_libdir}/cmake is packaged also without openblas-devel + +------------------------------------------------------------------- +Wed Sep 11 11:47:40 UTC 2019 - Adam Majer + +- Update URL to reflect new location of Boost sources + +------------------------------------------------------------------- +Tue Sep 10 16:01:35 UTC 2019 - Adam Majer + +- Update to version 1.71.0 (jsc#SLE-8571) + Breaking changes: + * Uuid: MD5 name-based uuid generation was corrected to be identical + on all endian systems. Define BOOST_UUID_COMPAT_PRE_1_71_MD5 to + keep the result in a format compatible with 1.66 through 1.70. + This does not affect the default name-based uuid generation + which is based on SHA1 + + * Test: Boost.Test shows deprecation warnings if some very old + headers as deprecated. If you encounter such warnings, please + follow the indications: those headers will be removed in a future + release. + + New libraries: + * Variant2: A never-valueless, strong guarantee implementation + of std::variant + + Updated libraries: + * align, asio, any, beast, circular buffer, container, context, + conversion, core, dynamic bitset, endian, fiber, filesystem, + flyweight, histogram, iostreams, interprocess, intrusive, + legical cast, log, math, metaparse, move, multi array, + multi-index containers, outcome, parameter, ptrcontainer, + polycollection, smartptr, stacktrace, test, utility, uuid, + variant, yap + + For detailed changes see + https://www.boost.org/users/history/version_1_71_0.html + +- drop upstream patches no longer needed: + boost-1.57.0-python-libpython_dep.patch, + 0001-beast-fix-moved-from-executor.patch, + remove_boost_serialization_depends, cmake.patch + +- updated patches: boost-1.57.0-python-abi_letters.patch, + 3ecbf83f.patch + +------------------------------------------------------------------- +Tue May 28 13:22:30 UTC 2019 - Adam Majer + +- 3ecbf83f.patch: add upstream patch to build and install python-mpi + extention. +- remove_boost_serialization_depends.patch: workaround to build + python mpi extention + +------------------------------------------------------------------- +Mon May 13 13:25:24 UTC 2019 - Adam Majer + +- cmake.patch: add upstream patches making it more compatible with + cmake's FindBoost + +------------------------------------------------------------------- +Fri Apr 12 11:48:21 UTC 2019 - Adam Majer + +- Update to version 1.70.0 + + Breaking changes: + * beast - there were many API changes. For details, see upstream + release notes + + New libraries: + * outcome: A set of tools for reporting and handling function + failures in contexts where directly using exception handling + is unsuitable + * histogram: Fast and extensible multi-dimensional histograms + + Updated libraries: + * asio, beast, context, coroutine2, dynamic bitset, fiber, + filesystem, integer, log, math, mp11, multi-index containers, + multiprecision, polycollection, spirit, stacktrace, test, + typeindex, typetraits, variant and ublas. + + For detailed changes see + https://www.boost.org/users/history/version_1_70_0.html + +- 0001-beast-fix-moved-from-executor.patch: upstream patch to fix regresion +- boost-rpmoptflags-only.patch: refresh but don't disable all extra + warnings +- dynamic_linking.patch: refreshed +- baselibs.conf - updated to 1.70.0 + +------------------------------------------------------------------- +Fri Mar 8 14:57:09 UTC 2019 - Dominique Leuenberger + +- Do not build gnu-mvapich2-hpc and gnu-openmpi2-hpc flavors in + Staging areas. + +------------------------------------------------------------------- +Wed Mar 6 15:24:01 UTC 2019 - Adam Majer + +- Add missing build conditions for -extra flavour + +------------------------------------------------------------------- +Fri Feb 1 08:35:06 UTC 2019 - cgoll@suse.com + +- fixed hpc build for python3.7 + +------------------------------------------------------------------- +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 + +- Simplify _multibuild flavours + +------------------------------------------------------------------- +Fri Dec 14 01:26:04 UTC 2018 - adam.majer@suse.de + +- Update to version 1.69.0 + Breaking Changes: + + Logic: use explicit operator bool when available + + Boost.Signals removed + + New libraries: + * SafeNumerics: A library for guaranteed correct integer + arithmetic for C++14 and later + + Updated libraries: + Any, Asio, Assign, Beast, CircularBuffer, ConceptCheck, Context, + Core, Dynamic Bisect, Fiber, Filesystem, Flyweight, Function, + Geometry, Integer, Iostreams, Iterator, LexicalCast, Log, Math, + Mp11, MultiArray, Multi-index Containers, Multiprecision, + PolyCollection, Pool, Preprocessor, Rational, Spirit, + Stacktrace, System, Test, TypeIndex, Utility, Variant, YAP + + For complete changelog see + https://www.boost.org/users/history/version_1_69_0.html + +- python_library_name.patch: updated to leave Boost.MPI python + names unchanged. +- dynamic_linking.patch: refreshed +- baselibs.conf: updated to 1.69.0 +- cleanup spec file + * removed no-op conditionals + * appended -impl to all unversioned named Provides: to facilitate + introduction of boost-defaults. The defaults package will provide + upgrade path in Tumbleweed for -devel subpackages. + +------------------------------------------------------------------- +Mon Oct 1 12:36:07 UTC 2018 - schwab@suse.de + +- Stay with openmpi also on ppc + +------------------------------------------------------------------- +Wed Sep 12 12:17:23 UTC 2018 - aeszter@gwdg.de + +- Fix build on Leap < 15.0 + +------------------------------------------------------------------- +Fri Aug 10 12:48:51 UTC 2018 - adam.majer@suse.de + +- Update to version 1.68.0 + New libraries: + * YAP: An expression template library for C++14 and later + + Breaking changes since 1.67.0: + * uuid: sha1 detail namespace header redirection for backwards + compatibility was removed + * signals: Boost.Signals will be removed in the next release. + Boost.Signals was deprecated in version 1.54.0. + Transition to Boost.Signals2 now to avoid disruption. + + Updated libraries: Beast, Context, Coroutine2, Fiber, Fusion, + Geometry, GIL, Graph, Lexical Cast, Log, Math, + Multi-index containers, Optional, Predef, Program Options, + Python, Rational, System, Stacktrace, Test, TypeIndex and Uuid. + + For complete list of changes, see + https://www.boost.org/users/history/version_1_68_0.html +- refreshed patches: boost-no_type_punning.patch, + python_library_name.patch +- dropped: python_numpy_retfunc.patch - no longer needed + +------------------------------------------------------------------- +Tue Jul 3 11:53:07 UTC 2018 - adam.majer@suse.de + +- Re-enable python2 module build by default. Still too many things + depend on it. + +------------------------------------------------------------------- +Tue May 22 08:44:22 UTC 2018 - adam.majer@suse.de + +- fix packaging of Boost.Contract on s390 and other platforms + without Boost.Context support. +- fix build on older SLE SP by owning /usr/share/licenses directory + +------------------------------------------------------------------- +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 + +- Use %license instead of %doc [bsc#1082318] + +------------------------------------------------------------------- +Fri Jan 19 07:24:00 UTC 2018 - adam.majer@suse.de + +- Multibuild requires versioned Name: tag and doesn't seem to do + this automatically. (bnc#1076640) + +------------------------------------------------------------------- +Mon Dec 18 16:26:46 CET 2017 - adam.majer@suse.de + +- Update to version 1.66.0 + + Beast: new portable HTTP, WebSocket and network operations + using Boost.Asio. Header-only library. + + Callable Traits: new library and successor to + Boost.FunctionTypes. Header-only library. + + Mp11: new metaprogramming library + + Asio: + * implemented interface changes to reflect the Networking TS + (N4656) + * functions and classes that have been superseded by + Networking TS functionality have been deprecated. + * added support for customized handler tracking + * removed previously deprecated functions + + Atomic: improved compatibility with GCC 7. 128-bit operations + on x86_64 no longer require linking with compiled library. + + DateTime: Fixed an integral overflow that could cause incorrect + results when adding or subtracting many years from a date. + + Format: New format specifiers added and volatile arguments + can not be safely used with operator% + + Fusion: + * fix compile error with std::array + * remove circular preprocessor include + + PolyCollection: backported to GCC 4.8 and 4.9 with some + limitations + + Uuid: added RTF-4122 namespaces in boost::uuids::ns + + for complete changelog, see + http://www.boost.org/users/history/version_1_66_0.html + +- refreshed patches: boost-rpmoptflags-only.patch + +------------------------------------------------------------------- +Wed Nov 29 09:45:57 UTC 2017 - adam.majer@suse.de + +- re-enable Python 2 by default. It's still conditional, but + remains enabled by default. This can be disabled in project + config. + +------------------------------------------------------------------- +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 + +- Setup MPI environment prior to building boost. +- Switch to OpenMPI2 as OpenMPI1 is becoming deprecated. + +------------------------------------------------------------------- +Wed Sep 20 11:54:35 UTC 2017 - adam.majer@suse.de + +- New upstream version 1.65.1 + + config, fiber - Return a continuation from functions executed + by resume_with. + + stacktrace - Change preprocessor file extensions to work with + the installation system. + +- Changes in version 1.65.0 + + stacktrace - new library providing call sequence in human + readable format. + + polycollection - new library providing fast containers of + polymorphic objects, from Joaquín M López Muñoz. + + For full list of changes, see + http://www.boost.org/users/history/version_1_65_1.html +- 1d862615.patch: upstreamed and removed +- gcc_path.patch: obsolete, tr1 module is removed +- mpi_upstream.patch: upstreamed and removed +- boost-1.57.0-python-abi_letters.patch: refreshed +- python_library_name.patch: refreshed and reverted upstream + changes to mpi/build/Jamfile as we are building python2 and + python3 versions of MPI separately. +- baselibs.conf + + add libboost_stracktrace + + update to version 1.65.1 + +------------------------------------------------------------------- +Tue May 9 10:52:38 UTC 2017 - adam.majer@suse.de + +- 1d862615.patch: Fix regression caused by refactoring of + serialization code (bnc#1038083) + +------------------------------------------------------------------- +Mon May 8 11:31:17 UTC 2017 - adam.majer@suse.de + +- make python-numpy optional build dependency +- fix building of mpi python3 plugin + +------------------------------------------------------------------- +Thu Apr 20 13:52:20 EST 2017 - adam.majer@suse.de + +- New upstream version 1.64.0 + + process - new library providing cross platform methods to + - create child processes + - setup stream for child processes + - sync and async communication streams with children + - sync and async wait + - process termination + + geometry library had some breaking changes, + - ublas_transformer is renamed to matrix_transformer + - explicit modifier is added to constructors of rtree + index::dynamic_* parameters + - strategy::area::huiller replaced by strategy::area::spherical + + context library updates + - deprecated API:execution-context + - fixed bad assembly for fcontext on ppc64/sysv/elf + + Updated libraries: any, atomic, config, container, context, + conversion, core, coroutine2, fiber, hash, interprocess, + intrusive, lexicalcast, math, multi-index containers, + multiprecision, predef, program options, regex, smart pointers, + test ,typeindex, typetraits, unordered, variant + + for details, see + http://www.boost.org/users/history/version_1_64_0.html +- Build PyNumpy module + + add build requires on python-numpy +- test_lowcase.patch: upstreamed +- refreshed patches: boost-strict_aliasing.patch, gcc_path.patch, + python_mpi.patch +- mpi_upstream.patch: pending upstream fixes to OpenMPI build +- python_library_name.patch: we are building python versions in + different stagings so drop library renames. +- python_numpy_retfunc.patch: rpmlint fixes + +------------------------------------------------------------------- +Fri Feb 10 13:35:53 UTC 2017 - jmatejek@suse.com + +- update python macros + +------------------------------------------------------------------- +Fri Feb 3 15:58:17 UTC 2017 - adam.majer@suse.de + +- baselibs.conf: (re)add python 2.7 and 3.x libraries + +------------------------------------------------------------------- +Wed Jan 25 13:24:39 UTC 2017 - adam.majer@suse.de + +- Fix dependency typos. + +------------------------------------------------------------------- +Tue Jan 17 12:00:48 UTC 2017 - adam.majer@suse.de + +- test_lowcase.patch: downcase Boost::Test usage of uppercase + variables. VERSION was clashing with GNU Autotools define + resulting in compilation errors of various packages. +- recombine headers from various devel subpackages under the + libboost_headers-devel package. Not all usage of headers that + have compiled parts pull in their associated compiled symbols. +- general cleanup of the spec file from old, commented stuffs + +------------------------------------------------------------------- +Sun Jan 15 18:57:34 UTC 2017 - adam.majer@suse.de + +- remove non-existent dependency in the boost mpi python package + +------------------------------------------------------------------- +Wed Jan 4 12:31:56 UTC 2017 - adam.majer@suse.de + +- update to version 1.63.0 + * updated libraries: atomic, container, context, fiber, + fusion, geometry, hash, interprocess, intrusive, lexical cast, + log, metaparse, move, optional, phoenix, python, test, + typeindex, units, unordered + * see http://www.boost.org/users/history/version_1_63_0.html + for complete list of changes +- refresh patches + * boost-1.55.0-python-test-PyImport_AppendInittab.patch + * boost-strict_aliasing.patch, and enable -fno-strict-aliasing + for python module +- baselibs.conf: + * add libboost_locale + * rename python to include new soname +- remove python-2059618.patch, not needed +- make build condition --without buil_mpi work +- allow building without python3 bindings, for SLE11SP4 +- remove versioned build dependency on libicu-devel, apparently + not needed. +- split out the boost-devel package into individudal compiled + libraries and their -devel subpackages and libboost_headers-devel + package for header-only libraries. +- remove all the -mt.so symlinks, probably not needed anymore. +- ship MPI python bindings for both Python 2.7 and 3.x + * add python_mpi.patch to allow proper compiled library loading +- dynamic_linking.patch: first attempt to remove static library + generation during build process. + +------------------------------------------------------------------- +Tue Nov 8 13:32:31 UTC 2016 - adam.majer@suse.de + +- Revert upstream change that set default python version and + ignored user configuration. + python-2059618.patch (boo#1006584) + +------------------------------------------------------------------- +Thu Nov 3 12:20:52 UTC 2016 - jengelh@inai.de + +- Rectify groups and description + +------------------------------------------------------------------- +Fri Sep 30 12:13:02 UTC 2016 - adam.majer@suse.de + +- package boost-jam +- add missing ldconfig for libboost_type_erasure +- fix EOL encoding for documentation files + +------------------------------------------------------------------- +Thu Sep 29 10:56:49 UTC 2016 - adam.majer@suse.de + +- update to version 1.62.0 + * new library: fiber: framework for userland-threads/fibers + * new library: QVM: library for working with quaternions, + vectors and matrices of static size + * see http://www.boost.org/users/history/version_1_62_0.html + for complete changelog +- remove boost-fix_include_config.patch - upstreamed +- gcc_path.patch - fix GCC search paths (bnc#996917) + Boost assumes /usr/include/c++/x.y.z/ existence for GCC 4.x + onward while our version of GCC only has /usr/include/c++/x.y + for 4.x GCC and /usr/include/c++/x/ for 5.x onward. +- migrate to using %bcond_ instead of hardcoding macros + for different Boost features +- better way to limit max number of compilation units than + by reading /proc/meminfo and guesstimating. + +------------------------------------------------------------------- +Thu Aug 18 14:40:43 UTC 2016 - mvetter@suse.com + +- Fix boo#994378, boo#994381, boo#994382 boo#994383: + Fix build issues when optional_fwd.hpp is used before + including boost/config.hpp +- Add boost-fix_include_config.patch from + gh#boostorg/optional#19 + +------------------------------------------------------------------- +Fri Aug 12 15:05:12 UTC 2016 - adrian@suse.de + +- build it from "boost.spec", but create versioned "boost-1_61-devel" + packages + +------------------------------------------------------------------- +Fri Jun 17 08:32:41 UTC 2016 - adrian@suse.de + +- build quickbook also in versioned package + +------------------------------------------------------------------- +Tue Jun 14 12:45:30 UTC 2016 - adrian@suse.de + +- update to version 1.61.0 + Details on http://www.boost.org/users/history/version_1_61_0.html + Obsolete patches: + * boost-1.59-test-fenv.patch + * boost-deprecated-type_traits.patch + +------------------------------------------------------------------- +Tue Jun 14 07:32:55 UTC 2016 - adrian@suse.de + +- rename package to boost-1_60 to allow multiple versions + +------------------------------------------------------------------- +Tue Mar 29 20:06:05 UTC 2016 - dmitry_r@opensuse.org + +- Fix build on systems with GCC4 + +------------------------------------------------------------------- +Sun Feb 14 14:28:50 UTC 2016 - egeorget@openmailbox.org + +- Added libboost_python3 to the dependency macro. + * boost-devel will now correctly requires libboost_python3. + +------------------------------------------------------------------- +Mon Jan 18 13:50:06 UTC 2016 - idonmez@suse.com + +- Add boost-deprecated-type_traits.patch to fix deprecated + type_traits usage in boost/graph/adjacency_matrix.hpp header. + +------------------------------------------------------------------- +Mon Jan 4 13:28:22 UTC 2016 - idonmez@suse.com + +- Add the following patches from Fedora to fix underlinking in + boost::python code + * boost-1.57.0-python-abi_letters.patch + * boost-1.57.0-python-libpython_dep.patch + * boost-1.55.0-python-test-PyImport_AppendInittab.patch + +------------------------------------------------------------------- +Wed Dec 23 21:37:07 UTC 2015 - fstrba@suse.com + +- Updated to version 1.60.0 + * New library: VMD. + * Updated libraries: Atomic, Chrono, Container, Context, Core, + Filesystem, Flyweight, Fusion, Interprocess, Intrusive, Lexical + Cast, Locale, log, Move, Multi-index Containers, odeint, + Optional, Predef, Test, Thread, UUID + * See http://www.boost.org/users/history/version_1_60_0.html for + complete changelog. +- Modified patch: + * boost-disable-pch-on-aarch64.patch + - rediff to a new context +- Removed patch: + * boost-1.59-python-make_setter.patch + - integrated upstream +- Add libboost_type_erasure subpackage + +------------------------------------------------------------------- +Sun Dec 13 15:31:10 UTC 2015 - egeorget@openmailbox.org + +- Add support to Boost:Python3 (boo#951902) + * New library: python3 + +------------------------------------------------------------------- +Tue Dec 8 15:52:49 CET 2015 - pth@suse.de + +- Add boost-visibility.patch to make members of basic_xml_grammar + visible (boo#958150). +- Fix redefinition of _docdir. + +------------------------------------------------------------------- +Thu Nov 26 10:57:32 UTC 2015 - schwab@suse.de + +- coroutine2 depends on context, disable it if context is not built + +------------------------------------------------------------------- +Fri Oct 23 11:29:11 UTC 2015 - idonmez@suse.com + +- Updated to version 1.59.0: + * New libraries: Convert, Coroutine2 + * Updated Libraries: Container, Context, Coroutine, Fusion, + Geometry, Interprocess, Intrusive, Lexical Cast, Log, Move, + Multi-index Containers, Predef, Program Options, Property Tree, + Boost.Test v3, TypeIndex, Variant + * See http://www.boost.org/users/history/version_1_59_0.html for + complete changelog. +- context now builds on aarch64 +- Import two patches from Fedora: boost-1.59-python-make_setter.patch, + boost-1.59-test-fenv.patch +- Drop 0001-Fix-exec_file-for-Python-3-3.4.patch, + 0002-Fix-a-regression-with-non-constexpr-types.patch, + boost-uuid-comparison.patch, boost-unrecognized-option.patch. + Fixed upstream. + +------------------------------------------------------------------- +Thu Jun 11 08:26:58 UTC 2015 - idonmez@suse.com + +- Remove unneeded dependency on xorg-x11-devel + +------------------------------------------------------------------- +Thu May 21 13:04:18 UTC 2015 - schwab@suse.de + +- boost-unrecognized-option.patch: remove unrecognized option -m32 + +------------------------------------------------------------------- +Sat May 9 09:01:32 UTC 2015 - dmueller@suse.com + +- update to 1.58.0: + boost docs remain at 1.56 since upstream hasn't updated yet + * New Libraries: Endian, Sort. + * Updated Libraries: Asio, Chrono, Container, Context, Conversion, + DateTime, Flyweight, Function, Functional/Factory, Fusion, Geometry, + Hash, Interprocess, Intrusive, Lexical Cast, Log, Math, Move, + Multi-index Containers, Multiprecision, Optional, Phoenix, + Predef, Random, Thread, TypeErasure, TypeIndex, Units, + Unordered, Variant. + See http://www.boost.org/users/history/version_1_58_0.html +- add 0001-Fix-exec_file-for-Python-3-3.4.patch , + 0002-Fix-a-regression-with-non-constexpr-types.patch: Fixes regressions + in 1.58 +- drop bjam-alignment.patch, boost-gcc5.patch: Already fixed upstream + differently +- add boost-rpmoptflags-only.patch: Build only with optflags +- add boost-aarch64-flags.patch: Avoid using -m64 +- add boost-uuid-comparison.patch: Fix regression in UUID operator< +- add boost-disable-pch-on-aarch64.patch: Disable pch on math library + to avoid compiler segfault + +------------------------------------------------------------------- +Mon Mar 9 14:47:09 UTC 2015 - rneuhauser@suse.cz + +- Add quickbook subpackage + +------------------------------------------------------------------- +Mon Feb 23 13:22:31 UTC 2015 - rguenther@suse.com + +- Use $RPM_OPT_FLAGS for building, force use of the GCC toolset. + Be more verbose and fail building with the first error. +- Add boost-gcc5.patch to use -std=c++11 when building the coroutines + module which fixes build with GCC 5. + +------------------------------------------------------------------- +Fri Dec 5 07:44:38 UTC 2014 - dimstar@opensuse.org + +- Revert the python3 building: it resulted in BOTH libboost_python + libraries to be using python 3 instructions, resulting in + failures of all Py2 related packages. + +------------------------------------------------------------------- +Thu Oct 2 12:17:18 UTC 2014 - michael.hamann@kit.edu + +- Added boost_python3 for boost 1.56.0, config based on + https://projects.archlinux.org/svntogit/packages.git/tree/trunk/PKGBUILD?h=packages/boost + +------------------------------------------------------------------- +Sat Sep 27 12:45:11 UTC 2014 - dmitry_r@opensuse.org + +- Update documentation tarball (source was changed) +- Fix aarch64 build + +------------------------------------------------------------------- +Thu Aug 14 15:06:49 UTC 2014 - dmitry_r@opensuse.org + +- Update to version 1.56.0. Major changes since 1.54.0: + New libraries: + * Predef: This library defines a set of compiler, architecture, + operating system, library, and other version numbers from the + information it can gather of C, C++, Objective C, and Objective + C++ predefined macros or those defined in generally available + headers, from Rene Rivera. + * Align: Memory alignment functions, allocators, and adaptors. + * Type_Index: Runtime/Compile time copyable type info. + For a detailed descriptions see: + http://www.boost.org/users/history/version_1_56_0.html + http://www.boost.org/users/history/version_1_55_0.html +- Rebase boost-thread.patch +- Rabase boost-use_std_xml_catalog.patch +- Rebase bjam-alignment.patch +- Remove obsolete boost-glibc-2.18.patch +- Remove obsolete boost-1.54-001-coroutine.patch +- Remove obsolete boost-1.54-002-date-time.patch +- Remove obsolete boost-1.54-003-log.patch +- Remove obsolete boost-1.54-change85160.patch +- Remove obsolete boost-1.54.0-thread-link_atomic.patch +- Remove obsolete boost-ppc64-abiv2-context.patch +- Remove obsolete boost-ppc64-abiv2-coroutine.patch +- Remove outdated man pages boost_1_54_man.tar.bz2 + +------------------------------------------------------------------- +Wed Jul 30 05:09:29 UTC 2014 - coolo@suse.com + +- add baselibs.conf as source + +------------------------------------------------------------------- +Tue Jul 22 13:52:26 UTC 2014 - fcrozat@suse.com + +- Ensure there is enough disk space available for build. + +------------------------------------------------------------------- +Tue Jul 22 12:22:13 UTC 2014 - fcrozat@suse.com + +- use only JOBS=2 to avoid gcc being killed with OOM when memory is + between 4G and 7G. + +------------------------------------------------------------------- +Tue Apr 29 14:34:41 UTC 2014 - dvaleev@suse.com + +- ppc64 ABIv2 support +- enable build_context for ppc64le +- added patches: + * boost-ppc64-abiv2-context.patch + * boost-ppc64-abiv2-coroutine.patch +------------------------------------------------------------------- +Sat Apr 19 17:40:27 UTC 2014 - schwab@suse.de + +- Fix quoting while creating shared build instructions +- Properly configure library list +- bjam-alignment.patch: fix alignment check in bjam + +------------------------------------------------------------------- +Tue Apr 1 08:20:21 UTC 2014 - coolo@suse.com + +- buildignore python, python-base is enough + +------------------------------------------------------------------- +Tue Mar 11 12:04:13 UTC 2014 - Rene.vanPaassen@gmail.com + +- further improved the use of supplied b2 / bootstrap.sh, + include user-config.jam, and remove superfluous python + and gcc instructions from user-config.jam + +------------------------------------------------------------------- +Mon Mar 10 16:26:29 UTC 2014 - Rene.vanPaassen@gmail.com + +- fix problem with executable .pdf in doc by correcting + permissions after install (%attr with a dir failed on + sled/sles) +- add dependency on zlib-devel and libbz2-devel and use the + supplied bootstrap.sh script in building. This adds + on-the-fly compression to boost-iostreams + +------------------------------------------------------------------- +Thu Feb 27 06:13:01 UTC 2014 - coolo@suse.com + +- remove broken python module mpi.so +- trying to make the build more reliable: + * use -fno-var-tracking in cxxflags as recommended by richi + * disable parallel build on low memory + +------------------------------------------------------------------- +Sat Feb 8 18:06:12 CET 2014 - pth@suse.de + +- Add post and postun sections for libboost_graph_parallel. + +------------------------------------------------------------------- +Fri Feb 7 14:48:30 CET 2014 - ro@suse.de + +- add boost-1.54.0-thread-link_atomic.patch fixing upstream issue + https://svn.boost.org/trac/boost/ticket/9041 + (fixes compilation failure of snapper on various platforms) + +------------------------------------------------------------------- +Wed Feb 5 13:58:30 CET 2014 - ro@suse.de + +- enable build_mpi on s390/s390x + +------------------------------------------------------------------- +Tue Jan 7 11:02:00 UTC 2014 - schwab@suse.de + +- Disable coroutine library together with context + +------------------------------------------------------------------- +Sat Jan 4 19:57:55 UTC 2014 - coolo@suse.com + +- fix build of libzypp - patch from boost's track + +- added patches: + * boost-1.54-change85160.patch + +------------------------------------------------------------------- +Tue Nov 26 16:13:00 CET 2013 - tbehrens@suse.com + +- Add boost-pool_check_overflow.patch: Prevent possible overflow when + calculating the amount to malloc (bnc#765443). + Fix from https://svn.boost.org/trac/boost/ticket/6701 + +------------------------------------------------------------------- +Sun Oct 20 12:51:53 UTC 2013 - jengelh@inai.de + +- Split libboost_graph so that the MPI components are not forced + +------------------------------------------------------------------- +Wed Sep 18 16:40:37 UTC 2013 - dap.darkness@gmail.com + +- Update to 1.54.0. Major changes since 1.53.0: + + New libraries: + * Log: Logging library, from Andrey Semashev. + * TTI: Type Traits Introspection library, from Edward Diener. + * Type Erasure: Runtime polymorphism based on concepts. + + For a detailed descriptions see + http://www.boost.org/users/history/version_1_54_0.html + +- Update broken patch: + * boost-use_std_xml_catalog.patch +- Delete merged patch: + * boost-fix_ppc64_asm.patch +- Add post-release fix patches: + * boost-1.54-001-coroutine.patch + * boost-1.54-002-date-time.patch + * boost-1.54-003-log.patch + +- build_pdf define was deleted as unused; + package_pdf was refactored. +- _constraints was added to request more memory to build. + +------------------------------------------------------------------- +Sun Aug 18 20:11:52 UTC 2013 - tchvatal@suse.com + +- Fix build with updated glibc: + * boost-glibc-2.18.patch - taken from upstream scm + +------------------------------------------------------------------- +Sat Jun 8 08:41:55 UTC 2013 - schwab@suse.de + +- Build context library only on supported architectures +- Reenable mpi on aarch64 +- Avoid duplication between %build and %install + +------------------------------------------------------------------- +Wed Apr 3 14:20:58 CEST 2013 - pth@suse.de + +- Apply upstream patch that fixes the ppc64 code in boost::context + (boost#8374): boost-fix_ppc64_asm.patch + +------------------------------------------------------------------- +Fri Mar 22 10:36:57 UTC 2013 - idonmez@suse.com + +- Rename manpages to avoid conflict with other packages + +------------------------------------------------------------------- +Thu Mar 21 08:13:17 UTC 2013 - mmeister@suse.com + +- Added url as source. + Please see http://en.opensuse.org/SourceUrls + +------------------------------------------------------------------- +Sat Mar 16 11:35:15 UTC 2013 - dap.darkness@gmail.com + +- Update to 1.53.0. Major changes since 1.49.0: + + New libraries: + * Algorithm: A collection of useful generic algorithms. + * Context: Context switching library. + * Functional/OverloadedFunction: Overload different functions. + * LocalFunction: Program functions locally, within other functions. + * Utility/IdentityType: Wrap types within round parenthesis. + + For a detailed descriptions see + http://www.boost.org/users/history/version_1_50_0.html + http://www.boost.org/users/history/version_1_51_0.html + http://www.boost.org/users/history/version_1_52_0.html + +- Delete unneeded patches: + * boost-chrono_add_function_return.patch + * boost-fix_documentation.patch + * boost-time_utc.patch + +------------------------------------------------------------------- +Wed Feb 27 18:34:09 UTC 2013 - dmueller@suse.com + +- build without openmpi on aarch64 for now + +------------------------------------------------------------------- +Wed Jan 23 13:30:18 UTC 2013 - BSipos@rkf-eng.com + +- Require package for ICU having same minimum version that the build requires. +- Avoid obsoleting older versions of boost documentation to allow multiple boost package versions in same environment. + +------------------------------------------------------------------- +Thu Jan 17 14:21:58 UTC 2013 - opensuse@dstoecker.de + +- use bzip2 instead of xz to support older SUSE releases + +------------------------------------------------------------------- +Thu Sep 6 13:12:38 UTC 2012 - cfarrell@suse.com + +- license update: BSL-1.0 + Boost Software License 1.0 is available in SPDX format on + http://www.spdx.org/licenses as BSL-1.0 + +------------------------------------------------------------------- +Thu Aug 2 09:49:29 UTC 2012 - aj@suse.de + +- Add patch from upstream to use TIME_UTC_ instead of TIME_UTC since + the later is part of ISO C11. + +------------------------------------------------------------------- +Fri May 18 07:38:27 UTC 2012 - aj@suse.de + +- Fix timer post script, it used the comment as content. + +------------------------------------------------------------------- +Fri May 11 08:05:42 UTC 2012 - coolo@suse.com + +- fixing the previous fix + +------------------------------------------------------------------- +Wed May 9 13:01:51 UTC 2012 - coolo@suse.com + +- fixing baselibs.conf after version bump + +------------------------------------------------------------------- +Sat Mar 17 17:58:21 UTC 2012 - jengelh@medozas.de + +- Adjust Require for new libxslt-tools + +------------------------------------------------------------------- +Tue Mar 13 12:45:31 CET 2012 - pth@suse.de + +- Update to 1.49.0. Major changes since 1.46.1: + + New libraries: + * Heap. + * Container + * Locale + * Move + * Chrono + * Geometry + * Phoenix + * Ratio + + For a detailed descriptions see + http://www.boost.org/users/history/version_1_47_0.html + http://www.boost.org/users/history/version_1_48_0.html + http://www.boost.org/users/history/version_1_49_0.html + +- Rebuilt the man documentation with gcc 4.5 as the current gcc + segfaults when building quickbook. +- Package PDF documentation independent of whether we build it + ourselves. +- Fix missing function return in Boost::Chrono's process_cpu_clocks.hpp + +------------------------------------------------------------------- +Mon Feb 13 10:44:37 UTC 2012 - coolo@suse.com + +- patch license to follow spdx.org standard + +------------------------------------------------------------------- +Tue Dec 6 20:35:26 UTC 2011 - aj@suse.de + +- Do not package NEWS and LICENSE twice. + +------------------------------------------------------------------- +Fri Nov 25 01:14:22 UTC 2011 - jengelh@medozas.de + +- Remove redundant/unwanted tags/section (cf. specfile guidelines) + +------------------------------------------------------------------- +Thu Nov 24 10:50:27 UTC 2011 - nadvornik@suse.com + +- dropped visit_each patch (bnc#714373) + +------------------------------------------------------------------- +Mon Oct 3 12:17:41 CEST 2011 - dmueller@suse.de + +- disable openmpi on %%arm + +------------------------------------------------------------------- +Tue Apr 19 00:13:36 CEST 2011 - ro@suse.de + +- update baselibs.conf + +------------------------------------------------------------------- +Sun Mar 21 11:53:29 UTC 2011 - idoenmez@novell.com + +- Fix attribute handling problem in spirit library, + See http://comments.gmane.org/gmane.comp.parsers.spirit.general/22073 + +------------------------------------------------------------------- +Mon Mar 21 11:46:48 CET 2011 - pth@suse.de + +- Prefix bug numbers. + +------------------------------------------------------------------- +Fri Mar 18 17:04:45 CET 2011 - pth@suse.de + +- Make packaging of the pdf documentation configurable. + +------------------------------------------------------------------- +Fri Mar 18 11:59:14 CET 2011 - pth@suse.de + +- Update to 1.46.1, a bugfix release: + • Asio: + - EV_ONESHOT seems to cause problems on some versions of Mac OS X, with + the io_service destructor getting stuck inside the close() system call. + Changed the kqueue backend to use EV_CLEAR instead (boost#5021). + - Fixed compile failures with some versions of g++ due to the use of + anonymous enums (boost#4883). + - Fixed a bug on kqueue-based platforms, where some system calls that + repeatedly fail with EWOULDBLOCK are not correctly re-registered with + kqueue. + - Changed asio::streambuf to ensure that its internal pointers are + updated correctly after the data has been modified using std::streambuf + member functions. + - Fixed a bug that prevented the linger socket option from working on + platforms other than Windows. + + For the rest see NEWS or the boost web site http://www.boost.org + +------------------------------------------------------------------- +Wed Mar 16 12:03:17 CET 2011 - pth@suse.de + +- Remove comment chars from doc-pdf description. + +------------------------------------------------------------------- +Mon Mar 14 12:24:53 CET 2011 - pth@suse.de + +- Use xz to compress tarballs. +- Generate new man pages tarball. +- Update pdf tarball. + +- Update to 1.46: + New Libraries + Icl: Interval Container Library, interval sets and maps and + aggregation of associated values, from Joachim Faulhaber. + + For the rest of the changes see NEWS in the package documentation + directory or see http://www.boost.org/users/news/version_1_46_0 . + +------------------------------------------------------------------- +Thu Nov 25 12:01:42 CET 2010 - pth@suse.de + +- Remove the boost specific autoconf macros now that we have the + complete autoconf archive packaged (bnc#655747). +- Move the lib64 patch over to autoconf-archive. + +------------------------------------------------------------------- +Mon Oct 25 07:32:01 UTC 2010 - jslaby@novell.com + +- take care of random library (build 32bit on x86_64 and + require it in boost-devel) + +------------------------------------------------------------------- +Wed Sep 29 09:42:52 UTC 2010 - coolo@novell.com + +- fix baselibs.conf + +------------------------------------------------------------------- +Fri Sep 3 17:38:42 CEST 2010 - pth@suse.de + +- Shorten the list of update items. +- Fix typo in spec. + +------------------------------------------------------------------- +Thu Aug 26 17:55:59 CEST 2010 - pth@suse.de + +- Redo the lib64 patch for the boost autoconf macros so that + lib64 is used on all archs that need it. +- Remove the ICU patch. + +------------------------------------------------------------------- +Thu Aug 26 10:55:59 CEST 2010 - pth@suse.de + +- Update to 1.44.0: + + New Libraries: + + * Meta State Machine: High-performance expressive UML2 finite + state machines + * Polygon: Booleans/clipping, resizing/offsetting and more for + planar polygons with integral coordinates + + Updated Libraries: + + * Accumulators: + * Asio: + * Foreach: + * Fusion: + * Hash: + * Math: + * MPL: + * Multi-index Containers: + * Proto: + * Regex: + * Thread: + * Type Traits: + * uBLAS: + * Utility: + * Uuid: + * Config: + * Xpressive: + + * Filesystem: + o This release contains both version 2 and version 3 of the + library. Version 3 is a major upgrade that will break some + existing user code, so version 2 is the default. Users are + encouraged to migrate to version 3. See 'Version 2' and + 'Version 3' for more information. + + * Iostreams: + + o Several fixes for file descriptors class, including a + breaking change to the constructors and open methods for + file_descriptor, file_descriptor_source and + file_descriptor_sink. See the documentation for details. + The old methods are still available if you define + BOOST_IOSTREAMS_USE_DEPRECATED + + * Spirit: Spirit V2.4, see the 'What's New' section for details. + + * System: + o Change system_category and generic_category to functions, to + conform to the C++0x FCD. This change may cause compile + errors some user code; the fix is add "()" to references to + system_category and generic_category, so that they become + function calls. + + * Wave: See the Changelog for details. + + Major Changes in 1.43.0: + + New Libraries + * Functional/factory: Function objects for dynamic and by-value + construction + * Functional/forward: Function object adapters to address the + forwarding problem + + For a complete list of changes see + http://www.boost.org/users/news/version_1_43_0 and + http://www.boost.org/users/news/version_1_44_0. + + +------------------------------------------------------------------- +Fri Jul 9 13:17:57 CEST 2010 - pth@suse.de + +- Rename patch to be identical to the one checked in for 11.3. + The patch adds an explicite specialization to the call to prevent + unwanted temporary instantiations. + + +------------------------------------------------------------------- +Fri Jul 9 09:34:03 UTC 2010 - lnussel@suse.de + +- fix bug that shows with gcc 4.5 (bnc#621140) + +------------------------------------------------------------------- +Wed Jun 16 14:46:52 CEST 2010 - pth@suse.de + +- Noarch sub packages only doable from 11.2 on up. + +------------------------------------------------------------------- +Thu Jun 10 09:02:34 UTC 2010 - wittemar@googlemail.com + +- build 32bit-packages + +------------------------------------------------------------------- +Mon May 24 11:54:28 UTC 2010 - bg@novell.com + +- disable long double support for hppa + +------------------------------------------------------------------- +Thu May 20 08:14:41 UTC 2010 - bg@novell.com + +- openmpi does not build on hppa + +------------------------------------------------------------------- +Thu Apr 29 09:45:26 UTC 2010 - pth@novell.com + +- Move provides/obsoletes for boost-license to the right section + (bnc#544958). + +------------------------------------------------------------------- +Mon Apr 26 10:34:26 UTC 2010 - pth@novell.com + +- Delete unneeded patches. + +------------------------------------------------------------------- +Wed Apr 14 13:54:12 CEST 2010 - pth@suse.de + +- Readd those patches that are still needed. +- Try to fix an aliasing bug in function_base.hpp +- Build man pages locally and only include them as a tarball. +- Split documentation in in format specific packages. + +------------------------------------------------------------------- +Sat Apr 3 00:00:00 CET 2010 - freespacer@gmx.de + +- update to 1.42.0: + + New Libraries + + * Uuid: A universally unique identifier, from Andy Tompkins. + + Updated Libraries (see README for details) + + * Asio: + * Circular Buffer: + * Fusion: + * Graph: + * Integer: + * Iostreams: + * Program.Options: + * PropertyMap: + * Proto: + * Regex: + * Spirit: + * Unordered: + * Xpressive: + +- update to 1.41.0: + + New Libraries + + * Property Tree: A tree data structure especially suited to storing + configuration data, from Marcin Kalicinski and Sebastian Redl. + + Updated Libraries (see README for details) + + * DateTime: + * Filesystem: + * Iostreams: + * Math: + * Multi-index Containers: + * Proto: + * Regex: + * Spirit: + * System: + * Thread: + * Unordered: + * Utility: + * Wave: + * Xpressive: + +- update to 1.40.0: + + Updated Libraries (see README for details) + + * Accumulators: + * Asio: + * Circular Buffer: + * Foreach: + * Function: + * Fusion: + * Graph: + * Hash: + * Interprocess: + * Intrusive: + * MPL: + * Program.Options: + * Property Map: + * Proto: + * Random: + * Serialization: + * Unordered: + * Xpressive: + +- removed patches no longer needed + +------------------------------------------------------------------- +Wed Jan 6 04:08:55 CET 2010 - jengelh@medozas.de + +- documentation change needed to be done in boost.spec.in + (not boost.spec) +- openmpi change was missing too; add it now + +------------------------------------------------------------------- +Tue Dec 15 20:59:15 CET 2009 - jengelh@medozas.de + +- add baselibs for SPARC +- add baselibs.conf as a source +- deactivate use of openmpi on SPARC, as compat-dapl is not + available +- package documentation as noarch + +------------------------------------------------------------------- +Mon Oct 19 15:20:52 CEST 2009 - pth@suse.de + +- Provide/Obsolete boost-license (bnc#544958) + +------------------------------------------------------------------- +Thu Aug 6 18:50:30 CEST 2009 - pth@suse.de + +- Add a fix from boost bugtracker that fixes the hash resizing + (boost#54376) +- Add a test for cancelling deadline timers from the same changeset. + +------------------------------------------------------------------- +Tue Aug 4 13:13:27 CEST 2009 - pth@suse.de + +- Readd the patch to fix the misplaced ifdef in + template_function.hpp:move_assign. + +------------------------------------------------------------------- +Tue Jul 28 22:01:41 CEST 2009 - coolo@novell.com + +- update to 1.39.0: + + New Libraries + + * Signals2: Managed signals & slots callback implementation (thread-safe version 2), + from Frank Mori Hess. + + Updated Libraries (see README for details) + + * Asio: + * Flyweight: + * Foreach: + * Hash: + * Interprocess: + * Intrusive: + * Program.Options: + * Proto: + * PtrContainer: + * Range: + * Unordered: + * Xpressive: + +- removed patches no longer needed (hoping the best for ppc asm) + +------------------------------------------------------------------- +Thu Apr 16 23:35:40 CEST 2009 - crrodriguez@suse.de + +- as agreed with maintainer, get rid of static libraries + +------------------------------------------------------------------- +Thu Apr 16 01:11:10 CEST 2009 - ro@suse.de + +- buildfix: fix typo in specfile + +------------------------------------------------------------------- +Mon Mar 16 14:39:20 CET 2009 - pth@suse.de + +- Don't rely on system default mpi implementation being set. This + fixes building boost on systems before openSUSE 11.0. + +------------------------------------------------------------------- +Tue Mar 3 11:30:07 CET 2009 - pth@suse.de + +- Fix misplaced ifdef in template_function.hpp:move_assign. Fixes + building software that defines BOOST_NO_EXCEPTION (bnc#479659). + +------------------------------------------------------------------- +Wed Feb 25 18:06:32 CET 2009 - pth@suse.de + +- Fix packaging of the documentation. + +------------------------------------------------------------------- +Sun Feb 22 04:10:41 CET 2009 - pth@suse.de + +- Fix the line in the spec that copies the documentation. + +------------------------------------------------------------------- +Fri Feb 20 14:09:58 CET 2009 - pth@suse.de + +- Put the license in a versioned package. This allows installing + libraries in parallel (bnc#477603). + +------------------------------------------------------------------- +Fri Feb 13 15:18:12 CET 2009 - pth@suse.de + +- Fix spec file (remove patches). + +------------------------------------------------------------------- +Wed Feb 11 17:19:21 CET 2009 - pth@suse.de + +- Add boost autoconf macros from the autoconf archive to the + -devel package. +- Update to 1.38.0: + + New Libraries + + * Flyweight: + o Design pattern to manage large quantities of highly redundant + objects, from Joaquín M López Muñoz. + * ScopeExit: + o Execute arbitrary code at scope exit, from Alexander Nasonov. + * Swap: + o Enhanced generic swap function, from Joseph Gauterin. + + Updated Libraries + + * Accumulators: + o Add rolling_sum, rolling_count and rolling_mean accumulators. + + * Any: + o Use a by-value argument for operator= (#2311). + + * Asio: + o Improved compatibility with some Windows firewall software. + o Ensured arguments to windows::overlapped_ptr::complete() are + correctly passed to the completion handler (#2614). + o Drop back to using a pipe for notification if eventfd is not + available at runtime on Linux (#2683). + o Various minor bug and documentation fixes (#2534, #2541, + #2607, #2617, #2619) + + * Config: + o Add new macros BOOST_NO_STD_UNORDERED and + BOOST_NO_INITIALIZER_LISTS. + o Added Codegear compiler support. + o Added Dragonfly to the BSD family of configs. + o Recognise latest compilers from MS and Intel. + * Date_Time: + o Added support for formatting and reading time durations longer + than 24 hours with new formatter: %0. + o Removed the testfrmwk.hpp file from the public include directory. + o Fixed several bugs and compile errors. + o For full details see the change history + + * Exception: + o Improved and more customizable diagnostic_information output. + + * Filesystem: + o Fix native(name) test failures on POSIX-like systems. + o Several bugfixes (#2543, #2224, #2531, #1840, #2542). + + * Graph: + o Added a new algorithms for Travelling Salesman Problem + approximation (metric_tsp_approx) and resource-constrained + Shortest Paths (r_c_shortest_paths). + o Support for named vertices in adjacency_list. + o A number of bugfixes ( #416, #1622, #1700, #2209, #2392, + #2460, and #2550) + + * Hash: + o boost/functional/detail/container_fwd.hpp has been moved to + boost/detail/container_fwd.hpp. The current location is + deprecated. + o For more detail, see the library changelog. + + * Interprocess: + o Updated documentation to show rvalue-references functions + instead of emulation functions. + o More non-copyable classes are now movable. + o Move-constructor and assignments now leave moved object in + default-constructed state instead of just swapping contents. + o Several bugfixes (#2391, #2431, #1390, #2570, #2528). + + * Intrusive: + o New treap-based containers: treap, treap_set, treap_multiset. + o Corrected compilation bug for Windows-based 64 bit compilers. + o Corrected exception-safety bugs in container constructors. + + o Updated documentation to show rvalue-references functions + instead of emulation functions. + + * Lexical Cast: + o Changed to work without RTTI when BOOST_NO_TYPEID is defined + (#1220). + + * Math: + o Added Johan Råde's optimised floating point classification routines. + o Fixed code so that it compiles in GCC's -pedantic mode (bug report #1451). + + * Multi-index Containers: + o Some redundant type definitions have been deprecated. Consult the + library release notes for further information. + * Proto: + o Fix problem with SFINAE of binary operators (Bug 2407). + o Fix proto::call transform for callable transforms with >3 arguments. + o result_of::value changed behavior for array-by-value terminals. + o unpack_expr requires only Forward Sequences rather than Random Access + Sequences. + o Deprecate legacy undocumented BOOST_PROTO_DEFINE_(VARARG_)FUNCTION_TEMPLATE + macros. + o Add BOOST_PROTO_REPEAT and BOOST_PROTO_LOCAL_ITERATE macros to help with + repetitive code generation + o Support for nullary expressions with tag types other than + proto::tag::terminal + o Allow 0- and 1-argument variants of proto::or_ and proto::and_ + + * Regex: + o Breaking change: empty expressions, and empty alternatives are + now allowed when using the Perl regular expression syntax. + This change has been added for Perl compatibility, when the + new syntax_option_type no_empty_expressions is set then the + old behaviour is preserved and empty expressions are + prohibited. This is issue #1081. + o Added support for Perl style ${n} expressions in format strings + (issue #2556). + o Added support for accessing the location of sub-expressions + within the regular expression string (issue #2269). + o Fixed compiler compatibility issues #2244, #2514, and #2458. + + * Thread: + o No longer catches unhandled exceptions in threads as this debuggers + couldn't identify the cause of unhandled exceptions in threads. An + unhandled exception will still cause the application to terminate. + + * TR1: + o Added support for the TR1 math functions and the unordered + containers. + + * Type Traits: + o Added support for Codegear intrinsics. + o Minor tweaks to warning suppression and alignment_of code. + + * Unordered: + o Use boost::swap. + o Use a larger prime number list for selecting the number of buckets. + o Use aligned storage to store the types. + o Add support for C++0x initializer lists where they're available. + o For more detail, see the library changelog. + + * Xpressive: + o basic_regex gets nested syntax_option_flags and value_type typedef, + for compatibility with std::basic_regex + o Ported to Proto v4; Proto v2 at boost/xpressive/proto has been + removed. + o regex_error inherits from boost::exception + + Other Changes + + * Experimental support for building Boost with CMake has been introduced in + this version. For more details see the wiki, Discussion is taking place + on the Boost-cmake mailing list. + * Fixed subversion properties for several files. Most notably, unix shell + scripts should always have unix line endings, even in the windows + packages. + +------------------------------------------------------------------- +Fri Jan 9 17:34:53 CET 2009 - pth@suse.de + +- Apply patch in boost.spec.in + +------------------------------------------------------------------- +Thu Jan 8 18:12:29 CET 2009 - pth@suse.de + +- Actually use the patch. + +------------------------------------------------------------------- +Wed Jan 7 18:50:21 CET 2009 - pth@suse.de + +- Initialize all data passed in the syscall to keep valgrind + happy (bnc#461372). + +------------------------------------------------------------------- +Thu Dec 11 17:08:05 CET 2008 - ro@suse.de + +- fix baselibs.conf (no requirement for boost-xxbit) + (bnc#457699) + +------------------------------------------------------------------- +Thu Nov 27 15:11:54 CET 2008 - ro@suse.de + +- update baselibs.conf +- package mpi.so only in mpi package, not in devel + +------------------------------------------------------------------- +Wed Nov 19 18:54:54 CET 2008 - jjolly@suse.de + +- Made the use of the mpi-selector conditional for mpi-enabled + platforms. + +------------------------------------------------------------------- +Tue Nov 11 16:55:39 CET 2008 - ro@suse.de + +- SLE-11 uses PPC64 instead of PPC, adapt baselibs.conf + +------------------------------------------------------------------- +Fri Oct 31 12:40:57 CET 2008 - pth@suse.de + +- Fix the bug that made boost.monitor mix up uid and pib and + also make boost.monitor not special-case SIGCLD (bnc#439805) +- Fix generation of default extension in boost.filesystem. + +- Make boost recommend library subpackages instead of requiring + them to allow removal of unwanted libraries after update. +- Run mkspec explicitely in a shell so that mkspec.sh doesn't + need to be executable. +- Disable deletion of full-name symlinks in boost.spec.in. +- Make boost-devel directly require all library subpackages. +- boost.rpm isn't needed, even for updates, so don't build it and + remove the README file needeed only for this package. +- Make debug package require all library subpackages. +- Add pre_checkin.sh to ensure that boost.spec is regenerated + at check-in time. +- Make boost.build use sane library names. Only the multi-threaded + libraries are built and these have no -mt in their name. + Symlinks for convenience are spupplied. +- Use -fno-strict-aliasing only for boost.python, where it's needed. +- Don't use configure and make (only convenience wrappers) but + call bjam directly. + +------------------------------------------------------------------- +Mon Oct 27 11:57:35 CET 2008 - ro@suse.de + +- do not remove full-name symlinks for shared libs + +------------------------------------------------------------------- +Thu Oct 23 18:31:36 CEST 2008 - pth@suse.de + +- Use a script and a Makefile to generate boost.spec. +- Pull in all libraries on update. +- Modify README to apply to both openSUSE and SLE. + +------------------------------------------------------------------- +Thu Oct 23 16:13:56 CEST 2008 - ro@suse.de + +- fix regexp for short symlinks +- hook all mpi related parts to build_mpi macro +- disable build_mpi on ia64 s390 s390x for the moment + +------------------------------------------------------------------- +Fri Oct 17 12:18:16 CEST 2008 - pth@suse.de + +- Using a rpm macros in package name doesn't work with autobuild. + +------------------------------------------------------------------- +Wed Oct 15 19:27:03 CEST 2008 - pth@suse.de + +- Fix naming of library packages to match the horribly broken + sonames of the boost libraries. +- Add post/postun for all library packages. +- Stop rpmlint warning about explicit library dependencies + needed to pull in all library subpackages during updates. + +------------------------------------------------------------------- +Tue Oct 14 15:37:23 CEST 2008 - pth@suse.de + +- Fix build failure (README not in build directory). + +------------------------------------------------------------------- +Tue Sep 2 12:14:27 CEST 2008 - pth@suse.de + +- Split off runtime libraries into their own packages. +- Update to 1.36.0: + New Libraries + * Accumulators: Framework for incremental calculation, and + collection of statistical accumulators. + * Exception: A library for transporting of arbitrary data in + exception objects, and transporting of exceptions + between threads. + * Units: Zero-overhead dimensional analysis and unit/quantity + manipulation and conversion. + * Unordered: Unordered associative containers. + Updated Libraries + * Asio: + o Added support for serial ports. + o Added support for UNIX domain sockets. + o Added support for raw sockets and ICMP. + o Added wrappers for POSIX stream-oriented file descriptors + (excluding regular files). + o Added support for reactor-style operations using a new + null_buffers type. + o Added an iterator type for bytewise traversal of buffer + sequences. + o Added new read_until() and async_read_until() overloads that + take a user-defined function object for locating message + boundaries. + o Added an experimental two-lock queue (enabled by defining + BOOST_ASIO_ENABLE_TWO_LOCK_QUEUE) that may provide better + io_service scalability across many processors. + o Various fixes, performance improvements, and more complete + coverage of the custom memory allocation support. + * Assign:list_of() (and its variants) now has overloaded comparison + operators. This allows you to write test code such as + BOOST_CHECK_EQUAL(my_container,list_of(2)(3)(4)(5));. + * Foreach:BOOST_FOREACH macro for easily iterating over the elements + of a sequence. + o New BOOST_REVERSE_FOREACH macro for iterating over a sequence + in reverse. + * Function: + o Improved allocator support. + * Hash: Minor updates and fixes, for more info see the change log. + * Interprocess: + o Added anonymous shared memory for UNIX systems. + o Fixed missing move semantics on managed memory classes. + o Added copy_on_write and open_read_only options for shared + memory and mapped file managed classes. + o shared_ptr is movable and supports aliasing. + * Intrusive: + o Added linear<> and cache_last<> options to singly linked lists. + o Added optimize_multikey<> option to unordered container hooks. + o Optimized unordered containers when store_hash option is used + in the hook. + o Implementation changed to avoid explicit use of try-catch + blocks and be compilable with exceptions disabled. + * Math: + o Added new non-central Chi-Square, Beta, F and T distributions. + o Added Exponential Integral and Zeta special functions. + o Added Rounding, Truncation, and Unit-in-the-last-place + functions. + o Added support for compile time powers of a runtime base. + o Added a few SSE2 based optimisations for the Lanczos + approximations. + * MPI: + o Added support for non-blocking operations in Python + o Added support for graph topologies. + * Multi-index Containers: Minor additions and maintenance fixes. + Consult the library release notes for + further information. + * PtrContainer: Support for a few more containers, and addition + of insert iterators. For details see upgrading + details. + * Spirit: Integrated the "Classic" Spirit V1.8.x code base with + Spirit V2, "The New Generation". See Change Log. + * Thread: + o New generic lock and try_lock functions for locking multiple + mutexes at once. + o Rvalue reference support for move semantics where the + compilers supports it. + o A few bugs fixed and missing functions added (including + the serious win32 condition variable bug). + o scoped_try_lock types are now backwards-compatible with + Boost 1.34.0 and previous releases. + o Support for passing function arguments to the thread + function by supplying additional arguments to the thread + constructor. + o Backwards-compatibility overloads added for timed_lock and + timed_wait functions to allow use of xtime for timeouts. + * Wave: + o Wave V2.0 is a new major release introducing some breaking + API changes, preventing it to be used with Boost versions + earlier than V1.36.0. Mainly, the API and hook interface + have been streamlined for more consistency. + o Fixed a couple of bugs, improved regression test system to + include testing of the preporcessing hooks interface + (for details see: Changelog). + * Xpressive: + o Regular expressions that can be written as strings or as + expression templates, and that can refer to each other and + themselves recursively with the power of context-free + grammars. + o skip() for specifying which parts of the input sequence + to ignore when matching it against a regex. + o regex_replace() accepts formatter objects and formatter + expressions in addition to format strings. + o Range-based regex_replace() algorithm. + o Fix crash when semantic actions are placed in look-aheads, + look-behinds or independent sub-expressions. + + +------------------------------------------------------------------- +Mon Jun 23 14:32:35 CEST 2008 - pth@suse.de + +- Qualify name to avoid clash (bnc#401964) + +------------------------------------------------------------------- +Fri Jun 20 15:24:42 CEST 2008 - schwab@suse.de + +- Fix ppc atomic ops. + +------------------------------------------------------------------- +Thu Apr 10 12:54:45 CEST 2008 - ro@suse.de + +- added baselibs.conf file to build xxbit packages + for multilib support + +------------------------------------------------------------------- +Mon Jan 28 10:53:09 CET 2008 - schwab@suse.de + +- Remove obsolete patch again. + +------------------------------------------------------------------- +Fri Jan 18 14:04:18 CET 2008 - pth@suse.de + +- Fix CVE-2008-0171 and CVE-2008-0171 (bugzilla #353180) +- Qualify special_values_parser (bugzilla #353897) + +------------------------------------------------------------------- +Thu Jan 17 18:18:03 CET 2008 - schwab@suse.de + +- Remove obsolete patch. + +------------------------------------------------------------------- +Mon Jan 14 13:51:36 CET 2008 - pth@suse.de + +- Move 1.34.1 from BS to Autobuild +- Add patch for critical bug in Boost.Function. +- Include C headers where necessary. +- Make the tests for ULONG_MAX more readable 64. + +------------------------------------------------------------------- +Wed Oct 24 17:49:46 CEST 2007 - rguenther@suse.de + +- Use -fpermissive in addition to -O2 for building. +- Add patch to enable building wave with GCC 4.3. + +------------------------------------------------------------------- +Mon Aug 20 15:09:41 CEST 2007 - pth@suse.de + +- Only use fdupes from 10.3 onwards. + +------------------------------------------------------------------- +Sat Aug 11 13:17:53 CEST 2007 - aj@suse.de + +- Fix spec file to build again. + +------------------------------------------------------------------- +Thu Aug 9 15:16:09 CEST 2007 - pth@suse.de + +- Add man pages (made for 1.33.1). +- Package html documentation differently. +- Check all links and add missing files that do exist. +- Use %%fdupes +- Add patch by rschiele@gmail.com to pass compiler flags into + Boost.build. + +- Update to 1.34.1 and use .spec file from bkoz@redhat.com as + a basis. + + Changes 1.33.1 -> 1.34.0: + + New Libraries: + + * Foreach Library: BOOST_FOREACH macro for easily iterating over + the elements of a sequence, + + * Statechart Library: Arbitrarily complex finite state machines + can be implemented in easily readable and + maintainable C++ code, + + * TR1 Library: An implementation of the C++ Technical Report on Standard + Library Extensions, from John Maddock. This library does + not itself implement the TR1 components, rather it's a + thin wrapper that will include your standard library's + TR1 implementation (if it has one), otherwise it will + include the Boost Library equivalents, and import them + into namespace std::tr1. Highlights include: Reference + Wrappers, Smart Pointers, result_of, Function Object + Binders, Polymorphic function wrappers, Type Traits, + Random Number Generators and Distributions, Tuples, Fixed + Size Array, Hash Function Objects, Regular Expressions, + and Complex Number Additional Algorithms. + + * Typeof Library: Typeof operator emulation, from Arkadiy Vertleyb + and Peder Holt. + + * Xpressive Library: Regular expressions that can be written as strings + or as expression templates, and that can refer to + each other and themselves recursively with the + power of context-free grammars, from Eric Niebler. + + Updated Libraries: + + * Assign Library: + o Support for ptr_map via the new function ptr_map_insert() + o Support for initialization of Pointer Containers when the + containers hold pointers to an abstract base class. + + * Date_time library: + o Support for new US/Canada timezone rules and other bug fixes. + See Change History for details. + + * Filesystem Library: Major upgrade in preparation for submission to the + C++ Standards Committee for TR2. Changes include: + + o Internationalization, provided by class templates basic_path, + basic_filesystem_error, basic_directory_iterator, and + basic_directory_entry. + + o Simplification of the path interface by eliminating special + constructors to identify native formats. + + o Rationalization of predicate function design, including the + addition of several new functions. + + o Clearer specification by reference to POSIX, the ISO/IEEE Single + Unix Standard, with provisions for Windows and other operating + systems. + + o Preservation of existing user code whenever possible. + o More efficient directory iteration. + o Addition of a recursive directory iterator. + + * Function Library: Boost.Function now implements a small buffer + optimization, which can drastically improve the + performance when copying or constructing + Boost.Function objects storing small function + objects. For instance, bind(&X:foo, &x, _1, _2) + requires no heap allocation when placed into a + Boost.Function object. + + * Functional/Hash Library + o Use declarations for standard classes, so that the library + doesn't need to include all of their headers + + o Deprecated the headers. + + o Add support for the BOOST_HASH_NO_EXTENSIONS macro, which + disables the extensions to TR1 + + o Minor improvements to the hash functions for floating point numbers. + + * Graph Library: + o edmonds_maximum_cardinality_matching, + o lengauer_tarjan_dominator_tree, + o compressed_sparse_row_graph, + o sorted_erdos_renyi_iterator, + + o biconnected_components now supports a visitor and named + parameters, + + o adjacency_matrix now models the Bidirectional Graph concept. + + o dijkstra_shortest_paths now calls vis.initialize_vertex for each + vertex during initialization. + + o Note: the name of the compiled library for the GraphViz reader has + changed to boost_graph (from bgl-viz) to match Boost conventions. + + o See the complete revision history for more information. + + * MultiArray Library: Boost.MultiArray now by default provides + range-checking for operator[]. Range checking can + be disabled by defining the macro + BOOST_DISABLE_ASSERTS before including + multi_array.hpp. A bug in multi_array::resize() + related to storage orders was fixed. + + * Multi-index Containers Library: + o New random access indices. + o Non key-based indices feature new rearrange facilities. + + o This version also includes a number of optimizations and usage + improvements. For a complete list of changes, see the library + release notes. + + * Optional Library: + o boost::none_t and boost::none now added to Optional's + documentation + + o Relational operators now directly support arguments of type + 'T' and 'none_t' + + o operator->() now also works with reference types. + + o Helper functions make_optional(val), make_optional(cond,val) + and get_optional_value_or(opt,alternative_value) added. + + o Constructor taking a boolean condition (as well as a value) + added. + + o Member function get_value_or(alternative_value) added. + o Incompatbility bug with mpl::apply<> fixed. + o Converting assignment bug with uninitialized lvalues fixed. + + * Parameter Library: + o Every ArgumentPack is now a valid MPL Forward Sequence. + + o Support for unnamed arguments (those whose keyword is + deduced from their types) is added. + + o Support for named and unnamed template arguments is added. + + o New overload generation macros solve the forwarding problem + directly. + + o See also the Python library changes, below. + + * Pointer Container Library: + o Support for serialization via Boost.Serialization. + + o Exceptions can be disabled by defining the macro + BOOST_PTR_CONTAINER_NO_EXCEPTIONS before including any header. + This macro is defined by default if BOOST_NO_EXCEPTIONS is defined. + + o Additional std::auto_ptr overloads added s.t. one can also + pass std::auto_ptr instead of only T* arguments to member + functions. + + o transfer() now has weaker requirements s.t. one can transfer + objects from ptr_container to ptr_container, + + * Python Library: + o Boost.Python now automatically appends C++ signatures to + docstrings. The new docstring_options.hpp header is available to + control the content of docstrings. + + o stl_input_iterator, for turning a Python iterable object into an + STL input iterator, from Eric Niebler. + + o Support for void* conversions is added. + + o Integrated support for wrapping C++ functions built with the + parameter library; keyword names are automatically known to + docsstrings. + + o Enhancements to the API for better embedding support + (boost::python::import(), boost::python::exec(), and + boost::python::exec_file()). + + * Signals Library: More improvements to signal invocation performance. + + * Smart Pointers Library: + o Allocator support as proposed in N1851 (162 Kb PDF). + o pointer_cast and pointer_to_other utilities to allow + pointer-independent code, + + * String Algorithm Library: + o lexicographical_compare + o join + o New comparison predicates is_less, is_not_greater. + o Negative indexes support (like Perl) in various algorihtms + (*_head/tail, *_nth). + + * Wave Library: + o Wave now correctly recognizes pp-number tokens as mandated by + the C++ Standard, which are converted to C++ tokens right before + they are returned from the library. + + o Several new preprocessing hooks have been added. For a complete + description please refer to the related documentation page: The + Context Policy. + + o Shared library (dll) support has been added for the generated + Wave libraries. + + o The overall error handling has been improved. It is now possible + to recover and continue after an error or a warning was issued. + + o Support for optional comment and/or full whitespace + preservation in the generated output stream has been added. + + o The Wave library now performs automatic include guard + detection to avoid accessing header files more than once, if + appropriate. + + o Full interactive mode has been added to the Wave tool. Now the + Wave tool can be used just like Python or Perl for instance to + interactively try out your BOOST_PP macros. Additionally it is + now possible to load and save the current state of an + interactive session (macro tables et.al.). + + o The overall performance has been improved by upto 40-60%, + depending on the concrete files to process. + + o Support for new pragmas has been added allowing to control + certain library features from inside the preprocessed sources + (partial output redirection, control of generated whitespace + and #line directives). + + o Optional support for #pragma message "..." has been added. + + o This version also includes a number of bug fixes and usage + improvements. For a complete list of changes, see the + libraries change log. + +Fixes in 1.34.1: + + * Fixes for build on IBM pSeries for AIX and Linux + * gcc-4.2 atomicity.h location fixed + * [iostreams] zlib_compressor memory leaks in 1.34.0 + * filtering ostream problem... pushing zlib_compressor works in 1_33, + dies in 1_34 + * [doc] The "Getting Started" page mentions incorrect library names + * [filesystem] missing documentation or bad links + * add missing docs for boost.python API enhancements. + * Entire iostreams library outdated in 1.34.0 + * numeric_limits specializations in limits.hpp are incorrect + * Updated ICU support in Boost.Regex + * Make boost.python compatible with python 2.5 + * ::boost::detail::empty_base improved + * Fix failing uild of libs/python/example/quickstart. + * Fix problems when building Python modules on boost 1.34.0 + * Patches to allow boost 1.34.0 to compile with stricter warning + checking under mac OS and gcc + * Unable to compile Python example, tutorial, or quickstart with + Boost 1_34_0 + * Improper overflow handling in shortest paths algorithms + * Multiple include paths for Python + * Add documentation for the iter_find/split algorithms + * regex_token_iterator crashes + * regex_error exception when quantifying some non-capturing groups + * read_write_mutex docs don't clearly specify that the functionality + is not present + +- Remove patches not needed anymore. +- Replace file dupes by symlinks. +- Add rpmlintrc to suppress rpmlint warnings for things that won't be + changed. + +------------------------------------------------------------------- +Sun Jul 15 16:09:59 CEST 2007 - schwab@suse.de + +- Fix reference to atomicity.h. + +------------------------------------------------------------------- +Sat Mar 24 18:41:43 CET 2007 - aj@suse.de + +- Add libbz2-devel to BuildRequires. + +------------------------------------------------------------------- +Fri Sep 22 13:49:48 CEST 2006 - pth@suse.de + +- Apply patch from community to build with Python 2.5 + +------------------------------------------------------------------- +Fri Jul 14 11:02:21 CEST 2006 - sf@suse.de + +- fixed wrong usage of visit_each() (Bug #192116) + +------------------------------------------------------------------- +Thu Jul 13 15:47:57 CEST 2006 - sf@suse.de + +- fixed link creation to libboost_thread.so, using %_lib instead + of lib + +------------------------------------------------------------------- +Mon Jun 19 19:46:37 CEST 2006 - jw@suse.de + +- added a libboost_thread.so as a symlink to libboost_thread-mt.so + +------------------------------------------------------------------- +Tue Apr 4 16:36:25 CEST 2006 - pth@suse.de + +- Add libboost_wave.a to file list + +------------------------------------------------------------------- +Tue Apr 4 13:29:35 CEST 2006 - pth@suse.de + +- Use explicit file names instead of wildcards to detect libraries + that weren't built. + +------------------------------------------------------------------- +Wed Feb 8 18:26:28 CET 2006 - schwab@suse.de + +- Fix broken assembler constraints [#148429]. + +------------------------------------------------------------------- +Wed Jan 25 21:34:43 CET 2006 - mls@suse.de + +- converted neededforbuild to BuildRequires + +------------------------------------------------------------------- +Tue Jan 17 23:03:53 CET 2006 - schwab@suse.de + +- Don't strip binaries. + +------------------------------------------------------------------- +Wed Dec 7 17:43:55 CET 2005 - pth@suse.de + +- Fix cases of type-punning in boost::python +- Compile without -fno-strict-aliasing again. +- Remove unnecessary type attributes in forward declarations. + +------------------------------------------------------------------- +Tue Dec 6 11:57:18 CET 2005 - pth@suse.de + +- Update to 1.33.1. +- Fix use of uninitialized variable. +- Compile with -fno-strict-aliasing. +- Update NEWS file + +------------------------------------------------------------------- +Thu Aug 25 17:30:18 CEST 2005 - pth@suse.de + +- Incorporate fixes that are bound to be in 1.33.1 +- Build boost.regex with unicode support. + +------------------------------------------------------------------- +Fri Aug 19 17:08:06 CEST 2005 - pth@suse.de + +- Add a NEWS file. + +------------------------------------------------------------------- +Wed Aug 18 16:55:01 CEST 2005 - pth@suse.de + +- Update to 1.33.0 with 5 new libraries. See NEWS for specifics. +- Fix use of uninitialized class member (matz@suse.de) +- Compile with -O2 instead of -O3 +- Make build process use %optflags + +------------------------------------------------------------------- +Thu Mar 10 17:08:32 CET 2005 - pth@suse.de + +- Update to 1.32.0 + +------------------------------------------------------------------- +Fri May 7 17:21:09 CEST 2004 - pth@suse.de + +- Add convenience symlinks (#38491) + +------------------------------------------------------------------- +Sun Apr 25 13:00:32 CEST 2004 - coolo@suse.de + +- build with several jobs + +------------------------------------------------------------------- +Fri Mar 5 19:43:25 CET 2004 - pth@suse.de + +- Update to 1.31.0. +- Make building boost work on Linux platforms where gcc does not + define _REENTRANT when passed -pthread. Patch was done by + Robert Schiele. + +------------------------------------------------------------------- +Sat Jan 10 14:14:40 CET 2004 - adrian@suse.de + +- add %run_ldconfig + +------------------------------------------------------------------- +Wed Aug 20 11:17:52 CEST 2003 - pthomas@suse.de + +- Update to 1.30.2, a bugfix release + +------------------------------------------------------------------- +Wed Jul 23 14:52:15 CEST 2003 - pthomas@suse.de + +- Initial package, based on the work by Robert Schiele. +- Fix building with Python 2.3 diff --git a/boost.spec b/boost.spec new file mode 100644 index 0000000..dd4d453 --- /dev/null +++ b/boost.spec @@ -0,0 +1,2116 @@ +# +# spec file +# +# Copyright (c) 2023 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +# +%global flavor @BUILD_FLAVOR@%{nil} + +%define ver 1.84.0 +%define _ver 1_84_0 +%define package_version 1_84_0 +%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_with ringdisabled + +%if !0%{?is_opensuse} && 0%{?sle_version:1} && 0%{?sle_version} < 150200 +%define DisOMPI3 ExclusiveArch: do_not_build +%endif + +%if 0%{?sle_version:1} && 0%{?sle_version} < 150300 +%define DisOMPI4 ExclusiveArch: do_not_build +%endif + +%define package_name boost%{library_version} +%define my_docdir %{_docdir}/boost%{library_version} + +# We can't have these inside the "@BUILD_FLAVOR@" because then quilt +# can't understand the spec file. If only @BUILD_FLAVOR@ was a normal macro.... +%define build_base 1 +%define name_suffix %{nil} + +%if "%{flavor}" == "%nil" +ExclusiveArch: do_not_build +%endif + +%if "%{flavor}" == "base" +%define build_base 1 +%define name_suffix -base +%bcond_with hpc +%bcond_with mpi +%endif + +%if "%{flavor}" == "extra" +%define build_base 0 +%define name_suffix -extra +%bcond_without python3 +%bcond_without mpi +%endif + +%if "%{flavor}" == "gnu-hpc" +%define build_base 1 +%define compiler_family gnu +%undefine c_f_ver +%bcond_with mpi +%bcond_without hpc +%endif + +%if "%{flavor}" == "gnu-openmpi4-hpc" +%{?DisOMPI4} +%define build_base 0 +%define mpi_vers 4 +%define compiler_family gnu +%define mpi_flavor openmpi +%undefine c_f_ver +%bcond_without hpc +%bcond_without mpi +%bcond_without python3 +%endif + +%if "%{flavor}" == "gnu-openmpi5-hpc" +%{?DisOMPI5} +%define build_base 0 +%define mpi_vers 5 +%define compiler_family gnu +%define mpi_flavor openmpi +%undefine c_f_ver +%bcond_without hpc +%bcond_without mpi +%bcond_without python3 +%endif + +%if "%{flavor}" == "gnu-mvapich2-hpc" +%define build_base 0 +%define compiler_family gnu +%define mpi_flavor mvapich2 +%undefine c_f_ver +%bcond_without hpc +%bcond_without mpi +%bcond_without python3 +%endif + +%if "%{flavor}" == "gnu-mpich-hpc" +%define build_base 0 +%define compiler_family gnu +%define mpi_flavor mpich +%undefine c_f_ver +%bcond_without hpc +%bcond_without mpi +%bcond_without python3 +%endif + +%if "%{flavor}" == "gnu10-openmpi4-hpc" +%{?DisOMPI4} +%define build_base 0 +%define mpi_vers 4 +%define compiler_family gnu +%define mpi_flavor openmpi +%define c_f_ver 10 +%bcond_without hpc +%bcond_without mpi +%bcond_without python3 +%endif + +%if "%{flavor}" == "gnu10-openmpi5-hpc" +%{?DisOMPI5} +%define build_base 0 +%define mpi_vers 5 +%define compiler_family gnu +%define mpi_flavor openmpi +%define c_f_ver 10 +%bcond_without hpc +%bcond_without mpi +%bcond_without python3 +%endif + +%if "%{flavor}" == "gnu10-mvapich2-hpc" +%define build_base 0 +%define compiler_family gnu +%define mpi_flavor mvapich2 +%define c_f_ver 10 +%bcond_without hpc +%bcond_without mpi +%bcond_without python3 +%endif + +%if "%{flavor}" == "gnu10-mpich-hpc" +%define build_base 0 +%define compiler_family gnu +%define mpi_flavor mpich +%define c_f_ver 10 +%bcond_without hpc +%bcond_without mpi +%bcond_without python3 +%endif + +%if 0%{?with_hpc} +%if %{with ringdisabled} +ExclusiveArch: do-not-build +%else +ExcludeArch: s390x %{ix86} ppc64 ppc64le +%endif +%endif + +# Python NumPy library is only available on Leap 42.1 OpenSUSE onward +# and is not availble in SLE +%if 0%{?suse_version} >= 1330 || 0%{?is_opensuse} +%bcond_without python_numpy +%else +%bcond_with python_numpy +%endif +# context hasn't been ported to most architectures yet +%ifarch %{ix86} x86_64 %{arm} aarch64 mips ppc ppc64 ppc64le riscv64 s390x +%bcond_without build_context +%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 package_datadir %{hpc_datadir} +%define base_name %{hpc_package_name %_ver} +%define package_name %{hpc_package_name %_ver} +%define package_python3_sitearch %{_hpc_python_sysconfig_path /usr/bin/python3 platlib %{?hpc_prefix}} +%else +%define package_prefix %{_prefix} +%define package_bindir %{_bindir} +%define package_libdir %{_libdir} +%define package_includedir %{_includedir} +%define package_datadir %{_datadir} +%define base_name boost%{?name_suffix} +%define package_python3_sitearch %python3_sitearch +%endif + +# needs newer *default* GCC to compile runtime +%if %{with build_context} && 0%{?suse_version} > 1320 +%bcond_without boost_fiber +%else +%bcond_with boost_fiber +%endif + +Name: %{base_name} +Version: 1.84.0 +Release: 0 +%define library_version 1_84_0 +Summary: Boost C++ Libraries +License: BSL-1.0 +Group: Development/Libraries/C and C++ +URL: https://www.boost.org +Source0: https://boostorg.jfrog.io/artifactory/main/release/%{version}/source/boost_%{_ver}.tar.bz2 +Source1: boost-rpmlintrc +Source3: https://downloads.sourceforge.net/project/boost/boost-docs/1.56.0/boost_1_56_pdf.tar.bz2 +Source4: existing_extra_docs +Source10: exception.objdump +Source11: __init__.py +Source100: baselibs.conf +Source101: symbol_diff.sh +Source102: README.boost-devel +Patch1: boost-thread.patch +Patch2: boost-no_type_punning.patch +Patch4: boost-pool_check_overflow.patch +Patch5: boost-strict_aliasing.patch +Patch6: boost-use_std_xml_catalog.patch +Patch7: boost-rpmoptflags-only.patch +Patch9: boost-aarch64-flags.patch +Patch15: boost-1.57.0-python-abi_letters.patch +Patch16: boost-1.55.0-python-test-PyImport_AppendInittab.patch +Patch17: python_mpi.patch +Patch18: dynamic_linking.patch +Patch20: python_library_name.patch +Patch21: boost-remove-cmakedir.patch +Patch22: boost-process.patch +%{?suse_build_hwcaps_libs} +BuildRequires: fdupes +BuildRequires: gmp-devel +BuildRequires: libbz2-devel +BuildRequires: libexpat-devel +BuildRequires: libicu-devel +BuildRequires: libzstd-devel +BuildRequires: xz-devel +BuildRequires: pkgconfig(zlib) +%if %{with boost_fiber} +BuildRequires: gcc-c++ > 5 +%else +BuildRequires: gcc-c++ +%endif +%if ! %{build_base} +BuildRequires: dos2unix +%if %{with python3} +BuildRequires: python3-devel +%if %{with python_numpy} +BuildRequires: python3-numpy-devel +%endif +%endif +%if %{with build_docs} +BuildRequires: docbook +BuildRequires: docbook-xsl-stylesheets +BuildRequires: doxygen +BuildRequires: libxslt-tools +BuildRequires: texlive-latex +%endif +%endif +%if %{with hpc} +BuildRequires: %{compiler_family}%{?c_f_ver}-compilers-hpc-macros-devel +BuildRequires: lua-lmod +BuildRequires: python3 +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 +%else +%if %{with mpi} +BuildRequires: openmpi-macros-devel +%endif +%endif + +%description +Boost provides free peer-reviewed portable C++ source libraries. The +emphasis is on libraries that work well with the C++ Standard Library. +One goal is to establish "existing practice" and provide reference +implementations so that the Boost libraries are suitable for eventual +standardization. Some of the libraries have already been proposed for +inclusion in the C++ Standards Committee's upcoming C++ Standard +Library Technical Report. + +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. + +%package -n libboost_headers%{library_version}-devel +Summary: Development headers for Boost +Group: Development/Libraries/C and C++ +Requires: boost-license%{library_version} +Requires: libstdc++-devel +Conflicts: boost-devel < 1.63 +Conflicts: libboost_headers-devel < %{version} +Conflicts: libboost_headers-devel-impl +Conflicts: libboost_headers1_66_0-devel +Provides: libboost_headers-devel-impl = %{version} + +%description -n libboost_headers%{library_version}-devel +A collection of header-only libraries for Boost. + +%package -n boost-license%{library_version} +Summary: Boost License +Group: Development/Libraries/C and C++ +Provides: boost-license = %{version}-%{release} +BuildArch: noarch + +%description -n boost-license%{library_version} +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 +Requires: libboost_date_time%{library_version}-devel +Requires: libboost_filesystem%{library_version}-devel +Requires: libboost_graph%{library_version}-devel +Requires: libboost_iostreams%{library_version}-devel +Requires: libboost_locale%{library_version}-devel +Requires: libboost_log%{library_version}-devel +Requires: libboost_math%{library_version}-devel +Requires: libboost_nowide%{library_version}-devel +Requires: libboost_program_options%{library_version}-devel +Requires: libboost_random%{library_version}-devel +Requires: libboost_regex%{library_version}-devel +Requires: libboost_serialization%{library_version}-devel +Requires: libboost_system%{library_version}-devel +Requires: libboost_test%{library_version}-devel +Requires: libboost_thread%{library_version}-devel +Requires: libboost_timer%{library_version}-devel +Requires: libboost_type_erasure%{library_version}-devel +Requires: libboost_url%{library_version}-devel +Requires: libboost_wave%{library_version}-devel +Requires: libstdc++-devel +Conflicts: boost-devel-impl +Provides: boost-devel-impl = %{version} +%if %{with build_context} +Requires: libboost_context%{library_version}-devel +Requires: libboost_coroutine%{library_version}-devel +%endif +%if %{with boost_fiber} +Requires: libboost_fiber%{library_version}-devel +%endif +%if %{with mpi} +Requires: libboost_graph_parallel%{library_version}-devel +Requires: libboost_mpi%{library_version}-devel +%endif +%if %{with python3} +Requires: libboost_python-py3-%{library_version}-devel +%endif +%endif + +%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} +%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. +%endif + +%package -n boost%{library_version}-jam +Summary: A Boost Make Replacement +Group: Development/Tools/Building +Conflicts: boost_1_66-jam +Obsoletes: boost-jam-impl < %{version} +Obsoletes: boost_1_66-jam +Provides: boost_1_66-jam = %{version} +Conflicts: 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 +Perforce Jam. It contains significant improvements made to facilitate +its use in the Boost Build System. + +%package -n %{package_name}-doc-html +Summary: HTML documentation for the Boost C++ Libraries +Group: Development/Libraries/C and C++ +BuildArch: noarch + +%description -n %{package_name}-doc-html +This package contains the documentation of the boost dynamic libraries +in HTML format. + +%package doc-man +Summary: Man documentation for the Boost C++ Libraries +Group: Development/Libraries/C and C++ +BuildArch: noarch + +%description doc-man +This package contains the documentation of the boost dynamic libraries +as man pages. + +%package -n %{package_name}-doc-pdf +Summary: PDF documentation for the Boost C++ Libraries +Group: Development/Libraries/C and C++ +BuildArch: noarch + +%description -n %{package_name}-doc-pdf +This package contains the documentation of the boost dynamic libraries +in PDF format. + +%package -n libboost_atomic%{library_version} +Summary: Boost.Atomic runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_atomic%{library_version} +Run-Time support for Boost.Atomic, a library that provides atomic data types +and operations on these data types, as well as memory ordering constraints +required for coordinating multiple threads through atomic variables. + +%package -n libboost_atomic%{library_version}-devel +Summary: Development headers for Boost.Atomic +Group: Development/Libraries/C and C++ +Requires: libboost_atomic%{library_version} = %{version} +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libstdc++-devel +Conflicts: boost-devel < 1.63 +Conflicts: libboost_atomic-devel-impl +Conflicts: libboost_atomic1_66_0-devel +Provides: libboost_atomic-devel-impl = %{version} + +%description -n libboost_atomic%{library_version}-devel +Development support for Boost.Atomic, a library that provides atomic +data types and operations on these data types, as well as memory +ordering constraints required for coordinating multiple threads through +atomic variables. + +%package -n libboost_container%{library_version} +Summary: Boost.Container runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_container%{library_version} +This package contains the Boost.Container runtime library. + +%package -n libboost_container%{library_version}-devel +Summary: Development headers for Boost.Container +Group: Development/Libraries/C and C++ +Requires: libboost_container%{library_version} = %{version} +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libstdc++-devel +Conflicts: boost-devel < 1.63 +Conflicts: libboost_container-devel-impl +Conflicts: libboost_container1_66_0-devel +Provides: libboost_container-devel-impl = %{version} + +%description -n libboost_container%{library_version}-devel +Development header files and libraries for Boost.Container. +Boost.Container library implements several well-known containers, +including STL containers. The aim of the library is to offers advanced +features not present in standard containers or to offer the latest +standard draft features for compilers that don't comply with the latest +C++ standard. + +%package -n libboost_context%{library_version} +Summary: Boost.Context runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_context%{library_version} +Runtime support for Boost.Context, a library that providing cooperative +multitasking support. + +%package -n libboost_context%{library_version}-devel +Summary: Development headers for Boost.Context +Group: Development/Libraries/C and C++ +Requires: libboost_context%{library_version} = %{version} +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libstdc++-devel +Conflicts: boost-devel < 1.63 +Conflicts: libboost_context-devel-impl +Conflicts: libboost_context1_66_0-devel +Provides: libboost_context-devel-impl = %{version} + +%description -n libboost_context%{library_version}-devel +Development headers and libraries for Boost.Context, a library that +providing cooperative multitasking support. + +%package -n libboost_contract%{library_version} +Summary: Boost.Contract runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_contract%{library_version} +Runtime support for Boost.Contract, a library that implements +Design by Contract or DbC or contract programming. + +%package -n libboost_contract%{library_version}-devel +Summary: Development headers for Boost.Contract +Group: Development/Libraries/C and C++ +Requires: libboost_contract%{library_version} = %{version} +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_system%{library_version}-devel = %{version} +Requires: libstdc++-devel +Conflicts: libboost_contract-devel-impl +Conflicts: libboost_contract1_66_0-devel +Provides: libboost_contract-devel-impl = %{version} + +%description -n libboost_contract%{library_version}-devel +Development headers and libraries for Boost.Contract, a library +that implements Design by Contract or DbC or contract programming. + +%package -n libboost_coroutine%{library_version} +Summary: Boost::Coroutine runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_coroutine%{library_version} +This package contains the Boost Coroutine runtime library. + +%package -n libboost_coroutine%{library_version}-devel +Summary: Development headers for Boost.Coroutine +Group: Development/Libraries/C and C++ +Requires: libboost_chrono%{library_version}-devel = %{version} +Requires: libboost_context%{library_version}-devel = %{version} +Requires: libboost_coroutine%{library_version} = %{version} +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_thread%{library_version}-devel = %{version} +Requires: libstdc++-devel +Conflicts: boost-devel < 1.63 +Conflicts: libboost_coroutine-devel-impl +Conflicts: libboost_coroutine1_66_0-devel +Provides: libboost_coroutine-devel-impl = %{version} + +%description -n libboost_coroutine%{library_version}-devel +This package provides headers for Boost.Coroutine libraries. +Boost.Coroutine2 provides templates for generalized subroutines which +allow suspending and resuming execution at certain locations. + +%package -n libboost_date_time%{library_version} +Summary: Boost.DateTime runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_date_time%{library_version} +This package contains the Boost Date.DateTime runtime libraries. + +%package -n libboost_date_time%{library_version}-devel +Summary: Development headers for Boost.DateTime library +Group: Development/Libraries/C and C++ +Requires: libboost_date_time%{library_version} = %{version} +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libstdc++-devel +Conflicts: boost-devel < 1.63 +Conflicts: libboost_date_time-devel-impl +Conflicts: libboost_date_time1_66_0-devel +Provides: libboost_date_time-devel-impl = %{version} + +%description -n libboost_date_time%{library_version}-devel +This package contains development header files and libraries for +Boost.DateTime library. + +%package -n libboost_fiber%{library_version} +Summary: Boost.Fiber runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_fiber%{library_version} +This package contains Boost.Fiber runtime library. + +%package -n libboost_fiber%{library_version}-devel +Summary: Development headers for Boost.Fiber library +Group: Development/Libraries/C and C++ +Requires: libboost_context%{library_version}-devel = %{version} +Requires: libboost_fiber%{library_version} = %{version} +Requires: libboost_filesystem%{library_version}-devel = %{version} +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libstdc++-devel +Conflicts: boost-devel < 1.63 +Conflicts: libboost_fiber-devel-impl +Conflicts: libboost_fiber1_66_0-devel +Provides: libboost_fiber-devel-impl = %{version} + +%description -n libboost_fiber%{library_version}-devel +This package contains development header files and libraries for +Boost.Fiber library. Boost.Fiber is a cooperative multi-tasking +userland threading library. + +%package -n libboost_filesystem%{library_version} +Summary: Boost.Filesystem Runtime Libraries +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_filesystem%{library_version} +This package contains the Boost.Filesystem library. + +%package -n libboost_filesystem%{library_version}-devel +Summary: Development headers for Boost.Filesystem library +Group: Development/Libraries/C and C++ +Requires: libboost_atomic%{library_version}-devel = %{version} +Requires: libboost_filesystem%{library_version} = %{version} +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libstdc++-devel +Conflicts: boost-devel < 1.63 +Conflicts: libboost_filesystem-devel-impl +Conflicts: libboost_filesystem1_66_0-devel +Provides: libboost_filesystem-devel-impl = %{version} + +%description -n libboost_filesystem%{library_version}-devel +Development headers for Boost.Filesystem library, a library providing +facilities to manipulate files and directories, and the paths that +identify them. + +%package -n libboost_graph%{library_version} +Summary: Boost.Graph runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_graph%{library_version} +This package contains the Boost.Graph runtime library. + +%package -n libboost_graph%{library_version}-devel +Summary: Development headers for Boost.Graph library +Group: Development/Libraries/C and C++ +Requires: libboost_graph%{library_version} = %{version} +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_regex%{library_version}-devel = %{version} +Requires: libstdc++-devel +Conflicts: boost-devel < 1.63 +Conflicts: libboost_graph-devel-impl +Conflicts: libboost_graph1_66_0-devel +Provides: libboost_graph-devel-impl = %{version} + +%description -n libboost_graph%{library_version}-devel +Development headers for Boost.Graph library. The BGL algorithms consist +of a core set of algorithm patterns and a larger set of graph +algorithms. The core algorithm patterns are Breadth First Search, Depth +First Search, and Uniform Cost Search. + +%package -n libboost_iostreams%{library_version} +Summary: Boost.IOStreams Runtime Libraries +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_iostreams%{library_version} +This package contains the Boost.IOStreams Runtime libraries. + +%package -n libboost_iostreams%{library_version}-devel +Summary: Development headers for Boost.IOStreans library +Group: Development/Libraries/C and C++ +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_iostreams%{library_version} = %{version} +Requires: pkgconfig(bzip2) +Requires: pkgconfig(liblzma) +Requires: pkgconfig(libzstd) +Requires: pkgconfig(zlib) +Conflicts: boost-devel < 1.63 +Conflicts: libboost_iostreams-devel-impl +Conflicts: libboost_iostreams1_66_0-devel +Provides: libboost_iostreams-devel-impl = %{version} + +%description -n libboost_iostreams%{library_version}-devel +Boost.IOStreams provides a framework for defining streams, stream +buffers and IO filters + +%package -n libboost_log%{library_version} +Summary: Boost.Log runtime Run-Time library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_log%{library_version} +This package contains runtime library for Boost.Log. + +%package -n libboost_log%{library_version}-devel +Summary: Development headers for Boost.Log library +Group: Development/Libraries/C and C++ +Requires: libboost_atomic%{library_version}-devel = %{version} +Requires: libboost_chrono%{library_version}-devel = %{version} +Requires: libboost_date_time%{library_version}-devel = %{version} +Requires: libboost_filesystem%{library_version}-devel = %{version} +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_log%{library_version} = %{version} +Requires: libboost_regex%{library_version}-devel = %{version} +Requires: libboost_thread%{library_version} = %{version} +Conflicts: boost-devel < 1.63 +Conflicts: libboost_log-devel-impl +Conflicts: libboost_log1_66_0-devel +Provides: libboost_log-devel-impl = %{version} + +%description -n libboost_log%{library_version}-devel +Development headers for Boost.Log library which aims to make logging +significantly easier for the application developer. It provides a wide +range of out-of-the-box tools along with public interfaces for extending +the library. + +%package -n libboost_math%{library_version} +Summary: Boost.Math runtime libraries +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_math%{library_version} +This package contains the Boost.Math Runtime libraries. + +%package -n libboost_math%{library_version}-devel +Summary: Development headers for Boost.Math libraries +Group: Development/Libraries/C and C++ +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_math%{library_version} = %{version} +Conflicts: boost-devel < 1.63 +Conflicts: libboost_math-devel-impl +Conflicts: libboost_math1_66_0-devel +Provides: libboost_math-devel-impl = %{version} + +%description -n libboost_math%{library_version}-devel +Development headers for Boost.Math* boost libraries. + +%package -n libboost_mpi%{library_version} +Summary: Boost.MPI runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_mpi%{library_version} +This package contains the Boost.MPI runtime library. + +%package -n libboost_mpi%{library_version}-devel +Summary: Development headers for Boost.MPI library +Group: Development/Libraries/C and C++ +%if %{with mpi} +%{?openmpi_devel_requires} +%endif +Requires: libboost_graph%{library_version}-devel +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_mpi%{library_version} = %{version} +Requires: libboost_serialization%{library_version}-devel +Conflicts: boost-devel < 1.63 +Conflicts: libboost_mpi-devel-impl +Conflicts: libboost_mpi1_66_0-devel +Provides: libboost_mpi-devel-impl = %{version} +%if %{with python3} +Requires: libboost_python-py3-%{library_version}-devel +%endif + +%description -n libboost_mpi%{library_version}-devel +Development headers for Boost.MPI boost library + +%package -n libboost_graph_parallel%{library_version} +Summary: Boost.Graph.Distributed runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_graph_parallel%{library_version} +This package contains the Boost.Graph parallel runtime library + +%package -n libboost_graph_parallel%{library_version}-devel +Summary: Development headers for Boost.Graph parallel library +Group: Development/Libraries/C and C++ +Requires: libboost_graph_parallel%{library_version} = %{version} +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_mpi%{library_version}-devel = %{version} +Conflicts: boost-devel < 1.63 +Conflicts: libboost_graph_parallel-devel-impl +Conflicts: libboost_graph_parallel1_66_0-devel +Provides: libboost_graph_parallel-devel-impl = %{version} + +%description -n libboost_graph_parallel%{library_version}-devel +Development headers for Boost.Graph parallel boost library. + +%package -n libboost_nowide%{library_version} +Summary: Boost.Nowide runtime libraries +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_nowide%{library_version} +This package contains the Boost.Math Runtime libraries. + +%package -n libboost_nowide%{library_version}-devel +Summary: Development headers for Boost.Nowide libraries +Group: Development/Libraries/C and C++ +Conflicts: boost-nowide-devel-impl +Provides: boost-nowide-devel-impl = %{version} +Requires: libboost_nowide%{library_version} = %{version} + +%description -n libboost_nowide%{library_version}-devel +Development headers for Boost.Nowide* boost libraries. + +%package -n libboost_mpi_python-py3-%{library_version} +Summary: Boost.MPI Python 3.x serialization library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_mpi_python-py3-%{library_version} +This package contains the Boost.MPI Python 3.x serialization +inteface. + +%package -n libboost_mpi_python-py3-%{library_version}-devel +Summary: Development library for Boost.MPI Python 3.x serialization +Group: Development/Libraries/C and C++ +Requires: libboost_mpi%{library_version}-devel = %{version} +Requires: libboost_mpi_python-py3-%{library_version} = %{version} +Requires: libboost_python-py3-%{library_version} = %{version} +Conflicts: boost-devel < 1.63 +Conflicts: libboost_mpi_python-py3-1_66_0-devel +Conflicts: libboost_mpi_python3-devel-impl +Provides: libboost_mpi_python3-devel-impl = %{version} + +%description -n libboost_mpi_python-py3-%{library_version}-devel +This package contains the Boost.MPI development library for Python 3.x +serialization interface + +%package -n python3-boost_parallel_mpi%{library_version} +Summary: Python 3.x bindings for Boost.Parallel.MPI library +Group: Development/Languages/Python +Conflicts: python3-boost_parallel_mpi-impl +Conflicts: python3-boost_parallel_mpi1_66_0 +Provides: python3-boost_parallel_mpi-impl = %{version} + +%description -n python3-boost_parallel_mpi%{library_version} +This package contains the Boost.Parallel.MPI bindings for Python 3.x + +%package -n libboost_test%{library_version} +Summary: Boost.Test runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_test%{library_version} +This package contains the BoosttTest runtime library. + +%package -n libboost_test%{library_version}-devel +Summary: Development headers for Boost.Test library +Group: Development/Libraries/C and C++ +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_test%{library_version} = %{version} +Conflicts: boost-devel < 1.63 +Conflicts: libboost_test-devel-impl +Conflicts: libboost_test1_66_0-devel +Provides: libboost_test-devel-impl = %{version} + +%description -n libboost_test%{library_version}-devel +Development headers for Boost.Test library. Boost.Test supports for +simple program testing, full unit testing, and for program execution +monitoring. + +%package -n libboost_program_options%{library_version} +Summary: Boost.ProgramOptions runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_program_options%{library_version} +This package contains the Boost.ProgramOptions runtime library. + +%package -n libboost_program_options%{library_version}-devel +Summary: Development headers for Boost.ProgramOptions library +Group: Development/Libraries/C and C++ +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_program_options%{library_version} = %{version} +Conflicts: boost-devel < 1.63 +Conflicts: libboost_program_options-devel-impl +Conflicts: libboost_program_options1_66_0-devel +Provides: libboost_program_options-devel-impl = %{version} + +%description -n libboost_program_options%{library_version}-devel +This package contains development headers for Boost.ProgramOptions +library. + +%package -n libboost_python-py3-%{library_version} +Summary: Boost.Python runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_python-py3-%{library_version} +This package contains the Boost.Python runtime libraries for python3 +bindings. + +%package -n libboost_python-py3-%{library_version}-devel +Summary: Development headers for Boost.Python library +Group: Development/Libraries/C and C++ +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_python-py3-%{library_version} = %{version} +Conflicts: boost-devel < 1.63 +Conflicts: libboost_python-py3-1_66_0-devel +Conflicts: libboost_python3-devel-impl +Provides: libboost_python3-devel-impl = %{version} + +%description -n libboost_python-py3-%{library_version}-devel +Development headers for Boost.Python library. This package contains +library for python3 development for boost. + +%package -n libboost_numpy-py3-%{library_version} +Summary: Boost.Python.NumPy runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_numpy-py3-%{library_version} +This package contains the Boost.Python.NumPy runtime libraries for python3 +bindings. + +%package -n libboost_numpy-py3-%{library_version}-devel +Summary: Development headers for Boost.Python.NumPy library +Group: Development/Libraries/C and C++ +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_numpy-py3-%{library_version} = %{version} +Conflicts: boost-devel < 1.63 +Conflicts: libboost_numpy-py3-1_66_0-devel +Conflicts: libboost_numpy3-devel-impl +Provides: libboost_numpy3-devel-impl = %{version} + +%description -n libboost_numpy-py3-%{library_version}-devel +Development headers for Boost.Python.NumPy library. This package contains +library for python3 development for boost. + +%package -n libboost_serialization%{library_version} +Summary: Boost.Serialization runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_serialization%{library_version} +This package contains the Boost.Serialization runtime library. + +%package -n libboost_serialization%{library_version}-devel +Summary: Development headers for Boost.Serialization library +Group: Development/Libraries/C and C++ +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_serialization%{library_version} = %{version} +Conflicts: boost-devel < 1.63 +Conflicts: libboost_serialization-devel-impl +Conflicts: libboost_serialization1_66_0-devel +Provides: libboost_serialization-devel-impl = %{version} + +%description -n libboost_serialization%{library_version}-devel +This package contains development headers for Boost.Serialization +library. + +%package -n libboost_stacktrace%{library_version} +Summary: Boost.Stacktrace runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_stacktrace%{library_version} +This package contains the Boost.Stacktrace runtime library. + +%package -n libboost_stacktrace%{library_version}-devel +Summary: Development headers for Boost.Stacktrace library +Group: Development/Libraries/C and C++ +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_stacktrace%{library_version} = %{version} +Conflicts: libboost_stacktrace-devel-impl +Conflicts: libboost_stacktrace1_66_0-devel +Provides: libboost_stacktrace-devel-impl = %{version} + +%description -n libboost_stacktrace%{library_version}-devel +This package contains development headers for Boost.Stacktrace library. +Boost.Stacktrace is a simple C++03 library that provide information +about call sequence in a human-readable form. + +%package -n libboost_system%{library_version} +Summary: Boost.System runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_system%{library_version} +This package contains the Boost.System stub library. + +%package -n libboost_system%{library_version}-devel +Summary: Development headers for Boost.System library +Group: Development/Libraries/C and C++ +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_system%{library_version} = %{version} +Conflicts: boost-devel < 1.63 +Conflicts: libboost_system-devel-impl +Conflicts: libboost_system1_66_0-devel +Provides: libboost_system-devel-impl = %{version} + +%description -n libboost_system%{library_version}-devel +This package contained Boost.System development library. It is no +longer required as the library is headers only. + +%package -n libboost_thread%{library_version} +Summary: Boost.Thread runtime libraries +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_thread%{library_version} +This package contains the Boost.Thread runtime library. + +%package -n libboost_thread%{library_version}-devel +Summary: Development headers for Boost.Thread library +Group: Development/Libraries/C and C++ +Requires: libboost_chrono%{library_version}-devel = %{version} +Requires: libboost_date_time%{library_version}-devel = %{version} +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_thread%{library_version} = %{version} +Conflicts: boost-devel < 1.63 +Conflicts: libboost_thread-devel-impl +Conflicts: libboost_thread1_66_0-devel +Provides: libboost_thread-devel-impl = %{version} + +%description -n libboost_thread%{library_version}-devel +This package contains development headers for Boost.Thread library. + +%package -n libboost_wave%{library_version} +Summary: Boost.Wave runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_wave%{library_version} +This package contains the Boost::Wave runtime library. + +%package -n libboost_wave%{library_version}-devel +Summary: Development headers for Boost.Wave library +Group: Development/Libraries/C and C++ +Requires: libboost_chrono%{library_version}-devel = %{version} +Requires: libboost_date_time%{library_version}-devel = %{version} +Requires: libboost_filesystem%{library_version}-devel = %{version} +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_serialization%{library_version}-devel = %{version} +Requires: libboost_thread%{library_version}-devel = %{version} +Requires: libboost_wave%{library_version} = %{version} +Conflicts: boost-devel < 1.63 +Conflicts: libboost_wave-devel-impl +Conflicts: libboost_wave1_66_0-devel +Provides: libboost_wave-devel-impl = %{version} + +%description -n libboost_wave%{library_version}-devel +This package contains development headers for Boost.Wave library. + +%package -n libboost_url%{library_version} +Summary: Boost.URL runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_url%{library_version} +This package contains the Boost::URL runtime library. + +%package -n libboost_url%{library_version}-devel +Summary: Development headers for Boost.URL library +Group: Development/Libraries/C and C++ +Provides: libboost_url-devel-impl = %{version} + +%description -n libboost_url%{library_version}-devel +This package contains development headers for Boost.URL library. + +%package -n libboost_regex%{library_version} +Summary: Boost.Regex runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_regex%{library_version} +This package contains the Boost.Regex runtime library. + +%package -n libboost_regex%{library_version}-devel +Summary: Development headers for Boost.Regex library +Group: Development/Libraries/C and C++ +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_regex%{library_version} = %{version} +Requires: libicu-devel +Conflicts: boost-devel < 1.63 +Conflicts: libboost_regex-devel-impl +Conflicts: libboost_regex1_66_0-devel +Provides: libboost_regex-devel-impl = %{version} + +%description -n libboost_regex%{library_version}-devel +This package contains development headers for Boost.Regex library. + +%package -n libboost_random%{library_version} +Summary: Boost.Random runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_random%{library_version} +This package contains the Boost.Random runtime library. + +%package -n libboost_random%{library_version}-devel +Summary: Development headers for Boost.Random library +Group: Development/Libraries/C and C++ +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_random%{library_version} = %{version} +Requires: libboost_system%{library_version}-devel = %{version} +Conflicts: boost-devel < 1.63 +Conflicts: libboost_random-devel-impl +Conflicts: libboost_random1_66_0-devel +Provides: libboost_random-devel-impl = %{version} + +%description -n libboost_random%{library_version}-devel +This package contains Boost.Random development headers. + +%package -n libboost_chrono%{library_version} +Summary: The Boost::Chrono runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_chrono%{library_version} +This package contains the Boost::Chrono runtime library. + +%package -n libboost_chrono%{library_version}-devel +Summary: Development headers for Boost.Chrono library +Group: Development/Libraries/C and C++ +Requires: libboost_chrono%{library_version} = %{version} +Requires: libboost_headers%{library_version}-devel = %{version} +Conflicts: boost-devel < 1.63 +Conflicts: libboost_chrono-devel-impl +Conflicts: libboost_chrono1_66_0-devel +Provides: libboost_chrono-devel-impl = %{version} + +%description -n libboost_chrono%{library_version}-devel +This package contains Boost.Chrono development headers. + +%package -n libboost_locale%{library_version} +Summary: Boost::Locale runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_locale%{library_version} +This package contains Boost::Locale runtime library. + +%package -n libboost_locale%{library_version}-devel +Summary: Development headers for Boost.Locale library +Group: Development/Libraries/C and C++ +Requires: libboost_chrono%{library_version}-devel = %{version} +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_locale%{library_version} = %{version} +Requires: libboost_system%{library_version}-devel = %{version} +Requires: libboost_thread%{library_version}-devel = %{version} +Requires: libicu-devel +Conflicts: boost-devel < 1.63 +Conflicts: libboost_locale-devel-impl +Conflicts: libboost_locale1_66_0-devel +Provides: libboost_locale-devel-impl = %{version} + +%description -n libboost_locale%{library_version}-devel +This package contains development headers for Boost.Locale library. + +%package -n libboost_timer%{library_version} +Summary: Boost.Timer runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_timer%{library_version} +This package contains Boost.Timer runtime library. + +%package -n libboost_timer%{library_version}-devel +Summary: Development headers for Boost.Timer library +Group: Development/Libraries/C and C++ +Requires: libboost_chrono%{library_version}-devel = %{version} +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_timer%{library_version} = %{version} +Conflicts: boost-devel < 1.63 +Conflicts: libboost_timer-devel-impl +Conflicts: libboost_timer1_66_0-devel +Provides: libboost_timer-devel-impl = %{version} + +%description -n libboost_timer%{library_version}-devel +This package contains development headers for Boost.Timer library. + +%package -n libboost_type_erasure%{library_version} +Summary: Boost.TypeErasure runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_type_erasure%{library_version} +This package contains Boost::TypeErasure runtime library. + +%package -n libboost_type_erasure%{library_version}-devel +Summary: Development headers for Boost.TypeErasure library +Group: Development/Libraries/C and C++ +Requires: libboost_chrono%{library_version}-devel = %{version} +Requires: libboost_headers%{library_version}-devel = %{version} +Requires: libboost_system%{library_version}-devel = %{version} +Requires: libboost_thread%{library_version}-devel = %{version} +Requires: libboost_type_erasure%{library_version} = %{version} +Conflicts: boost-devel < 1.63 +Conflicts: libboost_type_erasure-devel-impl +Conflicts: libboost_type_erasure1_66_0-devel +Provides: libboost_type_erasure-devel-impl = %{version} + +%description -n libboost_type_erasure%{library_version}-devel +This package contains development headers for Boost.TypeErasure library. + +%package -n libboost_json%{library_version} +Summary: Boost.JSON runtime library +Group: System/Libraries +Requires: boost-license%{library_version} + +%description -n libboost_json%{library_version} +This package contains Boost::JSON runtime library. + +%package -n libboost_json%{library_version}-devel +Summary: Development headers for Boost.JSON library +Group: Development/Libraries/C and C++ +Requires: libboost_container%{library_version}-devel = %{version} +Requires: libboost_json%{library_version} = %{version} +Conflicts: libboost_json-devel-impl +Provides: libboost_json-devel-impl = %{version} + +%description -n libboost_json%{library_version}-devel +This package contains development headers for Boost.JSON library. + +%package -n %{package_name}-quickbook +Summary: Documentation tool geared towards C++ +Group: Development/Tools/Doc Generators +Requires: boost-license%{library_version} +Conflicts: quickbook +Provides: quickbook = %{version} + +%description -n %{package_name}-quickbook +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 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 ... +find -type f ! \( -name \*.sh -o -name \*.py -o -name \*.pl \) -exec chmod -x {} + +%patch1 -p1 +%patch2 +%patch4 +%patch5 +%patch6 -p1 +%patch7 +%patch9 -p1 +%patch15 -p1 +%patch16 -p1 +%patch17 -p1 +%patch18 -p1 +%patch20 -p1 +%patch21 -p1 +%patch22 -p2 + +%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 : : : \$(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 + +# 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. +# MPI builds a python module. +cat << \EOF >.build +export PY_LIBRARIES_FLAGS="--with-python" +%if %{with mpi} +PY_LIBRARIES_FLAGS+=" --with-mpi" +%endif + +# Dummy entry to make sure we don't build everything +export LIBRARIES_FLAGS="--with-system" + +# Dummy entry replaced with real libraries, if we build something +%if %{with mpi} +LIBRARIES_FLAGS=" --with-graph_parallel" +%endif + +EOF + +%if %{with mpi} +# Set PATH, MANPATH and LD_LIBRARY_PATH for mpi +%if %{with hpc} +module load gnu %mpi_flavor +%else +%setup_openmpi +%endif +%endif + +# Need specific Boost Jam config files. +# 1. one all "normal" libraries +# 2. one for each python version for for python/mpi libraries +# use staging directories for MPI/PYTHON combinations. + +# General case +# alias boost_python_alias : : /boost/python//boost_python ; +cat << EOF >user-config.jam +EOF +%endif + +# bootstrap b2 +./bootstrap.sh \ + --prefix=%{package_prefix} --exec-prefix=%{package_bindir} \ + --libdir=%{package_libdir} --includedir=%{package_includedir} \ + --with-toolset=gcc + +# Read shared build instructions +. ./.build + +%if ! %{build_base} + +# Build boost python3 and MPI, installed in python3 staging +%if %{with python3} +cp user-config.jam user-config-py3.jam +# sed -i -e 's#//boost_python#//boost_python3#' ./user-config-py3.jam +%define py3_abiflags %(python3-config --abiflags) +%{?!python3_version: %define python3_version %{py3_ver} } + +cat << EOF >> user-config-py3.jam +using python + : %{python3_version} + : %{_bindir}/python3 + : %{_includedir}/python%{python3_version}%{py3_abiflags} + : + : + : .%{py3_soflags} + : %{py3_abiflags} + ; +%if %{with mpi} +using mpi ; +%endif +EOF + +./b2 -d+2 -q --user-config=./user-config-py3.jam \ + --debug-configuration \ + --build-type=minimal --build-dir=./python3-build \ + --python-buildid=py3 \ + --stagedir=./python3-stage %{?_smp_mflags} \ + $PY_LIBRARIES_FLAGS \ + python=%{python3_version} threading=multi link=shared runtime-link=shared stage +%endif + +%if %{with build_docs} +cat << EOF >>user-config.jam +using xsltproc ; + +using boostbook + : %{_datadir}/xml/docbook/stylesheet/nwalsh/current + : %{_datadir}/xml/docbook/schema/dtd/4.2 + ; + +using doxygen ; +EOF +%endif + +# needed to get graph_parallel built +%if %{with mpi} +echo 'using mpi ;' >> ./user-config.jam +%endif + +%endif + +# This is run for both mini and non-mini build +./b2 -d+2 -q --user-config=./user-config.jam \ + --debug-configuration \ + --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 + +# Build documentation +%if ! %{with hpc} +%if %{with build_quickbook} +pushd tools/quickbook +../../b2 --debug-configuration --user-config=../../user-config.jam --v2 dist-bin %{?_smp_mflags} +popd +%endif + +%if %{with build_docs} +cd doc +./b2 --debug-configuration --user-config=../user-config.jam --v2 man %{?_smp_mflags} +%endif +%endif + +%endif + +%install + +# Read shared build instructions +. ./.build + +%if ! %{build_base} + +%if %{with mpi} +# Set PATH, MANPATH and LD_LIBRARY_PATH for mpi +%if %{with hpc} +module load gnu %mpi_flavor +%else +%setup_openmpi +%endif +%endif + +%if %{with python3} +./b2 -d+2 -q --user-config=./user-config-py3.jam \ + --debug-configuration \ + --build-type=minimal --build-dir=./python3-build \ + --python-buildid=py3 \ + --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 +%endif + +%endif + +# Generic install +./b2 -d+2 -q \ + --debug-configuration \ + --build-type=minimal --build-dir=./build --stagedir=./stage \ + --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}%{package_libdir}/*.so* | grep python\\.) + +%if ! %{build_base} + +%if %{with python3} +! $(ldd %{buildroot}%{package_libdir}/*.so* | grep python3-\\.) +ln -s libboost_python-py3.so %{buildroot}%{package_libdir}/libboost_python3.so +%endif + +%if %{with python3} +mkdir -p %{buildroot}%{package_python3_sitearch}/boost/parallel/mpi/ +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 +%if ! %{with hpc} +mv %{buildroot}%{_libdir}/boost-python3.*/mpi.%{py3_soflags}.so %{buildroot}%{package_python3_sitearch}/mpi.%{py3_soflags}.so +rmdir %{buildroot}%{_libdir}/boost-python3.* +%endif +%endif + +%if ! %{with hpc} +#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 %%{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}%{package_bindir} +install -m 0755 dist/bin/quickbook %{buildroot}%{package_bindir}/quickbook +%endif +%endif +%endif + +%if %{build_base} + +%if %{without hpc} +mkdir -p %{buildroot}%{package_bindir} +install -m 755 b2 %{buildroot}%{package_bindir}/bjam +ln -s bjam %{buildroot}%{package_bindir}/jam + +# install boost-build jam files +mkdir -p %{buildroot}%{package_datadir}/boost-build/ +cp -r tools/build/src/* %{buildroot}%{package_datadir}/boost-build/ +rm -r %{buildroot}%{package_datadir}/boost-build/engine +find %{buildroot}%{package_datadir}/boost-build/ -type f \! -name \*.py \! -name \*.jam -delete +find %{buildroot}%{package_datadir}/boost-build/ -type f -exec chmod 644 {} + +%endif + +# 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}%{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}%{package_libdir}/libboost_exception.so +rm %{buildroot}%{package_libdir}/libboost_exception.so.%{version} + +# not used or duplicated in boost-extra flavour +rm -r %{buildroot}%{package_libdir}/cmake/boost_exception-* +rm -r %{buildroot}%{package_libdir}/cmake/boost_graph_parallel-%{version} + +%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 +# duplicate from boost-base flavour +rm %{buildroot}%{package_libdir}/cmake/BoostDetectToolset-%{version}.cmake +rm -r %{buildroot}%{package_libdir}/cmake/Boost-%{version} +rm -r %{buildroot}%{package_libdir}/cmake/boost_headers-%{version} +rm -rf %{buildroot}%{package_libdir}/cmake/boost_{w,}serialization-%{version} + +rm -r %{buildroot}%{package_includedir}/boost +rm -f %{buildroot}%{package_libdir}/libboost_{w,}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_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 +%post -n libboost_context%{library_version} -p /sbin/ldconfig +%post -n libboost_contract%{library_version} -p /sbin/ldconfig +%post -n libboost_coroutine%{library_version} -p /sbin/ldconfig +%post -n libboost_date_time%{library_version} -p /sbin/ldconfig +%post -n libboost_fiber%{library_version} -p /sbin/ldconfig +%post -n libboost_filesystem%{library_version} -p /sbin/ldconfig +%post -n libboost_iostreams%{library_version} -p /sbin/ldconfig +%post -n libboost_log%{library_version} -p /sbin/ldconfig +%post -n libboost_test%{library_version} -p /sbin/ldconfig +%post -n libboost_program_options%{library_version} -p /sbin/ldconfig +%post -n libboost_regex%{library_version} -p /sbin/ldconfig +%post -n libboost_serialization%{library_version} -p /sbin/ldconfig +%post -n libboost_thread%{library_version} -p /sbin/ldconfig +%post -n libboost_type_erasure%{library_version} -p /sbin/ldconfig +%post -n libboost_json%{library_version} -p /sbin/ldconfig +%post -n libboost_math%{library_version} -p /sbin/ldconfig +%post -n libboost_nowide%{library_version} -p /sbin/ldconfig +%post -n libboost_graph%{library_version} -p /sbin/ldconfig +%post -n libboost_stacktrace%{library_version} -p /sbin/ldconfig +%post -n libboost_system%{library_version} -p /sbin/ldconfig +%post -n libboost_wave%{library_version} -p /sbin/ldconfig +%post -n libboost_url%{library_version} -p /sbin/ldconfig +%post -n libboost_random%{library_version} -p /sbin/ldconfig +%post -n libboost_chrono%{library_version} -p /sbin/ldconfig +%post -n libboost_locale%{library_version} -p /sbin/ldconfig +%post -n libboost_timer%{library_version} -p /sbin/ldconfig +%else + +%if %{with python3} +%post -n libboost_python-py3-%{library_version} -p /sbin/ldconfig +%if %{with python_numpy} +%post -n libboost_numpy-py3-%{library_version} -p /sbin/ldconfig +%endif +%endif + +%if %{with mpi} +%post -n libboost_mpi%{library_version} -p /sbin/ldconfig +%post -n libboost_graph_parallel%{library_version} -p /sbin/ldconfig + +%if %{with python3} +%post -n libboost_mpi_python-py3-%{library_version} -p /sbin/ldconfig +%endif +%endif + +%endif +%if %{with hpc} +%post -n %base_name -p /sbin/ldconfig +%endif + +%if %{build_base} +%postun -n libboost_atomic%{library_version} -p /sbin/ldconfig +%postun -n libboost_container%{library_version} -p /sbin/ldconfig +%postun -n libboost_context%{library_version} -p /sbin/ldconfig +%postun -n libboost_contract%{library_version} -p /sbin/ldconfig +%postun -n libboost_coroutine%{library_version} -p /sbin/ldconfig +%postun -n libboost_date_time%{library_version} -p /sbin/ldconfig +%postun -n libboost_fiber%{library_version} -p /sbin/ldconfig +%postun -n libboost_filesystem%{library_version} -p /sbin/ldconfig +%postun -n libboost_iostreams%{library_version} -p /sbin/ldconfig +%postun -n libboost_log%{library_version} -p /sbin/ldconfig +%postun -n libboost_test%{library_version} -p /sbin/ldconfig +%postun -n libboost_program_options%{library_version} -p /sbin/ldconfig +%postun -n libboost_regex%{library_version} -p /sbin/ldconfig +%postun -n libboost_serialization%{library_version} -p /sbin/ldconfig +%postun -n libboost_thread%{library_version} -p /sbin/ldconfig +%postun -n libboost_type_erasure%{library_version} -p /sbin/ldconfig +%postun -n libboost_json%{library_version} -p /sbin/ldconfig +%postun -n libboost_math%{library_version} -p /sbin/ldconfig +%postun -n libboost_nowide%{library_version} -p /sbin/ldconfig +%postun -n libboost_graph%{library_version} -p /sbin/ldconfig +%postun -n libboost_stacktrace%{library_version} -p /sbin/ldconfig +%postun -n libboost_system%{library_version} -p /sbin/ldconfig +%postun -n libboost_wave%{library_version} -p /sbin/ldconfig +%postun -n libboost_url%{library_version} -p /sbin/ldconfig +%postun -n libboost_random%{library_version} -p /sbin/ldconfig +%postun -n libboost_chrono%{library_version} -p /sbin/ldconfig +%postun -n libboost_locale%{library_version} -p /sbin/ldconfig +%postun -n libboost_timer%{library_version} -p /sbin/ldconfig +%else + +%if %{with python3} +%postun -n libboost_python-py3-%{library_version} -p /sbin/ldconfig +%if %{with python_numpy} +%postun -n libboost_numpy-py3-%{library_version} -p /sbin/ldconfig +%endif +%endif + +%if %{with mpi} +%postun -n libboost_mpi%{library_version} -p /sbin/ldconfig +%postun -n libboost_graph_parallel%{library_version} -p /sbin/ldconfig + +%if %{with python3} +%postun -n libboost_mpi_python-py3-%{library_version} -p /sbin/ldconfig +%endif +%endif + +%endif + +%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 python3} +%exclude %package_python3_sitearch +%endif + +%files -n %{package_name}-devel +%package_includedir +%package_libdir/*.so +%if %{with python3} +%files -n %{package_name}-python3 +%package_python3_sitearch +%endif + +%else +%if %{build_base} +%files -n boost%{library_version}-jam +%{package_bindir}/bjam +%{package_bindir}/jam +%dir %{package_datadir}/boost-build +%{package_datadir}/boost-build/* + +%files -n libboost_atomic%{library_version} +%{package_libdir}/libboost_atomic.so.%{version} + +%files -n libboost_atomic%{library_version}-devel +%dir %{package_libdir}/cmake/boost_atomic-%{version} +%{package_libdir}/cmake/boost_atomic-%{version}/* +%{package_libdir}/libboost_atomic.so + +%files -n libboost_container%{library_version} +%{package_libdir}/libboost_container.so.%{version} + +%files -n libboost_container%{library_version}-devel +%dir %{package_libdir}/cmake/boost_container-%{version} +%{package_libdir}/cmake/boost_container-%{version}/* +%{package_libdir}/libboost_container.so + +%if %{with build_context} +%files -n libboost_context%{library_version} +%{package_libdir}/libboost_context.so.%{version} + +%files -n libboost_context%{library_version}-devel +%dir %{package_libdir}/cmake/boost_context-%{version} +%{package_libdir}/cmake/boost_context-%{version}/* +%{package_libdir}/libboost_context.so + +%files -n libboost_coroutine%{library_version} +%{package_libdir}/libboost_coroutine.so.%{version} + +%files -n libboost_coroutine%{library_version}-devel +%dir %{package_libdir}/cmake/boost_coroutine-%{version} +%{package_libdir}/cmake/boost_coroutine-%{version}/* +%{package_libdir}/libboost_coroutine.so + +%endif + +%files -n libboost_contract%{library_version} +%{package_libdir}/libboost_contract.so.%{version} + +%files -n libboost_contract%{library_version}-devel +%dir %{package_libdir}/cmake/boost_contract-%{version} +%{package_libdir}/cmake/boost_contract-%{version}/* +%{package_libdir}/libboost_contract.so + +%files -n libboost_date_time%{library_version} +%{package_libdir}/libboost_date_time.so.%{version} + +%files -n libboost_date_time%{library_version}-devel +%dir %{package_libdir}/cmake/boost_date_time-%{version} +%{package_libdir}/cmake/boost_date_time-%{version}/* +%{package_libdir}/libboost_date_time.so + +%if %{with boost_fiber} +%files -n libboost_fiber%{library_version} +%{package_libdir}/libboost_fiber.so.%{version} + +%files -n libboost_fiber%{library_version}-devel +%dir %{package_libdir}/cmake/boost_fiber-%{version} +%{package_libdir}/cmake/boost_fiber-%{version}/* +%{package_libdir}/libboost_fiber.so + +%endif + +%files -n libboost_filesystem%{library_version} +%{package_libdir}/libboost_filesystem.so.%{version} + +%files -n libboost_filesystem%{library_version}-devel +%dir %{package_libdir}/cmake/boost_filesystem-%{version} +%{package_libdir}/cmake/boost_filesystem-%{version}/* +%{package_libdir}/libboost_filesystem.so + +%files -n libboost_graph%{library_version} +%{package_libdir}/libboost_graph.so.%{version} + +%files -n libboost_graph%{library_version}-devel +%dir %{package_libdir}/cmake/boost_graph-%{version} +%{package_libdir}/cmake/boost_graph-%{version}/* +%{package_libdir}/libboost_graph.so + +%files -n libboost_iostreams%{library_version} +%{package_libdir}/libboost_iostreams.so.%{version} + +%files -n libboost_iostreams%{library_version}-devel +%dir %{package_libdir}/cmake/boost_iostreams-%{version} +%{package_libdir}/cmake/boost_iostreams-%{version}/* +%{package_libdir}/libboost_iostreams.so + +%files -n libboost_log%{library_version} +%{package_libdir}/libboost_log.so.%{version} +%{package_libdir}/libboost_log_setup.so.%{version} + +%files -n libboost_log%{library_version}-devel +%dir %{package_libdir}/cmake/boost_log-%{version} +%dir %{package_libdir}/cmake/boost_log_setup-%{version} +%{package_libdir}/cmake/boost_log-%{version}/* +%{package_libdir}/cmake/boost_log_setup-%{version}/* +%{package_libdir}/libboost_log.so +%{package_libdir}/libboost_log_setup.so + +%files -n libboost_math%{library_version} +%{package_libdir}/libboost_math_c99f.so.%{version} +%{package_libdir}/libboost_math_c99.so.%{version} +%{package_libdir}/libboost_math_tr1f.so.%{version} +%{package_libdir}/libboost_math_tr1.so.%{version} +%ifnarch ppc ppc64 +%{package_libdir}/libboost_math_c99l.so.%{version} +%{package_libdir}/libboost_math_tr1l.so.%{version} +%endif + +%files -n libboost_math%{library_version}-devel +%dir %{package_libdir}/cmake/boost_math_c99*-%{version} +%dir %{package_libdir}/cmake/boost_math_tr1*-%{version} +%{package_libdir}/cmake/boost_math_c99*-%{version}/* +%{package_libdir}/cmake/boost_math_tr1*-%{version}/* +%{package_libdir}/libboost_math_c99f.so +%{package_libdir}/libboost_math_c99.so +%{package_libdir}/libboost_math_tr1f.so +%{package_libdir}/libboost_math_tr1.so +%ifnarch ppc ppc64 +%{package_libdir}/libboost_math_c99l.so +%{package_libdir}/libboost_math_tr1l.so +%endif + +%files -n libboost_nowide%{library_version} +%{package_libdir}/libboost_nowide.so.%{version} + +%files -n libboost_nowide%{library_version}-devel +%dir %{package_libdir}/cmake/boost_nowide-%{version} +%{package_libdir}/cmake/boost_nowide-%{version}/boost_nowide-config.cmake +%{package_libdir}/cmake/boost_nowide-%{version}/boost_nowide-config-version.cmake +%{package_libdir}/cmake/boost_nowide-%{version}/libboost_nowide-variant-shared.cmake +%{package_libdir}/libboost_nowide.so + +%files -n libboost_test%{library_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 +%dir %{package_libdir}/cmake/boost_prg_exec_monitor-%{version} +%dir %{package_libdir}/cmake/boost_test_exec_monitor-%{version} +%dir %{package_libdir}/cmake/boost_unit_test_framework-%{version} +%{package_libdir}/cmake/boost_prg_exec_monitor-%{version}/* +%{package_libdir}/cmake/boost_test_exec_monitor-%{version}/* +%{package_libdir}/cmake/boost_unit_test_framework-%{version}/* +%{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} +%{package_libdir}/libboost_program_options.so.%{version} + +%files -n libboost_program_options%{library_version}-devel +%dir %{package_libdir}/cmake/boost_program_options-%{version} +%{package_libdir}/cmake/boost_program_options-%{version}/* +%{package_libdir}/libboost_program_options.so +%endif + +%if ! %{build_base} + +%if %{with mpi} +%files -n libboost_mpi%{library_version} +%{package_libdir}/libboost_mpi.so.1* + +%files -n libboost_mpi%{library_version}-devel +%dir %{package_libdir}/cmake +%dir %{package_libdir}/cmake/boost_mpi-%{version} +%{package_libdir}/cmake/boost_mpi-%{version}/* +%{package_libdir}/libboost_mpi.so + +%files -n libboost_graph_parallel%{library_version} +%{package_libdir}/libboost_graph_parallel.so.1* + +%files -n libboost_graph_parallel%{library_version}-devel +%dir %{package_libdir}/cmake +%dir %{package_libdir}/cmake/boost_graph_parallel-%{version} +%{package_libdir}/cmake/boost_graph_parallel-%{version}/* +%{package_libdir}/libboost_graph_parallel.so + +%if %{with python3} +%files -n libboost_mpi_python-py3-%{library_version} +%{package_libdir}/libboost_mpi_python-py3.so.%{version} + +%files -n libboost_mpi_python-py3-%{library_version}-devel +%dir %{package_libdir}/cmake/boost_mpi_python-%{version} +%{package_libdir}/cmake/boost_mpi_python-%{version}/* +%endif +%{package_libdir}/libboost_mpi_python-py3.so + +%files -n python3-boost_parallel_mpi%{library_version} +%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}/mpi.%{py3_soflags}.so +%endif + +%if %{with python3} +%files -n libboost_python-py3-%{library_version} +%{package_libdir}/libboost_python-py3.so.1* + +%files -n libboost_python-py3-%{library_version}-devel +%dir %{package_libdir}/cmake +%dir %{package_libdir}/cmake/boost_python-%{version} +%{package_libdir}/cmake/boost_python-%{version}/* +%{package_libdir}/libboost_python3.so +%{package_libdir}/libboost_python-py3.so + +%if %{with python_numpy} +%files -n libboost_numpy-py3-%{library_version} +%{package_libdir}/libboost_numpy-py3.so.1* + +%files -n libboost_numpy-py3-%{library_version}-devel +%dir %{package_libdir}/cmake +%dir %{package_libdir}/cmake/boost_numpy-%{version} +%{package_libdir}/cmake/boost_numpy-%{version}/* +%{package_libdir}/libboost_numpy-py3.so + +%endif +%endif +%endif + +%if %{build_base} +%files -n libboost_serialization%{library_version} +%{package_libdir}/libboost_serialization.so.%{version} +%{package_libdir}/libboost_wserialization.so.%{version} + +%files -n libboost_serialization%{library_version}-devel +%dir %{package_libdir}/cmake/boost_serialization-%{version} +%dir %{package_libdir}/cmake/boost_wserialization-%{version} +%{package_libdir}/cmake/boost_serialization-%{version}/* +%{package_libdir}/cmake/boost_wserialization-%{version}/* +%{package_libdir}/libboost_serialization.so +%{package_libdir}/libboost_wserialization.so + +%files -n libboost_stacktrace%{library_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 +%dir %{package_libdir}/cmake/boost_stacktrace_addr2line-%{version} +%dir %{package_libdir}/cmake/boost_stacktrace_basic-%{version} +%dir %{package_libdir}/cmake/boost_stacktrace_noop-%{version} +%{package_libdir}/cmake/boost_stacktrace_addr2line-%{version}/* +%{package_libdir}/cmake/boost_stacktrace_basic-%{version}/* +%{package_libdir}/cmake/boost_stacktrace_noop-%{version}/* +%{package_libdir}/libboost_stacktrace_addr2line.so +%{package_libdir}/libboost_stacktrace_basic.so +%{package_libdir}/libboost_stacktrace_noop.so + +%files -n libboost_system%{library_version} +%{package_libdir}/libboost_system.so.%{version} + +%files -n libboost_system%{library_version}-devel +%dir %{package_libdir}/cmake/boost_system-%{version} +%{package_libdir}/cmake/boost_system-%{version}/* +%{package_libdir}/libboost_system.so + +%files -n libboost_thread%{library_version} +%{package_libdir}/libboost_thread.so.%{version} + +%files -n libboost_thread%{library_version}-devel +%dir %{package_libdir}/cmake/boost_thread-%{version} +%{package_libdir}/cmake/boost_thread-%{version}/* +%{package_libdir}/libboost_thread.so + +%files -n libboost_wave%{library_version} +%{package_libdir}/libboost_wave.so.%{version} + +%files -n libboost_wave%{library_version}-devel +%dir %{package_libdir}/cmake/boost_wave-%{version} +%{package_libdir}/cmake/boost_wave-%{version}/* +%{package_libdir}/libboost_wave.so + +%files -n libboost_url%{library_version} +%{package_libdir}/libboost_url.so.%{version} + +%files -n libboost_url%{library_version}-devel +%dir %{package_libdir}/cmake/boost_url-%{version} +%{package_libdir}/cmake/boost_url-%{version}/* +%{package_libdir}/libboost_url.so + +%files -n libboost_regex%{library_version} +%{package_libdir}/libboost_regex.so.%{version} + +%files -n libboost_regex%{library_version}-devel +%dir %{package_libdir}/cmake/boost_regex-%{version} +%{package_libdir}/cmake/boost_regex-%{version}/* +%{package_libdir}/libboost_regex.so + +%files -n libboost_random%{library_version} +%{package_libdir}/libboost_random.so.%{version} + +%files -n libboost_random%{library_version}-devel +%dir %{package_libdir}/cmake/boost_random-%{version} +%{package_libdir}/cmake/boost_random-%{version}/* +%{package_libdir}/libboost_random.so + +%files -n libboost_chrono%{library_version} +%{package_libdir}/libboost_chrono.so.%{version} + +%files -n libboost_chrono%{library_version}-devel +%dir %{package_libdir}/cmake/boost_chrono-%{version} +%{package_libdir}/cmake/boost_chrono-%{version}/* +%{package_libdir}/libboost_chrono.so + +%files -n libboost_locale%{library_version} +%{package_libdir}/libboost_locale.so.%{version} + +%files -n libboost_locale%{library_version}-devel +%dir %{package_libdir}/cmake/boost_locale-%{version} +%{package_libdir}/cmake/boost_locale-%{version}/* +%{package_libdir}/libboost_locale.so + +%files -n libboost_timer%{library_version} +%{package_libdir}/libboost_timer.so.%{version} + +%files -n libboost_timer%{library_version}-devel +%dir %{package_libdir}/cmake/boost_timer-%{version} +%{package_libdir}/cmake/boost_timer-%{version}/* +%{package_libdir}/libboost_timer.so + +%files -n libboost_type_erasure%{library_version} +%{package_libdir}/libboost_type_erasure.so.%{version} + +%files -n libboost_type_erasure%{library_version}-devel +%dir %{package_libdir}/cmake/boost_type_erasure-%{version} +%{package_libdir}/cmake/boost_type_erasure-%{version}/* +%{package_libdir}/libboost_type_erasure.so + +%files -n libboost_json%{library_version} +%{package_libdir}/libboost_json.so.%{version} + +%files -n libboost_json%{library_version}-devel +%dir %{package_libdir}/cmake/boost_json-%{version} +%{package_libdir}/cmake/boost_json-%{version}/* +%{package_libdir}/libboost_json.so + +%endif + +%if ! %{build_base} +%if %{with boost_devel} +%files -n %{package_name}-devel +%dir %{my_docdir} +%{my_docdir}/README.boost-devel +%endif + +%files -n %{package_name}-doc-html +%dir %{my_docdir} +%doc %{my_docdir}/* +%if %{with boost_devel} +%exclude %{my_docdir}/README.boost-devel +%endif + +%if %{with build_docs} +%files doc-man +%{_mandir}/man3/*.3%{?ext_man} +%{_mandir}/man7/*.7%{?ext_man} +%{_mandir}/man9/*.9%{?ext_man} +%endif + +%if %{with package_pdf} +%files -n %{package_name}-doc-pdf +%doc ../boost_1_56_pdf/*.pdf +%endif + +%if %{with build_quickbook} +%files -n %{package_name}-quickbook +%{package_bindir}/quickbook +%endif +%endif + +%if %{build_base} +%files -n libboost_headers%{library_version}-devel +%dir %{package_libdir}/cmake +%dir %{package_libdir}/cmake/Boost-%{version} +%dir %{package_libdir}/cmake/boost_headers-%{version} +%dir %{package_includedir}/boost +%{package_libdir}/cmake/BoostDetectToolset-%{version}.cmake +%{package_libdir}/cmake/Boost-%{version}/* +%{package_libdir}/cmake/boost_headers-%{version}/* +%{package_includedir}/boost/* + +%files -n boost-license%{library_version} +%license LICENSE_1_0.txt +%if 0%{?sle_version} >= 120000 && 0%{?sle_version} <= 120200 && !0%{?is_opensuse} +%attr(755,root,root) %dir %{_defaultlicensedir} +%endif + +%endif +%endif + +%changelog diff --git a/boost_1_56_pdf.tar.bz2 b/boost_1_56_pdf.tar.bz2 new file mode 100644 index 0000000..1eff461 --- /dev/null +++ b/boost_1_56_pdf.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:acc1880f6921ceb1e31cb65666bab5414e52471cbc17d1dde7b4e326c68ce97d +size 46518400 diff --git a/boost_1_84_0.tar.bz2 b/boost_1_84_0.tar.bz2 new file mode 100644 index 0000000..5d9ea00 --- /dev/null +++ b/boost_1_84_0.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc4b893acf645c9d4b698e9a0f08ca8846aa5d6c68275c14c3e7949c24109454 +size 123110547 diff --git a/dynamic_linking.patch b/dynamic_linking.patch new file mode 100644 index 0000000..dffb3b8 --- /dev/null +++ b/dynamic_linking.patch @@ -0,0 +1,110 @@ +Index: boost_1_80_0/libs/test/build/Jamfile.v2 +=================================================================== +--- boost_1_80_0.orig/libs/test/build/Jamfile.v2 ++++ boost_1_80_0/libs/test/build/Jamfile.v2 +@@ -95,7 +95,7 @@ lib boost_test_exec_monitor + : # sources + $(TEST_EXEC_MON_SOURCES).cpp + : # requirements +- static ++ # static + : # default build + : # usage-requirements + shared:BOOST_TEST_DYN_LINK=1 +Index: boost_1_80_0/libs/exception/build/Jamfile.v2 +=================================================================== +--- boost_1_80_0.orig/libs/exception/build/Jamfile.v2 ++++ boost_1_80_0/libs/exception/build/Jamfile.v2 +@@ -7,7 +7,7 @@ + + project boost/exception + : source-location ../src +- : requirements static ++ : # requirements static + ; + + lib boost_exception : clone_current_exception_non_intrusive.cpp ; +Index: boost_1_80_0/libs/chrono/build/Jamfile.v2 +=================================================================== +--- boost_1_80_0.orig/libs/chrono/build/Jamfile.v2 ++++ boost_1_80_0/libs/chrono/build/Jamfile.v2 +@@ -90,7 +90,7 @@ project boost/chrono + sun:__typeof__=__typeof__ + + shared:BOOST_CHRONO_DYN_LINK=1 +- static:BOOST_CHRONO_STATIC_LINK=1 ++ # static:BOOST_CHRONO_STATIC_LINK=1 + gcc-3.4.4:--enable-auto-import + gcc-4.3.4:--enable-auto-import + gcc-4.4.0,windows:--enable-auto-import +@@ -104,7 +104,7 @@ lib boost_chrono + : $(SOURCES).cpp + : + shared:BOOST_ALL_DYN_LINK=1 # tell source we're building dll's +- static:BOOST_All_STATIC_LINK=1 # tell source we're building static lib's ++ # static:BOOST_All_STATIC_LINK=1 # tell source we're building static lib's + ; + + boost-install boost_chrono ; +Index: boost_1_80_0/libs/system/build/Jamfile.v2 +=================================================================== +--- boost_1_80_0.orig/libs/system/build/Jamfile.v2 ++++ boost_1_80_0/libs/system/build/Jamfile.v2 +@@ -11,7 +11,7 @@ project boost/system + : source-location ../src + : usage-requirements # pass these requirement to dependents (i.e. users) + shared:BOOST_SYSTEM_DYN_LINK=1 +- static:BOOST_SYSTEM_STATIC_LINK=1 ++# static:BOOST_SYSTEM_STATIC_LINK=1 + ; + + SOURCES = error_code ; +@@ -19,7 +19,7 @@ SOURCES = error_code ; + lib boost_system + : $(SOURCES).cpp + : shared:BOOST_SYSTEM_DYN_LINK=1 +- static:BOOST_SYSTEM_STATIC_LINK=1 ++# static:BOOST_SYSTEM_STATIC_LINK=1 + ; + + boost-install boost_system ; +Index: boost_1_80_0/libs/timer/build/Jamfile.v2 +=================================================================== +--- boost_1_83_0.orig/libs/timer/build/Jamfile.v2 ++++ boost_1_83_0/libs/timer/build/Jamfile.v2 +@@ -15,11 +15,11 @@ + : ../src/$(SOURCES).cpp + : # requirements + shared:BOOST_TIMER_DYN_LINK=1 +- static:BOOST_TIMER_STATIC_LINK=1 ++# static:BOOST_TIMER_STATIC_LINK=1 + : # default-build + : # usage-requirements + shared:BOOST_TIMER_DYN_LINK=1 +- static:BOOST_TIMER_STATIC_LINK=1 ++# static:BOOST_TIMER_STATIC_LINK=1 + ; + + boost-install boost_timer ; +Index: boost_1_80_0/libs/filesystem/build/Jamfile.v2 +=================================================================== +--- boost_1_80_0.orig/libs/filesystem/build/Jamfile.v2 ++++ boost_1_80_0/libs/filesystem/build/Jamfile.v2 +@@ -130,7 +130,7 @@ project boost/filesystem + : source-location ../src + : usage-requirements # pass these requirement to dependents (i.e. users) + shared:BOOST_FILESYSTEM_DYN_LINK=1 +- static:BOOST_FILESYSTEM_STATIC_LINK=1 ++# static:BOOST_FILESYSTEM_STATIC_LINK=1 + ; + + SOURCES = +@@ -163,7 +163,7 @@ lib boost_filesystem + @select-platform-specific-sources + ../src + shared:BOOST_FILESYSTEM_DYN_LINK=1 +- static:BOOST_FILESYSTEM_STATIC_LINK=1 ++# static:BOOST_FILESYSTEM_STATIC_LINK=1 + : + : + ; diff --git a/exception.objdump b/exception.objdump new file mode 100644 index 0000000..4d03ed3 --- /dev/null +++ b/exception.objdump @@ -0,0 +1 @@ +boost::exception_detail::clone_current_exception_non_intrusive(boost::exception_detail::clone_base const*&) diff --git a/existing_extra_docs b/existing_extra_docs new file mode 100644 index 0000000..773c668 --- /dev/null +++ b/existing_extra_docs @@ -0,0 +1,470 @@ +libs/algorithm/minmax/example/minmax_ex.cpp +libs/algorithm/minmax/example/minmax_timer.cpp +libs/assign/test/array.cpp +libs/assign/test/list_inserter.cpp +libs/assign/test/list_of.cpp +libs/assign/test/list_of_workaround.cpp +libs/assign/test/std.cpp +libs/bind/bind_as_compose.cpp +libs/bind/bind_visitor.cpp +libs/bind/test/bind_fastcall_mf_test.cpp +libs/bind/test/bind_fastcall_test.cpp +libs/bind/test/bind_stdcall_mf_test.cpp +libs/bind/test/bind_stdcall_test.cpp +libs/bind/test/bind_test.cpp +libs/bind/test/mem_fn_derived_test.cpp +libs/bind/test/mem_fn_fastcall_test.cpp +libs/bind/test/mem_fn_stdcall_test.cpp +libs/bind/test/mem_fn_test.cpp +libs/bind/test/mem_fn_void_test.cpp +libs/compatibility/generate_cpp_c_headers.py +libs/concept_check/bad_error_eg.cpp +libs/concept_check/stl_concept_check.cpp +libs/concept_check/stl_concept_covering.cpp +libs/config/test/limits_test.cpp +libs/config/tools/configure.in +libs/conversion/cast_test.cpp +libs/conversion/lexical_cast_test.cpp +libs/crc/crc_example.cpp +libs/filesystem/build/Jamfile.v2 +libs/filesystem/example/simple_ls.cpp +libs/filesystem/test/fstream_test.cpp +libs/filesystem/test/operations_test.cpp +libs/filesystem/test/path_test.cpp +libs/filesystem/test/wide_test.cpp +libs/format/example/sample_advanced.cpp +libs/format/example/sample_formats.cpp +libs/format/example/sample_new_features.cpp +libs/format/example/sample_userType.cpp +libs/functional/hash/examples/books.cpp +libs/functional/hash/examples/point.cpp +libs/functional/hash/examples/portable.cpp +libs/function/test/allocator_test.cpp +libs/function/test/contains_test.cpp +libs/function/test/function_30.cpp +libs/function/test/function_arith_cxx98.cpp +libs/function/test/function_arith_portable.cpp +libs/function/test/function_n_test.cpp +libs/function/test/function_ref_cxx98.cpp +libs/function/test/function_ref_portable.cpp +libs/function/test/function_test.cpp +libs/function/test/function_test_fail1.cpp +libs/function/test/function_test_fail2.cpp +libs/function/test/lambda_test.cpp +libs/function/test/mem_fun_cxx98.cpp +libs/function/test/mem_fun_portable.cpp +libs/function/test/stateless_test.cpp +libs/function/test/std_bind_cxx98.cpp +libs/function/test/std_bind_portable.cpp +libs/function/test/sum_avg_cxx98.cpp +libs/function/test/sum_avg_portable.cpp +libs/graph/doc/iscope99.pdf +libs/graph/doc/isomorphism-impl.pdf +libs/graph/example/bfs.cpp +libs/graph/example/bfs-example2.cpp +libs/graph/example/bfs-example.cpp +libs/graph/example/biconnected_components.cpp +libs/graph/example/city_visitor.cpp +libs/graph/example/connected_components.cpp +libs/graph/example/csr-example.cpp +libs/graph/example/cuthill_mckee_ordering.cpp +libs/graph/example/dave.cpp +libs/graph/example/dfs-example.cpp +libs/graph/example/dfs_parenthesis.cpp +libs/graph/example/dijkstra-example.cpp +libs/graph/example/family-tree-eg.cpp +libs/graph/example/file_dependencies.cpp +libs/graph/example/fr_layout.cpp +libs/graph/example/girth.cpp +libs/graph/example/graphviz.cpp +libs/graph/example/incremental_components.cpp +libs/graph/example/isomorphism.cpp +libs/graph/example/johnson-eg.cpp +libs/graph/example/kevin-bacon.cpp +libs/graph/example/king_ordering.cpp +libs/graph/example/kruskal-example.cpp +libs/graph/example/matching_example.cpp +libs/graph/example/max_flow.cpp +libs/graph/example/miles_span.cpp +libs/graph/example/minimum_degree_ordering.cpp +libs/graph/example/ordered_out_edges.cpp +libs/graph/example/quick_tour.cpp +libs/graph/example/reverse-graph-eg.cpp +libs/graph/example/roget_components.cpp +libs/graph/example/sloan_ordering.cpp +libs/graph/example/strong_components.cpp +libs/graph/example/transitive_closure.cpp +libs/graph/example/transpose-example.cpp +libs/graph/example/undirected.cpp +libs/graph/example/undirected_dfs.cpp +libs/graph/test/dominator_tree_test.cpp +libs/graph/test/graph.cpp +libs/integer/test/integer_mask_test.cpp +libs/integer/test/static_log2_test.cpp +libs/integer/test/static_min_max_test.cpp +libs/iostreams/doc/tree/tree.js +libs/iostreams/example/container_device.hpp +libs/iostreams/example/dictionary_filter.hpp +libs/iostreams/example/finite_state_filter.hpp +libs/iostreams/example/line_wrapping_filter.hpp +libs/iostreams/example/shell_comments_filter.hpp +libs/iostreams/example/tab_expanding_filter.hpp +libs/iostreams/example/unix2dos_filter.hpp +libs/iostreams/src/bzip2.cpp +libs/iostreams/src/file_descriptor.cpp +libs/iostreams/src/mapped_file.cpp +libs/iostreams/src/zlib.cpp +libs/iostreams/test/bzip2_test.cpp +libs/iostreams/test/file_descriptor_test.cpp +libs/iostreams/test/finite_state_filter_test.cpp +libs/iostreams/test/mapped_file_test.cpp +libs/iostreams/test/seekable_file_test.cpp +libs/io/test/ios_state_test.cpp +libs/iterator/doc/BidirectionalTraversal.rst +libs/iterator/doc/counting_iterator.pdf +libs/iterator/doc/counting_iterator.rst +libs/iterator/doc/facade-and-adaptor.pdf +libs/iterator/doc/facade-and-adaptor.rst +libs/iterator/doc/filter_iterator.pdf +libs/iterator/doc/filter_iterator.rst +libs/iterator/doc/ForwardTraversal.rst +libs/iterator/doc/function_output_iterator.pdf +libs/iterator/doc/function_output_iterator.rst +libs/iterator/doc/IncrementableIterator.rst +libs/iterator/doc/index.rst +libs/iterator/doc/indirect_iterator.pdf +libs/iterator/doc/indirect_iterator.rst +libs/iterator/doc/iterator_adaptor.pdf +libs/iterator/doc/iterator_adaptor.rst +libs/iterator/doc/iterator_archetypes.pdf +libs/iterator/doc/iterator_archetypes.rst +libs/iterator/doc/iterator_concepts.pdf +libs/iterator/doc/iterator_concepts.rst +libs/iterator/doc/iterator_facade.pdf +libs/iterator/doc/iterator_facade.rst +libs/iterator/doc/iterator_traits.pdf +libs/iterator/doc/iterator_traits.rst +libs/iterator/doc/LvalueIterator.rst +libs/iterator/doc/new-iter-concepts.pdf +libs/iterator/doc/new-iter-concepts.rst +libs/iterator/doc/permutation_iterator.pdf +libs/iterator/doc/permutation_iterator.rst +libs/iterator/doc/pointee.pdf +libs/iterator/doc/pointee.rst +libs/iterator/doc/RandomAccessTraversal.rst +libs/iterator/doc/ReadableIterator.rst +libs/iterator/doc/reverse_iterator.pdf +libs/iterator/doc/reverse_iterator.rst +libs/iterator/doc/SinglePassIterator.rst +libs/iterator/doc/SwappableIterator.rst +libs/iterator/doc/transform_iterator.pdf +libs/iterator/doc/transform_iterator.rst +libs/iterator/doc/WritableIterator.rst +libs/iterator/doc/zip_iterator.pdf +libs/iterator/doc/zip_iterator.rst +libs/iterator/example/counting_iterator_example.cpp +libs/iterator/example/filter_iterator_example.cpp +libs/iterator/example/indirect_iterator_example.cpp +libs/iterator/example/node_iterator1.cpp +libs/iterator/example/node_iterator2.cpp +libs/iterator/example/node_iterator2.hpp +libs/iterator/example/node_iterator3.cpp +libs/iterator/example/permutation_iter_example.cpp +libs/iterator/example/reverse_iterator_example.cpp +libs/iterator/example/transform_iterator_example.cpp +libs/logic/test/tribool_io_test.cpp +libs/logic/test/tribool_rename_test.cpp +libs/logic/test/tribool_test.cpp +libs/math/octonion/graphics/octonion_blurb17.jpeg +libs/math/octonion/octonion_test.cpp +libs/math/octonion/output_more.txt +libs/math/octonion/output.txt +libs/math/quaternion/HSO3.hpp +libs/math/quaternion/HSO3SO4.cpp +libs/math/quaternion/HSO4.hpp +libs/math/quaternion/output_more.txt +libs/math/quaternion/output.txt +libs/math/quaternion/quaternion_test.cpp +libs/math/quaternion/TQE_EA.pdf +libs/math/quaternion/TQE.pdf +libs/math/special_functions/graphics/special_functions_blurb15.jpeg +libs/math/special_functions/graphics/special_functions_blurb17.jpeg +libs/math/special_functions/graphics/special_functions_blurb18.jpeg +libs/math/special_functions/graphics/special_functions_blurb1.jpeg +libs/math/special_functions/graphics/special_functions_blurb20.jpeg +libs/math/special_functions/graphics/special_functions_blurb22.jpeg +libs/math/special_functions/graphics/special_functions_blurb5.jpeg +libs/math/special_functions/graphics/special_functions_blurb6.jpeg +libs/math/special_functions/graphics/special_functions_blurb7.jpeg +libs/math/special_functions/output_more.txt +libs/math/special_functions/output.txt +libs/math/special_functions/special_functions_test.cpp +libs/math/test/common_factor_test.cpp +libs/math/test/log1p_expm1_test.cpp +libs/mpl/doc/refmanual.pdf +libs/mpl/example/fsm/player1.cpp +libs/multi_array/test/access.cpp +libs/multi_array/test/assign.cpp +libs/multi_array/test/assign_to_array.cpp +libs/multi_array/test/compare.cpp +libs/multi_array/test/concept_checks.cpp +libs/multi_array/test/constructors.cpp +libs/multi_array/test/fail_cbracket.cpp +libs/multi_array/test/fail_cdata.cpp +libs/multi_array/test/fail_citerator.cpp +libs/multi_array/test/fail_cparen.cpp +libs/multi_array/test/fail_criterator.cpp +libs/multi_array/test/fail_csubarray2.cpp +libs/multi_array/test/fail_csubarray3.cpp +libs/multi_array/test/fail_csubarray.cpp +libs/multi_array/test/fail_cview2.cpp +libs/multi_array/test/fail_cview3.cpp +libs/multi_array/test/fail_cview.cpp +libs/multi_array/test/fail_ref_cbracket.cpp +libs/multi_array/test/fail_ref_cdata.cpp +libs/multi_array/test/fail_ref_citerator.cpp +libs/multi_array/test/fail_ref_cparen.cpp +libs/multi_array/test/fail_ref_criterator.cpp +libs/multi_array/test/fail_ref_csubarray2.cpp +libs/multi_array/test/fail_ref_csubarray3.cpp +libs/multi_array/test/fail_ref_csubarray.cpp +libs/multi_array/test/fail_ref_cview2.cpp +libs/multi_array/test/fail_ref_cview3.cpp +libs/multi_array/test/fail_ref_cview.cpp +libs/multi_array/test/generative_tests.hpp +libs/multi_array/test/idxgen1.cpp +libs/multi_array/test/index_bases.cpp +libs/multi_array/test/iterators.cpp +libs/multi_array/test/range1.cpp +libs/multi_array/test/reshape.cpp +libs/multi_array/test/resize.cpp +libs/multi_array/test/slice.cpp +libs/multi_array/test/stl_interaction.cpp +libs/multi_array/test/storage_order.cpp +libs/multi_index/example/basic.cpp +libs/multi_index/example/bimap.cpp +libs/multi_index/example/complex_structs.cpp +libs/multi_index/example/composite_keys.cpp +libs/multi_index/example/hashed.cpp +libs/multi_index/example/non_default_ctor.cpp +libs/multi_index/example/random_access.cpp +libs/multi_index/example/rearrange.cpp +libs/multi_index/example/sequenced.cpp +libs/multi_index/example/serialization.cpp +libs/multi_index/perf/test_perf.cpp +libs/multi_index/test/test_basic.cpp +libs/multi_index/test/test_capacity.cpp +libs/multi_index/test/test_comparison.cpp +libs/multi_index/test/test_composite_key.cpp +libs/multi_index/test/test_conv_iterators.cpp +libs/multi_index/test/test_copy_assignment.cpp +libs/multi_index/test/test_hash_ops.cpp +libs/multi_index/test/test_iterators.cpp +libs/multi_index/test/test_key_extractors.cpp +libs/multi_index/test/test_list_ops.cpp +libs/multi_index/test/test_modifiers.cpp +libs/multi_index/test/test_mpl_ops.cpp +libs/multi_index/test/test_observers.cpp +libs/multi_index/test/test_projection.cpp +libs/multi_index/test/test_range.cpp +libs/multi_index/test/test_rearrange.cpp +libs/multi_index/test/test_safe_mode.cpp +libs/multi_index/test/test_serialization1.cpp +libs/multi_index/test/test_serialization2.cpp +libs/multi_index/test/test_set_ops.cpp +libs/multi_index/test/test_special_set_ops.cpp +libs/multi_index/test/test_update.cpp +libs/preprocessor/doc/examples/array_arithmetic.c +libs/preprocessor/doc/examples/catch_builtin.cpp +libs/preprocessor/doc/examples/delay.c +libs/preprocessor/doc/examples/duffs_device.c +libs/preprocessor/doc/examples/is_integral.cpp +libs/preprocessor/doc/examples/linear_fib.c +libs/ptr_container/test/incomplete_type_test.cpp +libs/ptr_container/test/ptr_array.cpp +libs/ptr_container/test/simple_test.cpp +libs/ptr_container/test/tree_test.cpp +libs/ptr_container/test/view_example.cpp +libs/python/doc/building.rst +libs/python/doc/internals.rst +libs/python/doc/PyConDC_2003/bpl.pdf +libs/python/doc/v2/callbacks.txt +libs/python/example/quickstart/boost-build.jam +libs/python/example/quickstart/extending.cpp +libs/python/example/quickstart/Jamroot +libs/python/example/tutorial/Jamroot +libs/python/test/input_iterator.cpp +libs/python/test/iterator.cpp +libs/python/test/iterator.py +libs/python/test/map_indexing_suite.cpp +libs/python/test/map_indexing_suite.py +libs/python/test/pickle1.cpp +libs/python/test/pickle2.cpp +libs/python/test/pickle3.cpp +libs/python/test/pickle4.cpp +libs/python/test/vector_indexing_suite.cpp +libs/python/test/vector_indexing_suite.py +libs/random/nondet_random_speed.cpp +libs/random/random_demo.cpp +libs/random/random_speed.cpp +libs/random/random_test.cpp +libs/range/test/algorithm_example.cpp +libs/range/test/array.cpp +libs/range/test/iterator_pair.cpp +libs/range/test/iterator_range.cpp +libs/range/test/reversible_range.cpp +libs/range/test/std_container.cpp +libs/range/test/string.cpp +libs/range/test/sub_range.cpp +libs/regex/build/generic.mak +libs/regex/example/grep/grep.cpp +libs/regex/example/snippets/captures_example.cpp +libs/regex/example/snippets/credit_card_example.cpp +libs/regex/example/snippets/partial_regex_grep.cpp +libs/regex/example/snippets/partial_regex_match.cpp +libs/regex/example/snippets/regex_grep_example_1.cpp +libs/regex/example/snippets/regex_grep_example_2.cpp +libs/regex/example/snippets/regex_grep_example_3.cpp +libs/regex/example/snippets/regex_grep_example_4.cpp +libs/regex/example/snippets/regex_iterator_example.cpp +libs/regex/example/snippets/regex_match_example.cpp +libs/regex/example/snippets/regex_merge_example.cpp +libs/regex/example/snippets/regex_replace_example.cpp +libs/regex/example/snippets/regex_search_example.cpp +libs/regex/example/snippets/regex_split_example_1.cpp +libs/regex/example/snippets/regex_split_example_2.cpp +libs/regex/example/snippets/regex_token_iterator_eg_1.cpp +libs/regex/example/snippets/regex_token_iterator_eg_2.cpp +libs/regex/example/timer/regex_timer.cpp +libs/regex/test/captures/captures_test.cpp +libs/regex/test/concepts/concept_check.cpp +libs/regex/test/pathology/bad_expression_test.cpp +libs/regex/test/pathology/recursion_test.cpp +libs/regex/test/regress/basic_tests.cpp +libs/regex/test/regress/main.cpp +libs/regex/test/regress/test_deprecated.cpp +libs/serialization/example/demo_auto_ptr.cpp +libs/serialization/example/demo.cpp +libs/serialization/example/demo_exception.cpp +libs/serialization/example/demo_fast_archive.cpp +libs/serialization/example/demofile.txt +libs/serialization/example/demo_output.txt +libs/serialization/example/demo_pimpl_A.cpp +libs/serialization/example/demo_pimpl.cpp +libs/serialization/example/demo_polymorphic_A.cpp +libs/serialization/example/demo_polymorphic_A.hpp +libs/serialization/example/demo_polymorphic.cpp +libs/serialization/example/demo_portable_archive.cpp +libs/serialization/example/demo_save.xml +libs/serialization/example/demo_shared_ptr.cpp +libs/serialization/example/demo_xml.cpp +libs/serialization/example/demo_xml.hpp +libs/serialization/example/demo_xml_load.cpp +libs/serialization/example/demo_xml_save.cpp +libs/serialization/test/test_delete_pointer.cpp +libs/serialization/test/test_diamond.cpp +libs/serialization/test/test_no_rtti.cpp +libs/signals/example/doc_view.cpp +libs/signals/test/dead_slot_test.cpp +libs/signals/test/deletion_test.cpp +libs/signals/test/ordering_test.cpp +libs/signals/test/signal_n_test.cpp +libs/signals/test/signal_test.cpp +libs/signals/test/trackable_test.cpp +libs/smart_ptr/example/scoped_ptr_example.cpp +libs/smart_ptr/example/scoped_ptr_example.hpp +libs/smart_ptr/example/scoped_ptr_example_test.cpp +libs/smart_ptr/example/shared_ptr_example2.cpp +libs/smart_ptr/example/shared_ptr_example2.hpp +libs/smart_ptr/example/shared_ptr_example2_test.cpp +libs/smart_ptr/example/shared_ptr_example.cpp +libs/smart_ptr/smarttest.zip +libs/smart_ptr/test/pointer_cast_test.cpp +libs/smart_ptr/test/pointer_to_other_test.cpp +libs/smart_ptr/test/smart_ptr_test.cpp +libs/statechart/doc/rationale.pdf +libs/statechart/doc/reference.pdf +libs/statechart/doc/tutorial.pdf +libs/statechart/test/TuTest.cpp +libs/statechart/test/TuTest.hpp +libs/statechart/test/TuTestMain.cpp +libs/static_assert/static_assert_example_1.cpp +libs/static_assert/static_assert_example_2.cpp +libs/static_assert/static_assert_example_3.cpp +libs/static_assert/static_assert_test.cpp +libs/static_assert/static_assert_test_fail_1.cpp +libs/static_assert/static_assert_test_fail_2.cpp +libs/static_assert/static_assert_test_fail_3.cpp +libs/static_assert/static_assert_test_fail_4.cpp +libs/static_assert/static_assert_test_fail_5.cpp +libs/static_assert/static_assert_test_fail_6.cpp +libs/static_assert/static_assert_test_fail_7.cpp +libs/static_assert/static_assert_test_fail_8.cpp +libs/static_assert/static_assert_test_fail_9.cpp +libs/test/example/exec_mon_example.cpp +libs/test/example/prg_exec_example.cpp +libs/test/example/test_case_template_example.cpp +libs/test/example/unit_test_example_01.cpp +libs/test/example/unit_test_example_02.cpp +libs/test/example/unit_test_example_03.cpp +libs/test/example/unit_test_example_04.cpp +libs/test/example/unit_test_example_05.cpp +libs/test/src/compiler_log_formatter.cpp +libs/test/src/cpp_main.cpp +libs/test/src/exception_safety.cpp +libs/test/src/execution_monitor.cpp +libs/test/src/framework.cpp +libs/test/src/interaction_based.cpp +libs/test/src/logged_expectations.cpp +libs/test/src/plain_report_formatter.cpp +libs/test/src/progress_monitor.cpp +libs/test/src/results_collector.cpp +libs/test/src/results_reporter.cpp +libs/test/src/test_tools.cpp +libs/test/src/unit_test_log.cpp +libs/test/src/unit_test_main.cpp +libs/test/src/unit_test_monitor.cpp +libs/test/src/unit_test_parameters.cpp +libs/test/src/unit_test_suite.cpp +libs/test/src/xml_log_formatter.cpp +libs/test/src/xml_report_formatter.cpp +libs/test/test/custom_exception_test.cpp +libs/test/test/errors_handling_test.cpp +libs/test/test/minimal_test.cpp +libs/test/test/online_test.cpp +libs/test/test/output_test_stream_test.cpp +libs/test/test/parameterized_test_test.cpp +libs/test/test/prg_exec_fail1.cpp +libs/test/test/prg_exec_fail2.cpp +libs/test/test/prg_exec_fail3.cpp +libs/test/test/prg_exec_fail4.cpp +libs/test/test/result_report_test.cpp +libs/test/test/test_case_template_test.cpp +libs/test/test/test_files/errors_handling_test.pattern +libs/test/test/test_files/result_report_test.pattern +libs/test/test/test_fp_comparisons.cpp +libs/test/test/test_tools_test.cpp +libs/type_traits/examples/copy_example.cpp +libs/type_traits/examples/fill_example.cpp +libs/type_traits/examples/iter_swap_example.cpp +libs/type_traits/examples/trivial_destructor_example.cpp +libs/utility/addressof_test.cpp +libs/utility/base_from_member_test.cpp +libs/utility/call_traits_test.cpp +libs/utility/iterators_test.cpp +libs/utility/noncopyable_test.cpp +libs/utility/operators_test.cpp +libs/utility/shared_iterator_example1.cpp +libs/utility/shared_iterator_example2.cpp +libs/utility/shared_iterator_example3.cpp +libs/wave/ChangeLog +more/blanket-permission.txt +tools/build/v2/hacking.txt +tools/inspect/build/Jamfile.v2 +tools/inspect/inspect.cpp +tools/inspect/inspector.hpp +tools/inspect/link_check.cpp +tools/inspect/link_check.hpp +tools/inspect/tab_check.cpp +tools/inspect/tab_check.hpp +tools/quickbook/doc/quickbook.qbk diff --git a/python_library_name.patch b/python_library_name.patch new file mode 100644 index 0000000..7d46c2f --- /dev/null +++ b/python_library_name.patch @@ -0,0 +1,58 @@ +Python module needs to be built without these extra renames. +MPI module needs to reference correct python + +~Index: boost_1_64_0/libs/mpi/build/Jamfile.v2 +~=================================================================== +~--- boost_1_64_0.orig/libs/mpi/build/Jamfile.v2 +~+++ boost_1_64_0/libs/mpi/build/Jamfile.v2 +~@@ -61,10 +61,10 @@ libraries += boost_mpi ; +~ lib boost_mpi_python +~ : # Sources +~ python/serialize.cpp +~+ /user-config//boost_python_alias +~ : # Requirements +~ boost_mpi +~ /mpi//mpi [ mpi.extra-requirements ] +~- /boost/python//boost_python +~ shared:BOOST_MPI_DYN_LINK=1 +~ shared:BOOST_MPI_PYTHON_DYN_LINK=1 +~ shared:BOOST_PYTHON_DYN_LINK=1 +~@@ -92,8 +92,8 @@ libraries += boost_mpi ; +~ python/skeleton_and_content.cpp +~ python/status.cpp +~ python/py_timer.cpp +~+ /user-config//boost_python_alias +~ : # Requirements +~- /boost/python//boost_python +~ boost_mpi_python +~ boost_mpi +~ /mpi//mpi [ mpi.extra-requirements ] +Index: boost_1_75_0/boostcpp.jam +=================================================================== +--- boost_1_75_0.orig/boostcpp.jam ++++ boost_1_75_0/boostcpp.jam +@@ -227,15 +227,15 @@ rule python-tag ( name : type ? : proper + { + # Add Python version suffix + +- local version = [ $(property-set).get ] ; +- +- local major-minor = [ MATCH "^([0-9]+)\.([0-9]+)" : $(version) ] ; +- local suffix = $(major-minor:J="") ; +- +- if $(suffix) +- { +- result = $(result)$(suffix) ; +- } ++ # local version = [ $(property-set).get ] ; ++ # ++ # local major-minor = [ MATCH "^([0-9]+)\.([0-9]+)" : $(version) ] ; ++ # local suffix = $(major-minor:J="") ; ++ # ++ # if $(suffix) ++ # { ++ # result = $(result)$(suffix) ; ++ # } + + # Add PYTHON_ID if supplied + diff --git a/python_mpi.patch b/python_mpi.patch new file mode 100644 index 0000000..e0d7d70 --- /dev/null +++ b/python_mpi.patch @@ -0,0 +1,27 @@ +Author: Adam Majer +Summary: Fix MPI module loading + +MPI requires dl.RTLD_NOW|dl.RTLD_GLOBAL flags to load +properly. + + +Index: boost_1_64_0/libs/mpi/build/__init__.py +=================================================================== +--- boost_1_64_0.orig/libs/mpi/build/__init__.py ++++ boost_1_64_0/libs/mpi/build/__init__.py +@@ -1,10 +1,7 @@ + import sys +-if sys.platform == 'linux2': +- import DLFCN as dl +- flags = sys.getdlopenflags() +- sys.setdlopenflags(dl.RTLD_NOW|dl.RTLD_GLOBAL) +- import mpi +- sys.setdlopenflags(flags) +-else: +- import mpi ++import DLFCN as dl ++flags = sys.getdlopenflags() ++sys.setdlopenflags(dl.RTLD_NOW|dl.RTLD_GLOBAL) ++import boost.parallel.mpi.mpi ++sys.setdlopenflags(flags) + diff --git a/symbol_diff.sh b/symbol_diff.sh new file mode 100644 index 0000000..e65be58 --- /dev/null +++ b/symbol_diff.sh @@ -0,0 +1,21 @@ +#!/bin/sh + +# compares symbols of $1 vs. $2 +# returns diff of the two global function tables +# + +if test $# -ne 2; then + echo "$0 library1 library2" + exit 2 +fi + +PARAMS='[0-9a-f]\+[[:space:]]\+g[[:space:]]\+F[[:space:]]\+\.text[[:space:]]\+[0-9a-f]\+[[:space:]]\+' + +objdump -t $1 | grep $PARAMS | sed -e 's#'$PARAMS'##' | sort > temp.$$ +objdump -t $2 | grep $PARAMS | sed -e 's#'$PARAMS'##' | sort | diff temp.$$ - + +RET=$? + +rm temp.$$ + +exit $RET