diff --git a/boost-phoenix-revert-std-tuple-support.patch b/boost-phoenix-revert-std-tuple-support.patch new file mode 100644 index 0000000..3e3eae5 --- /dev/null +++ b/boost-phoenix-revert-std-tuple-support.patch @@ -0,0 +1,31 @@ +From cc9bc2387fe19d6cb130460defe52ee8ecefe968 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.hpp, with external +linkage. Thus, we'll run into below error: + +> multiple definition of `boost::phoenix::placeholders::uarg1' + +Change it to internal linkage. +--- + include/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 a83014ac..d04ad16e 100644 +--- a/boost/phoenix/stl/tuple.hpp ++++ b/boost/phoenix/stl/tuple.hpp +@@ -110,7 +110,7 @@ namespace boost { namespace phoenix { + 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 = \ + boost::phoenix::get_<(N)-1>(boost::phoenix::placeholders::arg1); + #include BOOST_PP_LOCAL_ITERATE() + } diff --git a/boost.changes b/boost.changes index 139d9c6..4909749 100644 --- a/boost.changes +++ b/boost.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +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 diff --git a/boost.spec b/boost.spec index 281a566..6562e9e 100644 --- a/boost.spec +++ b/boost.spec @@ -1,7 +1,7 @@ # # spec file # -# Copyright (c) 2022 SUSE LLC +# 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 @@ -253,6 +253,8 @@ Source101: symbol_diff.sh Source102: README.boost-devel Patch1: boost-thread.patch Patch2: boost-no_type_punning.patch +# https://github.com/boostorg/phoenix/pull/112 +Patch3: boost-phoenix-revert-std-tuple-support.patch Patch4: boost-pool_check_overflow.patch Patch5: boost-strict_aliasing.patch Patch6: boost-use_std_xml_catalog.patch @@ -1263,6 +1265,7 @@ tasks. find -type f ! \( -name \*.sh -o -name \*.py -o -name \*.pl \) -exec chmod -x {} + %patch1 -p1 %patch2 +%patch3 -p1 %patch4 %patch5 %patch6 -p1