summaryrefslogtreecommitdiff
path: root/net-irc/quassel/files/quassel-0.14.0-cxxflags.patch
blob: 119261f789afabc6a46ca940c32a1f4923f021a9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
From b1eff3d32b2a18c52a8f30632746956a17089204 Mon Sep 17 00:00:00 2001
From: Mike Gilbert <floppym@gentoo.org>
Date: Sat, 8 Jan 2022 13:26:05 -0500
Subject: [PATCH] cmake: avoid de-duplication of user's CXXFLAGS

Use the "SHELL:" prefix behavior introduced in cmake 3.12 to avoid the
option de-duplication behavior of add_compile_options().

Bug: https://bugs.gentoo.org/830738
---
 cmake/QuasselMacros.cmake | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/cmake/QuasselMacros.cmake b/cmake/QuasselMacros.cmake
index 3f9f09269..9ba0003a8 100644
--- a/cmake/QuasselMacros.cmake
+++ b/cmake/QuasselMacros.cmake
@@ -410,8 +410,12 @@ endfunction()
 function(process_cmake_cxx_flags)
     string(TOUPPER ${CMAKE_BUILD_TYPE} upper_build_type)
     set(cxx_flags "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_${upper_build_type}}")
-    separate_arguments(sep_cxx_flags UNIX_COMMAND ${cxx_flags})
-    add_compile_options(${sep_cxx_flags})
+    if(CMAKE_VERSION VERSION_LESS 3.12)
+        separate_arguments(sep_cxx_flags UNIX_COMMAND ${cxx_flags})
+        add_compile_options(${sep_cxx_flags})
+    else()
+        add_compile_options("SHELL:${cxx_flags}")
+    endif()
     set(CMAKE_CXX_FLAGS "" PARENT_SCOPE)
     set(CMAKE_CXX_FLAGS_${upper_build_type} "" PARENT_SCOPE)
 endfunction()