diff --git a/0001-boost-1.81.0-build-optflags.patch b/0001-boost-1.81.0-build-optflags.patch index f83729f275fec25bd9da4fb5ee350532961a536c..0f482c887354d0a2e289228e545004d61320242c 100644 --- a/0001-boost-1.81.0-build-optflags.patch +++ b/0001-boost-1.81.0-build-optflags.patch @@ -1,26 +1,35 @@ +From ebc90bc3e372dc8e5db21f79d2a79e4f5c4d01ee Mon Sep 17 00:00:00 2001 +From: Patrick Palka +Date: Mon, 4 Dec 2023 09:24:20 -0500 +Subject: [PATCH] Adjust options for Fedora package build + +--- + tools/build/src/tools/gcc.jam | 30 +++++++++++++++--------------- + 1 file changed, 15 insertions(+), 15 deletions(-) + diff --git a/tools/build/src/tools/gcc.jam b/tools/build/src/tools/gcc.jam -index d2e608a22..8920e96ba 100644 +index 834f5e1bf..c753afc23 100644 --- a/tools/build/src/tools/gcc.jam +++ b/tools/build/src/tools/gcc.jam -@@ -511,7 +511,7 @@ rule compile.fortran ( targets * : sources * : properties * ) +@@ -513,7 +513,7 @@ rule compile.fortran ( targets * : sources * : properties * ) actions compile.c++ bind PCH_FILE { -- "$(CONFIG_COMMAND)" $(LANG) -ftemplate-depth-$(TEMPLATE_DEPTH) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -include"$(PCH_FILE:S=)" -I"$(INCLUDES)" -include"$(FORCE_INCLUDES)" -c -o "$(<:W)" "$(>:W)" -+ "$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -include"$(PCH_FILE:S=)" -I"$(INCLUDES)" -include"$(FORCE_INCLUDES)" -c -o "$(<:W)" "$(>:W)" +- "$(CONFIG_COMMAND)" $(LANG) -ftemplate-depth-$(TEMPLATE_DEPTH) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) $(INCLUDE-GCH)$(_)"$(PCH_FILE:S=)" $(INCLUDE-PCH)$(_)"$(PCH_FILE)" -I"$(INCLUDES)" -include$(_)"$(FORCE_INCLUDES)" -c -o "$(<)" "$(>:T)" ++ "$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) $(INCLUDE-GCH)$(_)"$(PCH_FILE:S=)" $(INCLUDE-PCH)$(_)"$(PCH_FILE)" -I"$(INCLUDES)" -include$(_)"$(FORCE_INCLUDES)" -c -o "$(<)" "$(>:T)" } actions compile.c bind PCH_FILE -@@ -521,7 +521,7 @@ actions compile.c bind PCH_FILE +@@ -523,7 +523,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) -include"$(PCH_FILE:S=)" -I"$(INCLUDES)" -include"$(FORCE_INCLUDES)" "$(>:W)" -E >"$(<:W)" -+ "$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -include"$(PCH_FILE:S=)" -I"$(INCLUDES)" -include"$(FORCE_INCLUDES)" "$(>:W)" -E >"$(<:W)" +- "$(CONFIG_COMMAND)" $(LANG) -ftemplate-depth-$(TEMPLATE_DEPTH) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) $(INCLUDE-GCH)$(_)"$(PCH_FILE:S=)" $(INCLUDE-PCH)$(_)"$(PCH_FILE)" -I"$(INCLUDES)" -include$(_)"$(FORCE_INCLUDES)" "$(>:T)" -E >"$(<)" ++ "$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) $(INCLUDE-GCH)$(_)"$(PCH_FILE:S=)" $(INCLUDE-PCH)$(_)"$(PCH_FILE)" -I"$(INCLUDES)" -include$(_)"$(FORCE_INCLUDES)" "$(>:T)" -E >"$(<)" } actions compile.c.preprocess bind PCH_FILE -@@ -624,21 +624,21 @@ actions compile.c.pch +@@ -627,22 +627,22 @@ actions compile.c.pch ### # Declare flags and action for compilation. @@ -28,32 +37,34 @@ index d2e608a22..8920e96ba 100644 -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 : -Og ; + -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 on : -Wall ; -toolset.flags gcc.compile OPTIONS all : -Wall ; -toolset.flags gcc.compile OPTIONS extra : -Wall -Wextra ; -toolset.flags gcc.compile OPTIONS pedantic : -Wall -Wextra -pedantic ; -+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 : ; -+toolset.flags gcc.compile OPTIONS on : ; -+toolset.flags gcc.compile OPTIONS full : ; -+ +-toolset.flags gcc.compile OPTIONS on : -Werror ; +toolset.flags gcc.compile OPTIONS off : ; +toolset.flags gcc.compile OPTIONS on : ; +toolset.flags gcc.compile OPTIONS all : ; +toolset.flags gcc.compile OPTIONS extra : ; +toolset.flags gcc.compile OPTIONS pedantic : ; - toolset.flags gcc.compile OPTIONS on : -Werror ; ++toolset.flags gcc.compile OPTIONS on : ; toolset.flags gcc.compile OPTIONS on : -g ; + toolset.flags gcc.compile OPTIONS on : -pg ; +-- +2.43.0 + diff --git a/0002-boost-1.78.0-no-rpath.patch b/0002-boost-1.78.0-no-rpath.patch index 1c519cd5d0dd833f9eadec849048606493cc9aa2..6f0f9d115567a079ec539d3b2b87b51cc3b8bf56 100644 --- a/0002-boost-1.78.0-no-rpath.patch +++ b/0002-boost-1.78.0-no-rpath.patch @@ -1,20 +1,31 @@ ---- boost_1_66_0/tools/build/src/tools/gcc.jam~ 2018-01-19 13:23:45.361330881 +0000 -+++ boost_1_66_0/tools/build/src/tools/gcc.jam 2018-01-19 13:23:45.362330880 +0000 -@@ -1191,7 +1191,7 @@ rule link ( targets * : sources * : prop +From 6a8ff06728b64a1121a6179d891ab0baf3b9290b Mon Sep 17 00:00:00 2001 +From: Patrick Palka +Date: Mon, 4 Dec 2023 09:27:13 -0500 +Subject: [PATCH] Adjust options to remove RPATH for Fedora package builds + +--- + tools/build/src/tools/gcc.jam | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/tools/build/src/tools/gcc.jam b/tools/build/src/tools/gcc.jam +index c753afc23..e0b627726 100644 +--- a/tools/build/src/tools/gcc.jam ++++ b/tools/build/src/tools/gcc.jam +@@ -1035,12 +1035,12 @@ rule link.dll ( targets * : sources * : properties * ) actions link bind LIBRARIES { -- "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,$(RPATH) -Wl,-rpath-link$(SPACE)-Wl,"$(RPATH_LINK)" -o "$(<)" $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS) -+ "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -o "$(<)" $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS) +- "$(CONFIG_COMMAND)" @($(<[1]:T).rsp:O=FC:<=@":>=":E=-L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,$(RPATH) -Wl,-rpath-link$(SPACE)-Wl,"$(RPATH_LINK)" -o "$(<)" $(START-GROUP) "$(>:T)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS)) ++ "$(CONFIG_COMMAND)" @($(<[1]:T).rsp:O=FC:<=@":>=":E=-L"$(LINKPATH)" -o "$(<)" $(START-GROUP) "$(>:T)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS)) } - actions link.dll bind LIBRARIES -@@ -1204,7 +1204,7 @@ rule link.dll ( targets * : sources * : - actions link.dll bind LIBRARIES { -- "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,$(RPATH) "$(.IMPLIB-COMMAND)$(<[1])" -o "$(<[-1])" $(HAVE_SONAME)-Wl,$(SONAME_OPTION)$(SPACE)-Wl,$(<[-1]:D=) -shared $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS) -+ "$(CONFIG_COMMAND)" -L"$(LINKPATH)" "$(.IMPLIB-COMMAND)$(<[1])" -o "$(<[-1])" $(HAVE_SONAME)-Wl,$(SONAME_OPTION)$(SPACE)-Wl,$(<[-1]:D=) -shared $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS) +- "$(CONFIG_COMMAND)" @($(<[1]:T).rsp:O=FC:<=@":>=":E=-L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,$(RPATH) -Wl,$(IMPLIB_OPTION:E=--out-implib),"$(<[2])" -o "$(<[1])" $(HAVE_SONAME)-Wl,$(SONAME_OPTION)$(SPACE)-Wl,"$(SONAME_PREFIX:E=)$(<[1]:D=)" $(SHARED_OPTION:E=-shared) $(START-GROUP) "$(>:T)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS)) ++ "$(CONFIG_COMMAND)" @($(<[1]:T).rsp:O=FC:<=@":>=":E=-L"$(LINKPATH)" -Wl,$(IMPLIB_OPTION:E=--out-implib),"$(<[2])" -o "$(<[1])" $(HAVE_SONAME)-Wl,$(SONAME_OPTION)$(SPACE)-Wl,"$(SONAME_PREFIX:E=)$(<[1]:D=)" $(SHARED_OPTION:E=-shared) $(START-GROUP) "$(>:T)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS)) } ### +-- +2.43.0 + diff --git a/0006-boost-1.81.0-pool-test_linking.patch b/0006-boost-1.81.0-pool-test_linking.patch deleted file mode 100644 index d06a676ef9afb108efae37238f3802d2b2dcaa38..0000000000000000000000000000000000000000 --- a/0006-boost-1.81.0-pool-test_linking.patch +++ /dev/null @@ -1,34 +0,0 @@ -diff --git a/libs/pool/test/Jamfile.v2 b/libs/pool/test/Jamfile.v2 -index 3ec77eaac..51ce406d2 100644 ---- a/libs/pool/test/Jamfile.v2 -+++ b/libs/pool/test/Jamfile.v2 -@@ -23,19 +23,19 @@ import os ; - import testing ; - - test-suite pool : -- [ run test_simple_seg_storage.cpp : : : msvc:-wd4267 ] -- [ run test_pool_alloc.cpp ] -- [ run pool_msvc_compiler_bug_test.cpp : : : msvc:-wd4512 ] -- [ run test_msvc_mem_leak_detect.cpp ] -- [ run test_bug_3349.cpp ] -- [ run test_bug_4960.cpp ] -+ [ run test_simple_seg_storage.cpp : : : msvc:-wd4267 /boost/system//boost_system ] -+ [ run test_pool_alloc.cpp : : : /boost/system//boost_system ] -+ [ run pool_msvc_compiler_bug_test.cpp : : : msvc:-wd4512 /boost/system//boost_system ] -+ [ run test_msvc_mem_leak_detect.cpp : : : /boost/system//boost_system ] -+ [ run test_bug_3349.cpp : : : /boost/system//boost_system ] -+ [ run test_bug_4960.cpp : : : /boost/system//boost_system ] - [ run test_bug_1252.cpp : : : - clang:-Wno-c++11-long-long - gcc:-Wno-long-long -- pathscale:-Wno-long-long ] -- [ run test_bug_2696.cpp ] -- [ run test_bug_5526.cpp ] -- [ run test_bug_6701.cpp ] -+ pathscale:-Wno-long-long /boost/system//boost_system ] -+ [ run test_bug_2696.cpp : : : /boost/system//boost_system ] -+ [ run test_bug_5526.cpp : : : /boost/system//boost_system ] -+ [ run test_bug_6701.cpp : : : /boost/system//boost_system ] - [ run test_threading.cpp : : : multi /boost/thread//boost_thread ] - [ compile test_poisoned_macros.cpp ] - ; diff --git a/0007-boost-1.74.0-linking.patch b/0007-boost-1.74.0-linking.patch deleted file mode 100644 index e4012db10db9bd37fed0da7c718e8503d61649e0..0000000000000000000000000000000000000000 --- a/0007-boost-1.74.0-linking.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up ./tools/build/src/tools/gcc.jam.orig ./tools/build/src/tools/gcc.jam ---- ./tools/build/src/tools/gcc.jam.orig 2020-01-24 22:59:03.119054312 +0200 -+++ ./tools/build/src/tools/gcc.jam 2020-01-24 23:01:07.875695346 +0200 -@@ -1093,7 +1093,7 @@ rule link ( targets * : sources * : prop - - actions link bind LIBRARIES - { -- "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -o "$(<)" $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS) -+ "$(CONFIG_COMMAND)" $(OPTIONS) $(USER_OPTIONS) -L"$(LINKPATH)" -o "$(<)" $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) - } - - actions link.dll bind LIBRARIES -@@ -1106,7 +1106,7 @@ rule link.dll ( targets * : sources * : - - actions link.dll bind LIBRARIES - { -- "$(CONFIG_COMMAND)" -L"$(LINKPATH)" "$(.IMPLIB-COMMAND)$(<[1])" -o "$(<[-1])" $(HAVE_SONAME)-Wl,$(SONAME_OPTION)$(SPACE)-Wl,$(<[-1]:D=) -shared $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS) -+ "$(CONFIG_COMMAND)" $(OPTIONS) $(USER_OPTIONS) -L"$(LINKPATH)" "$(.IMPLIB-COMMAND)$(<[1])" -o "$(<[-1])" $(HAVE_SONAME)-Wl,$(SONAME_OPTION)$(SPACE)-Wl,$(<[-1]:D=) -shared $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) - } - - ### diff --git a/0008-boost-1.57.0-python-libpython_dep.patch b/0008-boost-1.57.0-python-libpython_dep.patch deleted file mode 100644 index 57bfc26774eafc55894de34928b14786ed1fa389..0000000000000000000000000000000000000000 --- a/0008-boost-1.57.0-python-libpython_dep.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: boost_1_57_0/tools/build/src/tools/python.jam -=================================================================== ---- boost_1_57_0/tools/build/src/tools/python.jam (revision 50406) -+++ boost_1_57_0/tools/build/src/tools/python.jam (working copy) -@@ -994,7 +994,7 @@ - else - { - alias python_for_extensions -- : -+ : python - : $(target-requirements) - : - : $(usage-requirements) diff --git a/0009-boost-1.72.0-mpi-python-build.patch b/0009-boost-1.72.0-mpi-python-build.patch deleted file mode 100644 index f977b1321cb3d03534371d600b9e8dbdef1263db..0000000000000000000000000000000000000000 --- a/0009-boost-1.72.0-mpi-python-build.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -up ./tools/build/src/tools/python.jam.orig ./tools/build/src/tools/python.jam ---- ./tools/build/src/tools/python.jam.orig 2020-01-26 17:46:41.999427777 +0200 -+++ ./tools/build/src/tools/python.jam 2020-01-26 17:50:55.406745619 +0200 -@@ -1001,7 +1001,8 @@ local rule configure ( version ? : cmd-o - # linux). - : $(usage-requirements) - $(set-PYTHONPATH) -- $(libraries) $(dll-path) python.lib -+ # $(libraries) $(dll-path) python.lib -+ $(libraries) python.lib - ; - } - diff --git a/0011-add-loongarch64-support-for-boost-1.81.patch b/0011-add-loongarch64-support-for-boost-1.81.patch deleted file mode 100644 index 2f2cf7b6c82f8d3a632c29fdea684112ecd50c03..0000000000000000000000000000000000000000 --- a/0011-add-loongarch64-support-for-boost-1.81.patch +++ /dev/null @@ -1,85 +0,0 @@ -From c14b7c6d206fb579fa169f5d288ce1c49d391e49 Mon Sep 17 00:00:00 2001 -From: Wenlong Zhang -Date: Wed, 29 Nov 2023 07:45:19 +0000 -Subject: [PATCH] add loongarch64 support for boost 1.81 - ---- - boostcpp.jam | 5 +++-- - libs/config/checks/architecture/Jamfile.jam | 1 + - libs/config/checks/architecture/loongarch.cpp | 11 +++++++++++ - tools/build/src/engine/jam.h | 4 ++++ - 4 files changed, 19 insertions(+), 2 deletions(-) - create mode 100644 libs/config/checks/architecture/loongarch.cpp - -diff --git a/boostcpp.jam b/boostcpp.jam -index 082536e2a..7565dae80 100644 ---- a/boostcpp.jam -+++ b/boostcpp.jam -@@ -634,7 +634,7 @@ rule address-model ( ) - return @boostcpp.deduce-address-model ; - } - --local deducable-architectures = arm mips1 power riscv s390x sparc x86 combined ; -+local deducable-architectures = arm loongarch mips1 power riscv s390x sparc x86 combined ; - feature.feature deduced-architecture : $(deducable-architectures) : propagated optional composite hidden ; - for a in $(deducable-architectures) - { -@@ -645,9 +645,10 @@ rule deduce-architecture ( properties * ) - { - local result ; - local filtered = [ toolset-properties $(properties) ] ; -- local names = arm mips1 power riscv s390x sparc x86 combined ; -+ local names = arm loongarch mips1 power riscv s390x sparc x86 combined ; - local idx = [ configure.find-builds "default architecture" : $(filtered) - : /boost/architecture//arm -+ : /boost/architecture//loongarch - : /boost/architecture//mips1 - : /boost/architecture//power - : /boost/architecture//riscv -diff --git a/libs/config/checks/architecture/Jamfile.jam b/libs/config/checks/architecture/Jamfile.jam -index c3779d917..ea41afb4a 100644 ---- a/libs/config/checks/architecture/Jamfile.jam -+++ b/libs/config/checks/architecture/Jamfile.jam -@@ -18,6 +18,7 @@ obj 64 : 64.cpp ; - - obj arm : arm.cpp ; - obj combined : combined.cpp ; -+obj loongarch : loongarch.cpp ; - obj mips : mips.cpp ; - alias mips1 : mips ; # Backwards compatibility - obj power : power.cpp ; -diff --git a/libs/config/checks/architecture/loongarch.cpp b/libs/config/checks/architecture/loongarch.cpp -new file mode 100644 -index 000000000..5be8cb09b ---- /dev/null -+++ b/libs/config/checks/architecture/loongarch.cpp -@@ -0,0 +1,11 @@ -+// loongarch.cpp -+// -+// Copyright (c) 2012 Steven Watanabe -+// -+// 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) -+ -+#if !defined(__loongarch__) -+#error "Not LoongArch" -+#endif -diff --git a/tools/build/src/engine/jam.h b/tools/build/src/engine/jam.h -index b6f291865..27772284e 100644 ---- a/tools/build/src/engine/jam.h -+++ b/tools/build/src/engine/jam.h -@@ -437,6 +437,10 @@ - #define OSPLAT "OSPLAT=PARISC" - #endif - -+#ifdef __loongarch64 -+ #define OSPLAT "OSPLAT=LOONGARCH64" -+#endif -+ - #ifndef OSPLAT - #define OSPLAT "" - #endif --- -2.41.0 - diff --git a/boost-1.76.0-fix-narrowing-conversions-for-ppc.patch b/boost-1.76.0-fix-narrowing-conversions-for-ppc.patch new file mode 100644 index 0000000000000000000000000000000000000000..ce495408b50366ea52efb11dd8448261c9f2da85 --- /dev/null +++ b/boost-1.76.0-fix-narrowing-conversions-for-ppc.patch @@ -0,0 +1,32 @@ +From 0039878782516ea3313608f99f0d50e846151bc2 Mon Sep 17 00:00:00 2001 +From: Jonathan Wakely +Date: Mon, 31 Jan 2022 11:37:29 +0000 +Subject: [PATCH] Fix narrowing conversions for ppc + +These constants are too large for `long long` so are unsigned, +and then cannot be narrowed to the signed type. + +Fixes #29 +--- + .../numeric/interval/detail/ppc_rounding_control.hpp | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/include/boost/numeric/interval/detail/ppc_rounding_control.hpp b/include/boost/numeric/interval/detail/ppc_rounding_control.hpp +index 87fe8ee..99f9986 100644 +--- boost_1_76_0/boost/numeric/interval/detail/ppc_rounding_control.hpp ++++ boost_1_76_0/boost/numeric/interval/detail/ppc_rounding_control.hpp +@@ -28,10 +28,10 @@ typedef union { + double dmode; + } rounding_mode_struct; + +-static const rounding_mode_struct mode_upward = { 0xFFF8000000000002LL }; +-static const rounding_mode_struct mode_downward = { 0xFFF8000000000003LL }; +-static const rounding_mode_struct mode_to_nearest = { 0xFFF8000000000000LL }; +-static const rounding_mode_struct mode_toward_zero = { 0xFFF8000000000001LL }; ++static const rounding_mode_struct mode_upward = { (::boost::long_long_type)0xFFF8000000000002LL }; ++static const rounding_mode_struct mode_downward = { (::boost::long_long_type)0xFFF8000000000003LL }; ++static const rounding_mode_struct mode_to_nearest = { (::boost::long_long_type)0xFFF8000000000000LL }; ++static const rounding_mode_struct mode_toward_zero = { (::boost::long_long_type)0xFFF8000000000001LL }; + + struct ppc_rounding_control + { diff --git a/0005-boost-1.76.0-random-test.patch b/boost-1.76.0-random-test.patch similarity index 100% rename from 0005-boost-1.76.0-random-test.patch rename to boost-1.76.0-random-test.patch diff --git a/0010-stl-tuple-change-uarg-N-to-internal-linkage.patch b/boost-1.81-phoenix-multiple-defn.patch similarity index 32% rename from 0010-stl-tuple-change-uarg-N-to-internal-linkage.patch rename to boost-1.81-phoenix-multiple-defn.patch index 0f500a3a268c218328aadff3bdac99a4c28fee9d..6deaa403070309b5ce21e69b113553f7ae3d9b8a 100644 --- a/0010-stl-tuple-change-uarg-N-to-internal-linkage.patch +++ b/boost-1.81-phoenix-multiple-defn.patch @@ -1,34 +1,20 @@ -From 99b3bdf601dc2d69e793be070f63772e42e89cb3 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?= - -Date: Tue, 29 Nov 2022 07:34:17 +0700 -Subject: [PATCH] stl/tuple: change uarg##N to internal linkage - -8b6a9c2 (std::tuple support (Resolving #103) (#104), 2021-03-11) put -uarg##N in all translation units, which includes -boost/phoenix/stl/tuple.hpp or boost/phoenix/stl.hp, with external -linkage. Thus, we'll run into below error: - -> multiple definition of `boost::phoenix::placeholders::uarg1' - -Change it to internal linkage. ---- - boost/phoenix/stl/tuple.hpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/include/boost/phoenix/stl/tuple.hpp b/include/boost/phoenix/stl/tuple.hpp -index a83014a..d04ad16 100644 ---- a/boost/phoenix/stl/tuple.hpp -+++ b/boost/phoenix/stl/tuple.hpp -@@ -110,7 +110,7 @@ namespace boost { namespace phoenix { +--- boost_1_81_0/boost/phoenix/stl/tuple.hpp~ 2023-03-15 09:31:59.327721489 +0000 ++++ boost_1_81_0/boost/phoenix/stl/tuple.hpp 2023-03-15 09:32:02.787722445 +0000 +@@ -106,14 +106,16 @@ + tuple_detail::idx_wrap(), t); + } + ++#ifndef BOOST_PHOENIX_NO_PREDEFINED_TERMINALS + // Make unpacked argument placeholders namespace placeholders { #define BOOST_PP_LOCAL_LIMITS (1, BOOST_PHOENIX_ARG_LIMIT) #define BOOST_PP_LOCAL_MACRO(N) \ - auto uarg##N = \ -+ const auto uarg##N = \ ++ const auto uarg##N = \ boost::phoenix::get_<(N)-1>(boost::phoenix::placeholders::arg1); #include BOOST_PP_LOCAL_ITERATE() } --- -2.39.0 - ++#endif + }} // namespace boost::phoenix + + #endif // C++ 14 diff --git a/boost-1.81.0-random-test-fixes.patch b/boost-1.81.0-random-test-fixes.patch new file mode 100644 index 0000000000000000000000000000000000000000..0b493c625ef36d2913232a0324fdcfe21c9db08b --- /dev/null +++ b/boost-1.81.0-random-test-fixes.patch @@ -0,0 +1,28 @@ +diff -up boost_1_81_0/libs/random/test/multiprecision_float_test.cpp.testfix boost_1_81_0/libs/random/test/multiprecision_float_test.cpp +--- boost_1_81_0/libs/random/test/multiprecision_float_test.cpp.testfix 2023-08-29 16:07:40.127905519 -0400 ++++ boost_1_81_0/libs/random/test/multiprecision_float_test.cpp 2023-08-29 16:08:44.114856281 -0400 +@@ -77,7 +77,7 @@ typedef boost::mpl::list < + boost::random::lognormal_distribution, + boost::random::normal_distribution, + #ifndef BOOST_NO_CXX11_EXPLICIT_CONVERSION_OPERATORS +- boost::random::piecewise_constant_distribution, ++ boost::random::piecewise_constant_distribution, + boost::random::piecewise_linear_distribution, + #endif + boost::random::student_t_distribution, +diff -up boost_1_81_0/libs/random/test/multiprecision_int_test.cpp.testfix boost_1_81_0/libs/random/test/multiprecision_int_test.cpp +--- boost_1_81_0/libs/random/test/multiprecision_int_test.cpp.testfix 2023-08-29 16:06:58.543287627 -0400 ++++ boost_1_81_0/libs/random/test/multiprecision_int_test.cpp 2023-08-29 16:07:26.788707316 -0400 +@@ -216,7 +216,11 @@ BOOST_AUTO_TEST_CASE_TEMPLATE(discrete_d + ss >> d2; + BOOST_CHECK(d == d2); + +- boost::random::independent_bits_engine::digits, boost::multiprecision::uint1024_t > big_random; ++ // ++ // The number of digits in the independent_bits_engine must be low enough that we don't overflow ++ // when converting to a double (see other_distributions declared above). ++ // ++ boost::random::independent_bits_engine::digits - 2, boost::multiprecision::uint1024_t > big_random; + for(unsigned i = 0; i < 200; ++i) + { + result_type r = d(big_random); diff --git a/boost-1.83-regex-test-fixes.patch b/boost-1.83-regex-test-fixes.patch new file mode 100644 index 0000000000000000000000000000000000000000..b8745a42f78d52edc7cb74f2437adadff6253426 --- /dev/null +++ b/boost-1.83-regex-test-fixes.patch @@ -0,0 +1,37 @@ +From 9c974cf22c53315d90a7c1bef7cea9b4f552d088 Mon Sep 17 00:00:00 2001 +From: Patrick Palka +Date: Wed, 6 Dec 2023 14:21:13 -0500 +Subject: [PATCH] Work around spurious Boost.Regex test failures + +--- + libs/regex/example/timer/regex_timer.cpp | 1 + + libs/regex/test/static_mutex/static_mutex_test.cpp | 1 + + 2 files changed, 2 insertions(+) + +diff --git a/libs/regex/example/timer/regex_timer.cpp b/libs/regex/example/timer/regex_timer.cpp +index d121b70f1..bee544908 100644 +--- a/libs/regex/example/timer/regex_timer.cpp ++++ b/libs/regex/example/timer/regex_timer.cpp +@@ -13,6 +13,7 @@ + #pragma warning(disable: 4996 4127) + #endif + ++#define BOOST_TIMER_ENABLE_DEPRECATED + #include + #include + #include +diff --git a/libs/regex/test/static_mutex/static_mutex_test.cpp b/libs/regex/test/static_mutex/static_mutex_test.cpp +index be7500bd3..935e74525 100644 +--- a/libs/regex/test/static_mutex/static_mutex_test.cpp ++++ b/libs/regex/test/static_mutex/static_mutex_test.cpp +@@ -16,6 +16,7 @@ + * DESCRIPTION: test program for boost::static_mutex. + */ + ++#define BOOST_TIMER_ENABLE_DEPRECATED + #include + #include + #include +-- +2.43.0 + diff --git a/boost.spec b/boost.spec index b4fa99cd0e06ce6085aaa7e51327d64b431cab90..eff96922ae533d8eb75cf3f1302b843733e34c6c 100644 --- a/boost.spec +++ b/boost.spec @@ -1,4 +1,4 @@ -%define anolis_release 8 +%define anolis_release 1 %global boost_docdir __tmp_docdir %global boost_examplesdir __tmp_examplesdir @@ -13,7 +13,7 @@ %bcond_without openmpi %endif -%ifnarch x86_64 aarch64 loongarch64 +%ifnarch x86_64 aarch64 loongarch64 riscv64 %bcond_with context %else %bcond_without context @@ -30,14 +30,14 @@ %bcond_with docs_generated Name: boost -Version: 1.81.0 +Version: 1.83.0 Release: %{anolis_release}%{dist} -License: Boost and MIT and Python +License: BSL-1.0 AND MIT AND Python-2.0.1 Summary: The free peer-reviewed portable C++ source libraries URL: http://www.boost.org # Replace each . with _ in %%{version} %define version_enc %(echo "%{version}" | tr "." "_") -Source0: https://boostorg.jfrog.io/artifactory/main/release/%{version}/source/%{name}_%{version_enc}.tar.bz2 +Source0: https://archives.boost.io/release/%{version}/source/%{name}_%{version_enc}.tar.bz2 Source1: libboost_thread.so Source2: b2.1 @@ -47,22 +47,16 @@ Patch0002: 0002-boost-1.78.0-no-rpath.patch Patch0003: 0003-boost-1.73.0-cmakedir.patch Patch0004: 0004-boost-1.78.0-b2-build-flags.patch # https://github.com/boostorg/random/issues/82 -Patch0005: 0005-boost-1.76.0-random-test.patch -# https://svn.boost.org/trac/boost/ticket/9038 -Patch0006: 0006-boost-1.81.0-pool-test_linking.patch -# Fix library overlinking -Patch0007: 0007-boost-1.74.0-linking.patch -# Fix linking with py3 -Patch0008: 0008-boost-1.57.0-python-libpython_dep.patch -# Hack to fix mpi build -Patch0009: 0009-boost-1.72.0-mpi-python-build.patch -# Fixes freeorion build and maybe some more +Patch0005: boost-1.76.0-random-test.patch # https://github.com/boostorg/phoenix/issues/111 -# https://github.com/boostorg/phoenix/pull/112 -Patch0010: 0010-stl-tuple-change-uarg-N-to-internal-linkage.patch -Patch0011: 0011-add-loongarch64-support-for-boost-1.81.patch - -BuildRequires: gcc-c++ python3 m4 lua-posix bison zlib-devel libicu-devel +# https://github.com/boostorg/phoenix/issues/115 +Patch0006: boost-1.81-phoenix-multiple-defn.patch +# https://github.com/boostorg/random/commit/7561690135c67ecf88c2133bad7680ebd2665c36 +# https://github.com/boostorg/random/commit/4239d93dad32a11e4c3829050f8070d456266133 +Patch0007: boost-1.81.0-random-test-fixes.patch +Patch0008: boost-1.83-regex-test-fixes.patch + +BuildRequires: gcc-c++ m4 bison zlib-devel libicu-devel BuildRequires: libstdc++-devel bzip2-devel xz-devel libzstd-devel %if %{with python3} BuildRequires: python3-devel python3-numpy @@ -86,6 +80,7 @@ Requires: %{name}-fiber = %{version}-%{release} Requires: %{name}-filesystem = %{version}-%{release} Requires: %{name}-graph = %{version}-%{release} Requires: %{name}-iostreams = %{version}-%{release} +Requires: %{name}-json = %{version}-%{release} Requires: %{name}-locale = %{version}-%{release} Requires: %{name}-log = %{version}-%{release} Requires: %{name}-math = %{version}-%{release} @@ -103,7 +98,6 @@ Requires: %{name}-test = %{version}-%{release} Requires: %{name}-thread = %{version}-%{release} Requires: %{name}-timer = %{version}-%{release} Requires: %{name}-type_erasure = %{version}-%{release} -Requires: %{name}-url = %{version}-%{release} Requires: %{name}-wave = %{version}-%{release} %if %{with python3} @@ -133,11 +127,9 @@ Requires: libquadmath-devel %if %{with python3} # Require boost-numpy3 here, because main boost metapackage only Recommends: it Requires: %{name}-numpy3 = %{version}-%{release} -Obsoletes: %{name}-python3-devel < 1.69.0 +# Old Provides: for compatibility with packages that still require it. Provides: %{name}-python3-devel = %{version}-%{release} %endif -Obsoletes: boost-nowide-devel <= 0.20190814 -Provides: boost-nowide-devel = %{version} %description devel Headers and shared object symbolic links for the Boost C++ libraries. @@ -279,9 +271,9 @@ API over the MPICH implementation of MPI. %package mpich-devel Summary: Shared library symbolic links for Boost.MPI -Requires: %{name}-devel%{?_isa} = %{version}-%{release} -Requires: %{name}-mpich%{?_isa} = %{version}-%{release} -Requires: %{name}-graph-mpich%{?_isa} = %{version}-%{release} +Requires: %{name}-devel = %{version}-%{release} +Requires: %{name}-mpich = %{version}-%{release} +Requires: %{name}-graph-mpich = %{version}-%{release} %description mpich-devel @@ -567,6 +559,7 @@ Static Boost C++ libraries. %package examples Summary: Source examples for the Boost C++ libraries +BuildArch: noarch Requires: %{name}-devel = %{version}-%{release} %description examples @@ -596,8 +589,6 @@ Tools for working with Boost documentation in BoostBook or QuickBook format. %package b2 Summary: A low-level build tool -Obsoletes: boost-jam < 1.73.0 -Provides: boost-jam = %{version} %description b2 B2 (formerly Boost.Jam) is the low-level build engine tool for Boost.Build. @@ -614,6 +605,7 @@ The %{name}-doc package contains documentation files for %{name}. %prep %autosetup -p1 -n %{name}_%{version_enc} +find ./boost -name '*.hpp' -perm /111 | xargs --no-run-if-empty chmod a-x %build %set_build_flags @@ -649,7 +641,7 @@ EOF echo ============================= build serial ================== ./b2 -d+2 -q %{?_smp_mflags} \ - --build-dir=serial \ + --without-mpi --without-graph_parallel --build-dir=serial \ %if !%{with context} --without-context --without-coroutine \ --without-fiber \ @@ -745,12 +737,14 @@ mv %{buildroot}${MPI_HOME}/lib/boost-python%{python3_version}/mpi.so \ %{buildroot}%{python3_sitearch}/openmpi/boost/ %endif +# Using 'b2 stage' does not fix the paths in these files, so do it manually +sed -i -e 's|get_filename_component(_BOOST_INCLUDEDIR "${_BOOST_CMAKEDIR}/.*"|get_filename_component(_BOOST_INCLUDEDIR "${_BOOST_CMAKEDIR}/../../../../include"|' %{buildroot}${MPI_HOME}/lib/cmake/*/*-config.cmake + # Remove generic parts of boost that were built for dependencies. rm -f %{buildroot}${MPI_HOME}/lib/libboost_{python,{w,}serialization}* rm -f %{buildroot}${MPI_HOME}/lib/libboost_numpy* - -# Remove cmake files (some of these are duplicates of the generic bits anyway). -rm -r %{buildroot}${MPI_HOME}/lib/cmake +rm -rf %{buildroot}${MPI_HOME}/lib/cmake/boost_{python,{w,}serialization}* +rm -rf %{buildroot}${MPI_HOME}/lib/cmake/boost_numpy* %{_openmpi_unload} export PATH=/bin${PATH:+:}$PATH @@ -774,12 +768,14 @@ mv %{buildroot}${MPI_HOME}/lib/boost-python%{python3_version}/mpi.so \ %{buildroot}%{python3_sitearch}/mpich/boost/ %endif +# Using 'b2 stage' does not fix the paths in these files, so do it manually +sed -i -e 's|get_filename_component(_BOOST_INCLUDEDIR "${_BOOST_CMAKEDIR}/.*"|get_filename_component(_BOOST_INCLUDEDIR "${_BOOST_CMAKEDIR}/../../../../include"|' %{buildroot}${MPI_HOME}/lib/cmake/*/*-config.cmake + # Remove generic parts of boost that were built for dependencies. rm -f %{buildroot}${MPI_HOME}/lib/libboost_{python,{w,}serialization}* rm -f %{buildroot}${MPI_HOME}/lib/libboost_numpy* - -# Remove cmake files (some of these are duplicates of the generic bits anyway). -rm -r %{buildroot}${MPI_HOME}/lib/cmake +rm -rf %{buildroot}${MPI_HOME}/lib/cmake/boost_{python,{w,}serialization}* +rm -rf %{buildroot}${MPI_HOME}/lib/cmake/boost_numpy* %{_mpich_unload} export PATH=/bin${PATH:+:}$PATH @@ -787,7 +783,7 @@ export PATH=/bin${PATH:+:}$PATH echo ============================= install serial ================== ./b2 -d+2 -q %{?_smp_mflags} \ - --build-dir=serial \ + --without-mpi --without-graph_parallel --build-dir=serial \ %if !%{with context} --without-context --without-coroutine \ --without-fiber \ @@ -806,16 +802,26 @@ echo ============================= install serial ================== rm -f %{buildroot}%{_libdir}/libboost_thread.so install -p -m 644 $(basename %{SOURCE1}) %{buildroot}%{_libdir}/ -# Remove cmake files until we know somebody wants them. -rm -r %{buildroot}/%{_libdir}/cmake - echo ============================= install Boost.Build ================== (cd tools/build ./b2 --prefix=%{buildroot}%{_prefix} install + + # Somewhere along the line the boost-build install directory became b2 + # which seems not so great for our purposes, fix that up + mv %{buildroot}%{_datadir}/b2 %{buildroot}%{_datadir}/boost-build + + # but make a symlink so b2 knows where to look + pushd %{buildroot}%{_datadir}/ + ln -s ./boost-build b2 + popd + # Fix some permissions - chmod +x %{buildroot}%{_datadir}/b2/src/tools/doxproc.py + chmod +x %{buildroot}%{_datadir}/boost-build/src/tools/doxproc.py # Fix shebang using unversioned python - sed -i '1s@^#!/usr/bin.python$@&3@' %{buildroot}%{_datadir}/b2/src/tools/doxproc.py + sed -i '1s@^#!/usr/bin.python$@&3@' %{buildroot}%{_datadir}/boost-build/src/tools/doxproc.py + # Empty file + rm %{buildroot}%{_datadir}/boost-build/src/tools/doxygen/windows-paths-check.hpp + rm -f %{buildroot}%{_datadir}/boost-build/src/tools/doxygen/windows-paths-check.hpp # Install the manual page %{__install} -p -m 644 %{SOURCE2} -D %{buildroot}%{_mandir}/man1/b2.1 ) @@ -928,6 +934,7 @@ fi %files devel %license LICENSE_1_0.txt %{_includedir}/%{name} +%{_libdir}/cmake %{_libdir}/libboost_atomic.so %{_libdir}/libboost_chrono.so %{_libdir}/libboost_container.so @@ -1020,6 +1027,7 @@ fi %files openmpi-devel %license LICENSE_1_0.txt +%{_libdir}/openmpi/lib/cmake %{_libdir}/openmpi/lib/libboost_mpi.so %{_libdir}/openmpi/lib/libboost_graph_parallel.so %{abidir}/libboost_graph_parallel.dump @@ -1053,6 +1061,7 @@ fi %files mpich-devel %license LICENSE_1_0.txt +%{_libdir}/mpich/lib/cmake %{_libdir}/mpich/lib/libboost_mpi.so %{_libdir}/mpich/lib/libboost_graph_parallel.so @@ -1232,6 +1241,7 @@ fi %files build %license LICENSE_1_0.txt +%{_datadir}/%{name}-build/ %{_datadir}/b2 %files doctools @@ -1250,16 +1260,31 @@ fi %doc %{boost_docdir}/* %changelog +* Wed Feb 26 2025 Zhao Hang - 1.83.0-1 +- Update to 1.83.0-1 from 1.81.0-8 +- Remove unused patches +- Migrated to SPDX license +- Drop patch for accumulators library that has since been applied upstream. + apply upstream fixes for failing random tests + Fix spurious Boost.Regex test failures. + [Patches cherry-pick from c10s. Original changelog: + - Rebase to 1.83.0 + See https://fedoraproject.org/wiki/Changes/F40Boost183 + Drop patch for accumulators library that has since been applied upstream. + Fix spurious Boost.Regex test failures. + - apply upstream fixes for failing random tests +] + * Sun Apr 07 2024 Zhao Hang - 1.81.0-8 - Rebuild for loongarch64 * Mon Mar 11 2024 Bo Ren - 1.81.0-7 - Rebuild with python3.11 -* Wed Nov 29 7 2023 Wenlong Zhang - 1.81.0-6 +* Wed Nov 29 2023 Wenlong Zhang - 1.81.0-6 - add loongarch64 support for boost 1.81 -* Mon Nov 13 7 2023 Wenlong Zhang - 1.81.0-5 +* Mon Nov 13 2023 Wenlong Zhang - 1.81.0-5 - Remove useless patches for loongarch * Tue Nov 7 2023 Wenlong Zhang - 1.81.0-4 diff --git a/boost_1_81_0.tar.bz2 b/boost_1_81_0.tar.bz2 deleted file mode 100644 index 15dda77a73711c9142825d7e1438dacfec2207e3..0000000000000000000000000000000000000000 Binary files a/boost_1_81_0.tar.bz2 and /dev/null differ diff --git a/download b/download new file mode 100644 index 0000000000000000000000000000000000000000..a195e4d25da228976c4af41b5f1bdb0909bdf7b2 --- /dev/null +++ b/download @@ -0,0 +1 @@ +406f0b870182b4eb17a23a9d8fce967d boost_1_83_0.tar.bz2