From 62336d0b675bae893f9c5cfd8b6018f7532bddcbfa02aca7e35a205d27a4e817 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Mon, 17 Aug 2020 17:45:34 +0000 Subject: [PATCH] - 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) OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/boost?expand=0&rev=253 --- 3ecbf83f.patch | 29 ++--- baselibs.conf | 51 ++++----- boost-1.57.0-python-abi_letters.patch | 22 ++-- boost-aarch64-flags.patch | 8 +- boost-no_segfault_in_Regex_filter.patch | 11 -- boost-remove-cmakedir.patch | 30 ++++++ boost-rpmoptflags-only.patch | 29 +---- boost-strict_aliasing.patch | 2 +- boost-use_std_xml_catalog.patch | 8 +- boost-visibility.patch | 110 ------------------- boost.changes | 13 +++ boost.spec | 138 +++++++++++++----------- boost_1_71_0.tar.bz2 | 3 - boost_1_74_0.tar.bz2 | 3 + dynamic_linking.patch | 46 ++++---- python_library_name.patch | 26 ++--- riscv-support.patch | 88 --------------- 17 files changed, 215 insertions(+), 402 deletions(-) delete mode 100644 boost-no_segfault_in_Regex_filter.patch create mode 100644 boost-remove-cmakedir.patch delete mode 100644 boost-visibility.patch delete mode 100644 boost_1_71_0.tar.bz2 create mode 100644 boost_1_74_0.tar.bz2 delete mode 100644 riscv-support.patch diff --git a/3ecbf83f.patch b/3ecbf83f.patch index 1103905..3d3c7b6 100644 --- a/3ecbf83f.patch +++ b/3ecbf83f.patch @@ -6,30 +6,15 @@ Date: Sat Apr 13 21:54:45 2019 +0300 This fixes mpi plugins for Python not being built and installed. -Index: boost_1_71_0/libs/mpi/build/Jamfile.v2 +Index: boost_1_74_0/libs/mpi/build/Jamfile.v2 =================================================================== ---- boost_1_71_0.orig/libs/mpi/build/Jamfile.v2 -+++ boost_1_71_0/libs/mpi/build/Jamfile.v2 -@@ -74,6 +74,7 @@ rule python-tag ( name : type ? : proper - return [ tag $(result) : $(type) : $(property-set) ] ; - } +--- boost_1_74_0.orig/libs/mpi/build/Jamfile.v2 ++++ boost_1_74_0/libs/mpi/build/Jamfile.v2 +@@ -21,6 +21,7 @@ import regex ; + # as a prerequisite. (See https://github.com/boostorg/build/pull/290) + # +mpi_python_libs = ; - if [ mpi.configured ] - { -@@ -169,6 +170,8 @@ lib boost_mpi - shared shared - on:BOOST_DEBUG_PYTHON - ; -+ -+ mpi_python_libs = boost_mpi_python mpi ; - } - } - else if ! ( --without-mpi in [ modules.peek : ARGV ] ) -@@ -185,4 +188,4 @@ else - alias boost_mpi ; - } + mpi_python_libs = ; --boost-install boost_mpi ; -+boost-install boost_mpi $(mpi_python_libs) ; diff --git a/baselibs.conf b/baselibs.conf index 16307b0..660ab73 100644 --- a/baselibs.conf +++ b/baselibs.conf @@ -1,25 +1,26 @@ -libboost_atomic1_71_0 -libboost_container1_71_0 -libboost_context1_71_0 -libboost_coroutine1_71_0 -libboost_date_time1_71_0 -libboost_fiber1_71_0 -libboost_filesystem1_71_0 -libboost_graph1_71_0 -libboost_graph_parallel1_71_0 -libboost_iostreams1_71_0 -libboost_locale1_71_0 -libboost_math1_71_0 -libboost_mpi1_71_0 -libboost_test1_71_0 -libboost_program_options1_71_0 -libboost_python-py2_7-1_71_0 -libboost_python-py3-1_71_0 -libboost_random1_71_0 -libboost_serialization1_71_0 -libboost_stacktrace1_71_0 -libboost_system1_71_0 -libboost_thread1_71_0 -libboost_type_erasure1_71_0 -libboost_wave1_71_0 -libboost_regex1_71_0 +libboost_atomic1_74_0 +libboost_container1_74_0 +libboost_context1_74_0 +libboost_coroutine1_74_0 +libboost_date_time1_74_0 +libboost_fiber1_74_0 +libboost_filesystem1_74_0 +libboost_graph1_74_0 +libboost_graph_parallel1_74_0 +libboost_iostreams1_74_0 +libboost_locale1_74_0 +libboost_math1_74_0 +libboost_mpi1_74_0 +libboost_nowide1_74_0 +libboost_test1_74_0 +libboost_program_options1_74_0 +libboost_python-py2_7-1_74_0 +libboost_python-py3-1_74_0 +libboost_random1_74_0 +libboost_serialization1_74_0 +libboost_stacktrace1_74_0 +libboost_system1_74_0 +libboost_thread1_74_0 +libboost_type_erasure1_74_0 +libboost_wave1_74_0 +libboost_regex1_74_0 diff --git a/boost-1.57.0-python-abi_letters.patch b/boost-1.57.0-python-abi_letters.patch index 0956e9e..b959d14 100644 --- a/boost-1.57.0-python-abi_letters.patch +++ b/boost-1.57.0-python-abi_letters.patch @@ -1,8 +1,8 @@ -Index: boost_1_71_0/tools/build/src/tools/python.jam +Index: boost_1_74_0/tools/build/src/tools/python.jam =================================================================== ---- boost_1_71_0.orig/tools/build/src/tools/python.jam -+++ boost_1_71_0/tools/build/src/tools/python.jam -@@ -99,7 +99,7 @@ py3-version = ; +--- boost_1_74_0.orig/tools/build/src/tools/python.jam ++++ boost_1_74_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 ? @@ -11,7 +11,7 @@ Index: boost_1_71_0/tools/build/src/tools/python.jam { project.push-current $(.project) ; -@@ -112,7 +112,7 @@ rule init ( version ? : cmd-or-prefix ? +@@ -115,7 +115,7 @@ rule init ( version ? : cmd-or-prefix ? } } @@ -20,7 +20,7 @@ Index: boost_1_71_0/tools/build/src/tools/python.jam project.pop-current ; } -@@ -507,7 +507,7 @@ local rule probe ( python-cmd ) +@@ -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 ? : @@ -29,7 +29,7 @@ Index: boost_1_71_0/tools/build/src/tools/python.jam { exec-prefix ?= $(prefix) ; -@@ -668,7 +668,7 @@ rule version-suffix ( version ) +@@ -671,7 +671,7 @@ rule version-suffix ( version ) # Declare a target to represent Python's library. # @@ -38,7 +38,7 @@ Index: boost_1_71_0/tools/build/src/tools/python.jam { # Compute the representation of Python version in the name of Python's # library file. -@@ -692,13 +692,13 @@ local rule declare-libpython-target ( ve +@@ -695,13 +695,13 @@ local rule declare-libpython-target ( ve } # Declare it. @@ -54,7 +54,7 @@ Index: boost_1_71_0/tools/build/src/tools/python.jam { local prefix ; local exec-prefix ; -@@ -714,6 +714,7 @@ local rule configure ( version ? : cmd-o +@@ -717,6 +717,7 @@ local rule configure ( version ? : cmd-o extension-suffix ?= _d ; } extension-suffix ?= "" ; @@ -62,7 +62,7 @@ Index: boost_1_71_0/tools/build/src/tools/python.jam local cmds-to-try ; -@@ -789,7 +790,7 @@ local rule configure ( version ? : cmd-o +@@ -792,7 +793,7 @@ local rule configure ( version ? : cmd-o exec-prefix = $(sys.exec_prefix) ; compute-default-paths $(target-os) : $(sys.version) : @@ -71,7 +71,7 @@ Index: boost_1_71_0/tools/build/src/tools/python.jam version = $(sys.version) ; interpreter-cmd ?= $(cmd) ; -@@ -970,7 +971,7 @@ local rule configure ( version ? : cmd-o +@@ -973,7 +974,7 @@ local rule configure ( version ? : cmd-o } else { diff --git a/boost-aarch64-flags.patch b/boost-aarch64-flags.patch index fc840ac..e53a7e2 100644 --- a/boost-aarch64-flags.patch +++ b/boost-aarch64-flags.patch @@ -1,8 +1,8 @@ -Index: boost_1_67_0/tools/build/src/tools/gcc.jam +Index: boost_1_74_0/tools/build/src/tools/gcc.jam =================================================================== ---- boost_1_67_0.orig/tools/build/src/tools/gcc.jam -+++ boost_1_67_0/tools/build/src/tools/gcc.jam -@@ -360,7 +360,6 @@ local rule compile-link-flags ( * ) +--- boost_1_74_0.orig/tools/build/src/tools/gcc.jam ++++ boost_1_74_0/tools/build/src/tools/gcc.jam +@@ -442,7 +442,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 ; diff --git a/boost-no_segfault_in_Regex_filter.patch b/boost-no_segfault_in_Regex_filter.patch deleted file mode 100644 index 3bafc5c..0000000 --- a/boost-no_segfault_in_Regex_filter.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- boost/iostreams/filter/regex.hpp -+++ boost/iostreams/filter/regex.hpp -@@ -58,7 +58,7 @@ - return; - iterator first(&src[0], &src[0] + src.size(), re_, flags_); - iterator last; -- const Ch* suffix = 0; -+ const Ch* suffix = &src[0]; - for (; first != last; ++first) { - dest.insert( dest.end(), - first->prefix().first, diff --git a/boost-remove-cmakedir.patch b/boost-remove-cmakedir.patch new file mode 100644 index 0000000..2a7c903 --- /dev/null +++ b/boost-remove-cmakedir.patch @@ -0,0 +1,30 @@ +Index: boost_1_74_0/tools/boost_install/boost-install.jam +=================================================================== +--- boost_1_74_0.orig/tools/boost_install/boost-install.jam ++++ boost_1_74_0/tools/boost_install/boost-install.jam +@@ -652,25 +652,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-rpmoptflags-only.patch b/boost-rpmoptflags-only.patch index daba960..f7714c7 100644 --- a/boost-rpmoptflags-only.patch +++ b/boost-rpmoptflags-only.patch @@ -2,39 +2,20 @@ Index: tools/build/src/tools/gcc.jam =================================================================== --- tools/build/src/tools/gcc.jam.orig +++ tools/build/src/tools/gcc.jam -@@ -569,7 +569,7 @@ rule compile.fortran ( targets * : sourc - - actions compile.c++ bind PCH_FILE - { -- "$(CONFIG_COMMAND)" $(LANG) -ftemplate-depth-$(TEMPLATE_DEPTH) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(PCH_FILE:D)" -I"$(INCLUDES)" -c -o "$(<:W)" "$(>:W)" -+ "$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(PCH_FILE:D)" -I"$(INCLUDES)" -c -o "$(<:W)" "$(>:W)" - } - - actions compile.c bind PCH_FILE -@@ -579,7 +579,7 @@ actions compile.c bind PCH_FILE - - actions compile.c++.preprocess bind PCH_FILE - { -- "$(CONFIG_COMMAND)" $(LANG) -ftemplate-depth-$(TEMPLATE_DEPTH) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(PCH_FILE:D)" -I"$(INCLUDES)" "$(>:W)" -E >"$(<:W)" -+ "$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(PCH_FILE:D)" -I"$(INCLUDES)" "$(>:W)" -E >"$(<:W)" - } - - actions compile.c.preprocess bind PCH_FILE -@@ -702,15 +702,15 @@ actions compile.c.pch +@@ -704,15 +704,15 @@ 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 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 speed : ; +toolset.flags gcc.compile OPTIONS space : ; -+ + +-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 : ; diff --git a/boost-strict_aliasing.patch b/boost-strict_aliasing.patch index 94854f9..eabefb9 100644 --- a/boost-strict_aliasing.patch +++ b/boost-strict_aliasing.patch @@ -2,7 +2,7 @@ Index: libs/python/build/Jamfile =================================================================== --- libs/python/build/Jamfile.orig +++ libs/python/build/Jamfile -@@ -94,6 +94,7 @@ lib boost_python +@@ -96,6 +96,7 @@ lib boost_python on:BOOST_DEBUG_PYTHON -@$(BOOST_JAMROOT_MODULE)%$(BOOST_JAMROOT_MODULE).tag @$(__name__).python-tag diff --git a/boost-use_std_xml_catalog.patch b/boost-use_std_xml_catalog.patch index 18a4f42..0ca9e28 100644 --- a/boost-use_std_xml_catalog.patch +++ b/boost-use_std_xml_catalog.patch @@ -1,8 +1,8 @@ -Index: boost_1_56_0/tools/build/src/tools/boostbook.jam +Index: boost_1_74_0/tools/build/src/tools/boostbook.jam =================================================================== ---- boost_1_56_0.orig/tools/build/src/tools/boostbook.jam -+++ boost_1_56_0/tools/build/src/tools/boostbook.jam -@@ -548,40 +548,7 @@ rule generate-xml-catalog ( target : sou +--- 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 ; diff --git a/boost-visibility.patch b/boost-visibility.patch deleted file mode 100644 index 15e6c1a..0000000 --- a/boost-visibility.patch +++ /dev/null @@ -1,110 +0,0 @@ ---- - boost/archive/impl/basic_xml_grammar.hpp | 16 ++++++++-------- - libs/serialization/src/basic_xml_grammar.ipp | 14 +++++++------- - 2 files changed, 15 insertions(+), 15 deletions(-) - -Index: boost/archive/impl/basic_xml_grammar.hpp -=================================================================== ---- boost/archive/impl/basic_xml_grammar.hpp.orig -+++ boost/archive/impl/basic_xml_grammar.hpp -@@ -135,7 +135,7 @@ private: - Sch, - NameChar; - -- void init_chset(); -+ BOOST_SYMBOL_VISIBLE void init_chset(); - - bool my_parse( - IStream & is, -@@ -143,7 +143,7 @@ private: - const CharType delimiter = L'>' - ) const ; - public: -- struct return_values { -+ BOOST_SYMBOL_VISIBLE struct return_values { - StringType object_name; - StringType contents; - //class_id_type class_id; -@@ -159,12 +159,12 @@ public: - tracking_level(false) - {} - } rv; -- bool parse_start_tag(IStream & is) /*const*/; -- bool parse_end_tag(IStream & is) const; -- bool parse_string(IStream & is, StringType & s) /*const*/; -- void init(IStream & is); -- bool windup(IStream & is); -- basic_xml_grammar(); -+ BOOST_SYMBOL_VISIBLE bool parse_start_tag(IStream & is) /*const*/; -+ BOOST_SYMBOL_VISIBLE bool parse_end_tag(IStream & is) const; -+ BOOST_SYMBOL_VISIBLE bool parse_string(IStream & is, StringType & s) /*const*/; -+ BOOST_SYMBOL_VISIBLE void init(IStream & is); -+ BOOST_SYMBOL_VISIBLE bool windup(IStream & is); -+ BOOST_SYMBOL_VISIBLE basic_xml_grammar(); - }; - - } // namespace archive -Index: libs/serialization/src/basic_xml_grammar.ipp -=================================================================== ---- libs/serialization/src/basic_xml_grammar.ipp.orig -+++ libs/serialization/src/basic_xml_grammar.ipp -@@ -173,7 +173,7 @@ struct append_lit { - } // namespace anonymous - - template --bool basic_xml_grammar::my_parse( -+BOOST_SYMBOL_VISIBLE bool basic_xml_grammar::my_parse( - typename basic_xml_grammar::IStream & is, - const rule_t & rule_, - CharType delimiter -@@ -209,7 +209,7 @@ bool basic_xml_grammar::my_par - } - - template --bool basic_xml_grammar::parse_start_tag( -+BOOST_SYMBOL_VISIBLE bool basic_xml_grammar::parse_start_tag( - typename basic_xml_grammar::IStream & is - ){ - rv.class_name.resize(0); -@@ -217,12 +217,12 @@ bool basic_xml_grammar::parse_ - } - - template --bool basic_xml_grammar::parse_end_tag(IStream & is) const { -+BOOST_SYMBOL_VISIBLE bool basic_xml_grammar::parse_end_tag(IStream & is) const { - return my_parse(is, ETag); - } - - template --bool basic_xml_grammar::parse_string(IStream & is, StringType & s){ -+BOOST_SYMBOL_VISIBLE bool basic_xml_grammar::parse_string(IStream & is, StringType & s){ - rv.contents.resize(0); - bool result = my_parse(is, content, '<'); - // note: unget caused a problem with dinkumware. replace with -@@ -235,7 +235,7 @@ bool basic_xml_grammar::parse_ - } - - template --basic_xml_grammar::basic_xml_grammar(){ -+BOOST_SYMBOL_VISIBLE basic_xml_grammar::basic_xml_grammar(){ - init_chset(); - - S = -@@ -432,7 +432,7 @@ basic_xml_grammar::basic_xml_g - } - - template --void basic_xml_grammar::init(IStream & is){ -+BOOST_SYMBOL_VISIBLE void basic_xml_grammar::init(IStream & is){ - init_chset(); - if(! my_parse(is, XMLDecl)) - boost::serialization::throw_exception( -@@ -453,7 +453,7 @@ void basic_xml_grammar::init(I - } - - template --bool basic_xml_grammar::windup(IStream & is) { -+BOOST_SYMBOL_VISIBLE bool basic_xml_grammar::windup(IStream & is) { - return my_parse(is, ETag); - } - diff --git a/boost.changes b/boost.changes index 37a4f7d..6001c57 100644 --- a/boost.changes +++ b/boost.changes @@ -1,3 +1,16 @@ +------------------------------------------------------------------- +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) + ------------------------------------------------------------------- Thu Mar 12 10:18:33 UTC 2020 - Adam Majer diff --git a/boost.spec b/boost.spec index cb9109f..9dcee8c 100644 --- a/boost.spec +++ b/boost.spec @@ -16,9 +16,9 @@ # -%define ver 1.71.0 -%define _ver 1_71_0 -%define package_version 1_71_0 +%define ver 1.74.0 +%define _ver 1_74_0 +%define package_version 1_74_0 %define file_version %_ver %define lib_appendix %_ver %define docs_version 1.56.0 @@ -174,7 +174,7 @@ ExcludeArch: s390x %{ix86} ppc64 ppc64le ia64 hppa %define package_prefix %{_prefix} %define package_bindir %{_bindir} %define package_libdir %{_libdir} -%define package_includedir %{_includedir} +%define package_includedir %{_includedir} %define base_name boost%{name_suffix} %define package_python2_sitearch %python2_sitearch %define package_python3_sitearch %python3_sitearch @@ -188,9 +188,9 @@ ExcludeArch: s390x %{ix86} ppc64 ppc64le ia64 hppa %endif Name: %{base_name} -Version: 1.71.0 +Version: 1.74.0 Release: 0 -%define library_version 1_71_0 +%define library_version 1_74_0 Summary: Boost C++ Libraries License: BSL-1.0 @@ -207,22 +207,20 @@ Source101: symbol_diff.sh Source102: README.boost-devel Patch1: boost-thread.patch Patch2: boost-no_type_punning.patch -Patch3: boost-no_segfault_in_Regex_filter.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 Patch10: boost-disable-pch-on-aarch64.patch -Patch13: boost-visibility.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 -Patch23: 3ecbf83f.patch -Patch24: riscv-support.patch +Patch21: boost-remove-cmakedir.patch BuildRequires: fdupes +BuildRequires: gmp-devel BuildRequires: libbz2-devel BuildRequires: libexpat-devel BuildRequires: libicu-devel @@ -242,14 +240,14 @@ BuildRequires: python2-numpy-devel %else BuildRequires: python-numpy-devel %endif -%endif # numpy2 -%endif # python2 +%endif +%endif %if %{with python3} BuildRequires: python3-devel %if %{with python_numpy} BuildRequires: python3-numpy-devel -%endif # numpy3 -%endif # python3 +%endif +%endif %if %{with build_docs} BuildRequires: docbook BuildRequires: docbook-xsl-stylesheets @@ -257,7 +255,7 @@ BuildRequires: doxygen BuildRequires: libxslt-tools BuildRequires: texlive-latex %endif -%endif # ! build_base +%endif %if %{with hpc} BuildRequires: %{compiler_family}%{?c_f_ver}-compilers-hpc-macros-devel BuildRequires: lua-lmod @@ -325,6 +323,7 @@ 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 @@ -355,7 +354,7 @@ Requires: libboost_python-py2_7-%{library_version}-devel %if %{with python3} Requires: libboost_python-py3-%{library_version}-devel %endif -%endif #hpc +%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 @@ -367,7 +366,7 @@ Summary: Boost.MPI Python 3.x serialization library Group: System/Libraries Requires: %{package_name} -%description -n %{package_name}-python3 +%description -n %{package_name}-python3 This package contains the Boost.MPI Python 3.x serialization inteface. %package -n %{package_name}-python2 @@ -375,12 +374,12 @@ Summary: Boost.MPI Python 2.x serialization library Group: System/Libraries Requires: %{package_name} -%description -n %{package_name}-python2 +%description -n %{package_name}-python2 This package contains the Boost.MPI Python 2.x serialization inteface. -%endif # hpc +%endif %package -n boost%{library_version}-jam Summary: A Boost Make Replacement @@ -783,6 +782,21 @@ Provides: libboost_mpi_python-devel-impl = %{version} This package contains the Boost.MPI development library for Python 2.7 serialization interface. +%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++ + +%description -n libboost_nowide%{library_version}-devel +Development headers for Boost.Nowide* boost libraries. + %package -n python2-boost_parallel_mpi%{library_version} Summary: Python 2.7 bindings for Boost.Parallel.MPI library Group: Development/Languages/Python @@ -1223,21 +1237,18 @@ tasks. find -type f ! \( -name \*.sh -o -name \*.py -o -name \*.pl \) -exec chmod -x {} + %patch1 -p1 %patch2 -%patch3 %patch4 %patch5 %patch6 -p1 %patch7 %patch9 -p1 %patch10 -p1 -%patch13 %patch15 -p1 %patch16 -p1 %patch17 -p1 %patch18 -p1 %patch20 -p1 -%patch23 -p1 -%patch24 -p1 +%patch21 -p1 %build find . -type f -exec chmod u+w {} + @@ -1263,7 +1274,7 @@ LIBRARIES_FLAGS+=" --without-fiber" %endif EOF -%else # ! build_base +%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, @@ -1303,7 +1314,7 @@ module load gnu %mpi_flavor # alias boost_python_alias : : /boost/python//boost_python ; cat << EOF >user-config.jam EOF -%endif # ! build_base +%endif # bootstrap b2 ./bootstrap.sh \ @@ -1339,7 +1350,7 @@ EOF --stagedir=./python-stage %{?_smp_mflags} \ $PY_LIBRARIES_FLAGS \ threading=multi link=shared runtime-link=shared stage -%endif # with python2 +%endif # Build boost python3 and MPI, installed in python3 staging %if %{with python3} @@ -1369,7 +1380,7 @@ EOF --stagedir=./python3-stage %{?_smp_mflags} \ $PY_LIBRARIES_FLAGS \ threading=multi link=shared runtime-link=shared stage -%endif # python3 +%endif %if %{with build_docs} cat << EOF >>user-config.jam @@ -1389,7 +1400,7 @@ EOF echo 'using mpi ;' >> ./user-config.jam %endif -%endif # ! build_base +%endif # This is run for both mini and non-mini build ./b2 -d+2 -q --user-config=./user-config.jam \ @@ -1427,9 +1438,9 @@ popd cd doc ./b2 --user-config=../user-config.jam --v2 man %{?_smp_mflags} %endif -%endif # ! hpc +%endif -%endif # ! build_base +%endif %install @@ -1469,7 +1480,7 @@ module load gnu %mpi_flavor threading=multi link=shared runtime-link=shared install %endif -%endif # ! build_base +%endif # Generic install ./b2 -d+2 -q \ @@ -1533,8 +1544,8 @@ chmod -x ../boost_1_56_pdf/*.pdf mkdir -p %{buildroot}%{package_bindir} install -m 0755 dist/bin/quickbook %{buildroot}%{package_bindir}/quickbook %endif -%endif # ! hpc -%endif # ! build_base +%endif +%endif %if %{build_base} || %{with hpc} mkdir -p %{buildroot}%{package_bindir} @@ -1566,7 +1577,7 @@ mkdir -p %{buildroot}%{my_docdir} %if 0%{?sle_version} >= 120000 && 0%{?sle_version} <= 120200 && !0%{?is_opensuse} mkdir -p %{buildroot}%{_defaultlicensedir} %endif -%else # ! build_base +%else # duplicate from boost-base flavour rm %{buildroot}%{package_libdir}/cmake/BoostDetectToolset-%{version}.cmake rm -r %{buildroot}%{package_libdir}/cmake/Boost-%{version} @@ -1584,10 +1595,6 @@ rmdir --ignore-fail-on-non-empty %{buildroot}%{package_libdir} %fdupes %{buildroot}%{my_docdir} %endif -# Remove bad files - no -f on purpose, so we see when we they fix it. -rm %{buildroot}%{package_libdir}/*.so.1 -rm %{buildroot}%{package_libdir}/*.so.1.71 - %if %{with hpc} %hpc_write_modules_files #%%Module1.0##################################################################### @@ -1648,6 +1655,7 @@ EOF %post -n libboost_thread%{library_version} -p /sbin/ldconfig %post -n libboost_type_erasure%{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 @@ -1656,7 +1664,7 @@ EOF %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 # ! build_base +%else %if %{with python2} %post -n libboost_python-py2_7-%{library_version} -p /sbin/ldconfig %if %{with python_numpy} @@ -1683,7 +1691,7 @@ EOF %endif %endif -%endif # ! build_base +%endif %if %{with hpc} %post -n %base_name -p /sbin/ldconfig %endif @@ -1706,6 +1714,7 @@ EOF %postun -n libboost_thread%{library_version} -p /sbin/ldconfig %postun -n libboost_type_erasure%{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 @@ -1714,7 +1723,7 @@ EOF %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 # ! build_base +%else %if %{with python2} %postun -n libboost_python-py2_7-%{library_version} -p /sbin/ldconfig %if %{with python_numpy} @@ -1741,7 +1750,7 @@ EOF %endif %endif -%endif # build_base +%endif %if %{with hpc} %postun -n %{base_name} -p /sbin/ldconfig @@ -1767,11 +1776,11 @@ EOF %package_includedir %package_libdir/*.so %if %{with python2} -%files -n %{package_name}-python2 +%files -n %{package_name}-python2 %package_python2_sitearch %endif %if %{with python3} -%files -n %{package_name}-python3 +%files -n %{package_name}-python3 %package_python3_sitearch %endif @@ -1814,7 +1823,7 @@ EOF %{package_libdir}/cmake/boost_coroutine-%{version}/* %{package_libdir}/libboost_coroutine.so -%endif # if with build_context +%endif %files -n libboost_contract%{library_version} %{package_libdir}/libboost_contract.so.%{version} @@ -1843,7 +1852,7 @@ EOF %{package_libdir}/cmake/boost_fiber_numa-%{version}/* %{package_libdir}/libboost_fiber.so -%endif # with boost_fiber +%endif %files -n libboost_filesystem%{library_version} %{package_libdir}/libboost_filesystem.so.%{version} @@ -1890,10 +1899,8 @@ EOF %{package_libdir}/libboost_math_tr1.so.%{version} %files -n libboost_math%{library_version}-devel -%dir %{package_libdir}/cmake/boost_math-%{version} %dir %{package_libdir}/cmake/boost_math_c99*-%{version} %dir %{package_libdir}/cmake/boost_math_tr1*-%{version} -%{package_libdir}/cmake/boost_math-%{version}/* %{package_libdir}/cmake/boost_math_c99*-%{version}/* %{package_libdir}/cmake/boost_math_tr1*-%{version}/* %{package_libdir}/libboost_math_c99f.so @@ -1903,6 +1910,17 @@ EOF %{package_libdir}/libboost_math_tr1l.so %{package_libdir}/libboost_math_tr1.so +%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 +/usr/lib64/cmake/boost_nowide-1.74.0/boost_nowide-config.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} @@ -1926,7 +1944,7 @@ EOF %dir %{package_libdir}/cmake/boost_program_options-%{version} %{package_libdir}/cmake/boost_program_options-%{version}/* %{package_libdir}/libboost_program_options.so -%endif # build_base +%endif %if ! %{build_base} @@ -1968,7 +1986,7 @@ EOF %{package_python2_sitearch}/boost/parallel/__init__.py %{package_python2_sitearch}/boost/parallel/mpi/__init__.py %{package_python2_sitearch}/boost/parallel/mpi/mpi.so -%endif # with python2 +%endif %if %{with python3} %files -n libboost_mpi_python-py3-%{library_version} @@ -1990,8 +2008,8 @@ EOF %{package_python3_sitearch}/boost/parallel/mpi/__init__.py %{package_python3_sitearch}/boost/parallel/mpi/mpi.%{py3_soflags}.so -%endif # with python3 -%endif # with mpi +%endif +%endif %if %{with python2} %files -n libboost_python-py2_7-%{library_version} @@ -2012,8 +2030,8 @@ EOF ##%{package_libdir}/cmake/boost_numpy-%{version}/* %{package_libdir}/libboost_numpy-py2_7.so -%endif # with numpy -%endif # with python2 +%endif +%endif %if %{with python3} %files -n libboost_python-py3-%{library_version} @@ -2036,9 +2054,9 @@ EOF %{package_libdir}/cmake/boost_numpy-%{version}/* %{package_libdir}/libboost_numpy-py3.so -%endif # with numpy -%endif # with python3 -%endif # ! build_base +%endif +%endif +%endif %if %{build_base} %files -n libboost_serialization%{library_version} @@ -2140,7 +2158,7 @@ EOF %dir %{package_libdir}/cmake/boost_type_erasure-%{version} %{package_libdir}/cmake/boost_type_erasure-%{version}/* %{package_libdir}/libboost_type_erasure.so -%endif # if build_base +%endif %if ! %{build_base} %if %{with boost_devel} @@ -2172,7 +2190,7 @@ EOF %files -n %{package_name}-quickbook %{package_bindir}/quickbook %endif -%endif # ! build_base +%endif %if %{build_base} %files -n libboost_headers%{library_version}-devel @@ -2192,6 +2210,6 @@ EOF %endif %endif -%endif # without hpc +%endif %changelog diff --git a/boost_1_71_0.tar.bz2 b/boost_1_71_0.tar.bz2 deleted file mode 100644 index 2db0262..0000000 --- a/boost_1_71_0.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d73a8da01e8bf8c7eda40b4c84915071a8c8a0df4a6734537ddde4a8580524ee -size 100124647 diff --git a/boost_1_74_0.tar.bz2 b/boost_1_74_0.tar.bz2 new file mode 100644 index 0000000..8a710e9 --- /dev/null +++ b/boost_1_74_0.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83bfc1507731a0906e387fc28b7ef5417d591429e51e788417fe9ff025e116b1 +size 109600630 diff --git a/dynamic_linking.patch b/dynamic_linking.patch index c240b84..a058124 100644 --- a/dynamic_linking.patch +++ b/dynamic_linking.patch @@ -1,7 +1,7 @@ -Index: boost_1_70_0/libs/test/build/Jamfile.v2 +Index: boost_1_74_0/libs/test/build/Jamfile.v2 =================================================================== ---- boost_1_70_0.orig/libs/test/build/Jamfile.v2 -+++ boost_1_70_0/libs/test/build/Jamfile.v2 +--- boost_1_74_0.orig/libs/test/build/Jamfile.v2 ++++ boost_1_74_0/libs/test/build/Jamfile.v2 @@ -95,7 +95,7 @@ lib boost_test_exec_monitor : # sources $(TEST_EXEC_MON_SOURCES).cpp @@ -11,10 +11,10 @@ Index: boost_1_70_0/libs/test/build/Jamfile.v2 : # default build : # usage-requirements shared:BOOST_TEST_DYN_LINK=1 -Index: boost_1_70_0/libs/exception/build/Jamfile.v2 +Index: boost_1_74_0/libs/exception/build/Jamfile.v2 =================================================================== ---- boost_1_70_0.orig/libs/exception/build/Jamfile.v2 -+++ boost_1_70_0/libs/exception/build/Jamfile.v2 +--- boost_1_74_0.orig/libs/exception/build/Jamfile.v2 ++++ boost_1_74_0/libs/exception/build/Jamfile.v2 @@ -7,7 +7,7 @@ project boost/exception @@ -24,10 +24,10 @@ Index: boost_1_70_0/libs/exception/build/Jamfile.v2 ; lib boost_exception : clone_current_exception_non_intrusive.cpp ; -Index: boost_1_70_0/libs/chrono/build/Jamfile.v2 +Index: boost_1_74_0/libs/chrono/build/Jamfile.v2 =================================================================== ---- boost_1_70_0.orig/libs/chrono/build/Jamfile.v2 -+++ boost_1_70_0/libs/chrono/build/Jamfile.v2 +--- boost_1_74_0.orig/libs/chrono/build/Jamfile.v2 ++++ boost_1_74_0/libs/chrono/build/Jamfile.v2 @@ -93,7 +93,7 @@ project boost/chrono sun:__typeof__=__typeof__ @@ -46,10 +46,10 @@ Index: boost_1_70_0/libs/chrono/build/Jamfile.v2 ; boost-install boost_chrono ; -Index: boost_1_70_0/libs/system/build/Jamfile.v2 +Index: boost_1_74_0/libs/system/build/Jamfile.v2 =================================================================== ---- boost_1_70_0.orig/libs/system/build/Jamfile.v2 -+++ boost_1_70_0/libs/system/build/Jamfile.v2 +--- boost_1_74_0.orig/libs/system/build/Jamfile.v2 ++++ boost_1_74_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) @@ -68,10 +68,10 @@ Index: boost_1_70_0/libs/system/build/Jamfile.v2 ; boost-install boost_system ; -Index: boost_1_70_0/libs/timer/build/Jamfile.v2 +Index: boost_1_74_0/libs/timer/build/Jamfile.v2 =================================================================== ---- boost_1_70_0.orig/libs/timer/build/Jamfile.v2 -+++ boost_1_70_0/libs/timer/build/Jamfile.v2 +--- boost_1_74_0.orig/libs/timer/build/Jamfile.v2 ++++ boost_1_74_0/libs/timer/build/Jamfile.v2 @@ -13,7 +13,7 @@ project boost/timer /boost/chrono//boost_chrono : usage-requirements # pass these requirement to dependants (i.e. users) @@ -90,11 +90,11 @@ Index: boost_1_70_0/libs/timer/build/Jamfile.v2 ; boost-install boost_timer ; -Index: boost_1_70_0/libs/filesystem/build/Jamfile.v2 +Index: boost_1_74_0/libs/filesystem/build/Jamfile.v2 =================================================================== ---- boost_1_70_0.orig/libs/filesystem/build/Jamfile.v2 -+++ boost_1_70_0/libs/filesystem/build/Jamfile.v2 -@@ -11,7 +11,7 @@ project boost/filesystem +--- boost_1_74_0.orig/libs/filesystem/build/Jamfile.v2 ++++ boost_1_74_0/libs/filesystem/build/Jamfile.v2 +@@ -54,7 +54,7 @@ project boost/filesystem : source-location ../src : usage-requirements # pass these requirement to dependents (i.e. users) shared:BOOST_FILESYSTEM_DYN_LINK=1 @@ -103,10 +103,10 @@ Index: boost_1_70_0/libs/filesystem/build/Jamfile.v2 ; SOURCES = -@@ -28,7 +28,7 @@ SOURCES = - lib boost_filesystem - : $(SOURCES).cpp - : shared:BOOST_FILESYSTEM_DYN_LINK=1 +@@ -75,7 +75,7 @@ lib boost_filesystem + : BOOST_FILESYSTEM_SOURCE + ../src + shared:BOOST_FILESYSTEM_DYN_LINK=1 - static:BOOST_FILESYSTEM_STATIC_LINK=1 +# static:BOOST_FILESYSTEM_STATIC_LINK=1 : diff --git a/python_library_name.patch b/python_library_name.patch index 9333e4d..a358c7e 100644 --- a/python_library_name.patch +++ b/python_library_name.patch @@ -27,10 +27,10 @@ MPI module needs to reference correct python ~ boost_mpi_python ~ boost_mpi ~ /mpi//mpi [ mpi.extra-requirements ] -Index: boost_1_69_0/libs/python/Jamfile +Index: boost_1_74_0/libs/python/Jamfile =================================================================== ---- boost_1_69_0.orig/libs/python/Jamfile -+++ boost_1_69_0/libs/python/Jamfile +--- boost_1_74_0.orig/libs/python/Jamfile ++++ boost_1_74_0/libs/python/Jamfile @@ -36,9 +36,10 @@ local rule split-version ( version ) # For example, Boost.Python built for Python 2.7 uses the suffix "27" rule version-suffix ( version ) @@ -45,21 +45,15 @@ Index: boost_1_69_0/libs/python/Jamfile } -Index: boost_1_69_0/libs/mpi/build/Jamfile.v2 +Index: boost_1_74_0/tools/build/src/tools/python.jam =================================================================== ---- boost_1_69_0.orig/libs/mpi/build/Jamfile.v2 -+++ boost_1_69_0/libs/mpi/build/Jamfile.v2 -@@ -42,9 +42,10 @@ local rule split-version ( version ) +--- boost_1_74_0.orig/tools/build/src/tools/python.jam ++++ boost_1_74_0/tools/build/src/tools/python.jam +@@ -664,6 +664,7 @@ local rule system-library-dependencies ( # For example, Boost.Python built for Python 2.7 uses the suffix "27" rule version-suffix ( version ) { -- local major-minor = [ split-version $(version) ] ; -- local suffix = $(major-minor:J="") ; -- return $(suffix) ; -+ #local major-minor = [ split-version $(version) ] ; -+ #local suffix = $(major-minor:J="") ; -+ #return $(suffix) ; + return "" ; - } - - + local major-minor = [ split-version $(version) ] ; + local suffix = $(major-minor:J="") ; + return $(suffix) ; diff --git a/riscv-support.patch b/riscv-support.patch deleted file mode 100644 index 058fd0b..0000000 --- a/riscv-support.patch +++ /dev/null @@ -1,88 +0,0 @@ -https://github.com/boostorg/boost/commit/5c8898af4 -https://github.com/boostorg/predef/commit/fc99bc2 - -Index: boost_1_71_0/boost/predef/architecture.h -=================================================================== ---- boost_1_71_0.orig/boost/predef/architecture.h -+++ boost_1_71_0/boost/predef/architecture.h -@@ -21,6 +21,7 @@ http://www.boost.org/LICENSE_1_0.txt) - #include - #include - #include -+#include - #include - #include - #include -Index: boost_1_71_0/boost/predef/architecture/riscv.h -=================================================================== ---- /dev/null -+++ boost_1_71_0/boost/predef/architecture/riscv.h -@@ -0,0 +1,41 @@ -+/* -+Distributed under the Boost Software License, Version 1.0. -+(See accompanying file LICENSE_1_0.txt or copy at -+http://www.boost.org/LICENSE_1_0.txt) -+*/ -+ -+#ifndef BOOST_PREDEF_ARCHITECTURE_RISCV_H -+#define BOOST_PREDEF_ARCHITECTURE_RISCV_H -+ -+#include -+#include -+ -+/*` -+[heading `BOOST_ARCH_RISCV`] -+ -+[@http://en.wikipedia.org/wiki/RISC-V] architecture. -+ -+[table -+ [[__predef_symbol__] [__predef_version__]] -+ -+ [[`__riscv`] [__predef_detection__]] -+ ] -+ */ -+ -+#define BOOST_ARCH_RISCV BOOST_VERSION_NUMBER_NOT_AVAILABLE -+ -+#if defined(__riscv) -+# undef BOOST_ARCH_RISCV -+# define BOOST_ARCH_RISCV BOOST_VERSION_NUMBER_AVAILABLE -+#endif -+ -+#if BOOST_ARCH_RISCV -+# define BOOST_ARCH_RISCV_AVAILABLE -+#endif -+ -+#define BOOST_ARCH_RISCV_NAME "RISC-V" -+ -+#endif -+ -+#include -+BOOST_PREDEF_DECLARE_TEST(BOOST_ARCH_RISCV,BOOST_ARCH_RISCV_NAME) -Index: boost_1_71_0/boostcpp.jam -=================================================================== ---- boost_1_71_0.orig/boostcpp.jam -+++ boost_1_71_0/boostcpp.jam -@@ -607,7 +607,7 @@ rule address-model ( ) - return @boostcpp.deduce-address-model ; - } - --local deducable-architectures = arm mips1 power sparc x86 combined ; -+local deducable-architectures = arm mips1 power riscv sparc x86 combined ; - feature.feature deduced-architecture : $(deducable-architectures) : propagated optional composite hidden ; - for a in $(deducable-architectures) - { -@@ -618,11 +618,12 @@ rule deduce-architecture ( properties * - { - local result ; - local filtered = [ toolset-properties $(properties) ] ; -- local names = arm mips1 power sparc x86 combined ; -+ local names = arm mips1 power riscv sparc x86 combined ; - local idx = [ configure.find-builds "default architecture" : $(filtered) - : /boost/architecture//arm - : /boost/architecture//mips1 - : /boost/architecture//power -+ : /boost/architecture//riscv - : /boost/architecture//sparc - : /boost/architecture//x86 - : /boost/architecture//combined ] ;