From 40d49ab001e31aa1a6decd83bc0f4f3895672dca Mon Sep 17 00:00:00 2001 From: Jan Palus Date: Sat, 18 Feb 2023 15:51:40 +0100 Subject: [PATCH] fix multiple definitions of uarg1; rel 2 see: https://github.com/boostorg/phoenix/issues/111 fix from: https://github.com/boostorg/phoenix/pull/112 --- boost.spec | 4 +++- uarg-def.patch | 31 +++++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+), 1 deletion(-) create mode 100644 uarg-def.patch diff --git a/boost.spec b/boost.spec index 569f134..47a50c5 100644 --- a/boost.spec +++ b/boost.spec @@ -14,7 +14,7 @@ Summary: The Boost C++ Libraries Summary(pl.UTF-8): Biblioteki C++ "Boost" Name: boost Version: 1.81.0 -Release: 1 +Release: 2 License: Boost Software License and others Group: Libraries Source0: https://boostorg.jfrog.io/artifactory/main/release/%{version}/source/%{name}_%{fver}.tar.bz2 @@ -22,6 +22,7 @@ Source0: https://boostorg.jfrog.io/artifactory/main/release/%{version}/source/%{ Patch0: %{name}-link.patch Patch1: %{name}-clean-gcc-flags.patch Patch2: %{name}-fallthrough.patch +Patch3: uarg-def.patch # FC Patches: Patch201: %{name}-python-abi_letters.patch # https://svn.boost.org/trac/boost/ticket/5637 @@ -511,6 +512,7 @@ Dokumentacja dla biblioteki Boost C++. %patch0 -p1 %patch1 -p1 %patch2 -p1 +%patch3 -p1 %patch201 -p1 %patch203 -p0 diff --git a/uarg-def.patch b/uarg-def.patch new file mode 100644 index 0000000..41a7c08 --- /dev/null +++ b/uarg-def.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() + } -- 2.44.0