summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeter Kjellerstedt <peter.kjellerstedt@axis.com>2024-12-13 18:31:17 +0100
committerArmin Kuster <akuster808@gmail.com>2025-01-16 09:17:32 -0500
commit8dc3cdccb633a8570863604f5caadb84db029901 (patch)
treef55a5d00a85503dc5953ea95dd269045edd224f7
parent5d54a52fbeb69dba7b8ae11db98af4813951fa61 (diff)
downloadmeta-openembedded-8dc3cdccb633a8570863604f5caadb84db029901.tar.gz
abseil-cpp: Do not leak -Wnon-virtual-dtor into the .pc files
The -Wnon-virtual-dtor flag was unintentionally added to the .pc files, which causes problems when abseil is used by C code: cc1: error: command-line option '-Wnon-virtual-dtor' is valid for C++/ObjC++ but not for C [-Werror] Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Armin Kuster <akuster808@gmail.com>
-rw-r--r--meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0005-Don-t-match-Wnon-virtual-dtor-in-the-flags-are-neede.patch30
-rw-r--r--meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20240722.0.bb1
2 files changed, 31 insertions, 0 deletions
diff --git a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0005-Don-t-match-Wnon-virtual-dtor-in-the-flags-are-neede.patch b/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0005-Don-t-match-Wnon-virtual-dtor-in-the-flags-are-neede.patch
new file mode 100644
index 0000000000..9a4fc0b43f
--- /dev/null
+++ b/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp/0005-Don-t-match-Wnon-virtual-dtor-in-the-flags-are-neede.patch
@@ -0,0 +1,30 @@
1From 9cb5e5d15c142e5cc43a2c1db87c8e4e5b6d38a5 Mon Sep 17 00:00:00 2001
2From: Derek Mauro <dmauro@google.com>
3Date: Mon, 5 Aug 2024 07:35:05 -0700
4Subject: [PATCH] Don't match -Wnon-virtual-dtor in the "flags are needed to
5 suppress warnings in headers". It should fall through to the "don't impose
6 our warnings on others" case. Do this by matching on "-Wno-*" instead of
7 "-Wno*".
8
9Fixes #1737
10
11PiperOrigin-RevId: 659548798
12Change-Id: I49d7ba7ddcd7be30f946fca90ba9be467181e854
13Upstream-Status: Backport [https://github.com/abseil/abseil-cpp/commit/9cb5e5d15c142e5cc43a2c1db87c8e4e5b6d38a5]
14---
15 CMake/AbseilHelpers.cmake | 2 +-
16 1 file changed, 1 insertion(+), 1 deletion(-)
17
18diff --git a/CMake/AbseilHelpers.cmake b/CMake/AbseilHelpers.cmake
19index b177e590..3c4c92fe 100644
20--- a/CMake/AbseilHelpers.cmake
21+++ b/CMake/AbseilHelpers.cmake
22@@ -195,7 +195,7 @@ function(absl_cc_library)
23 # specified platform. Filter both of them out before the successor
24 # reaches the "^-m" filter.
25 set(skip_next_cflag ON)
26- elseif(${cflag} MATCHES "^(-Wno|/wd)")
27+ elseif(${cflag} MATCHES "^(-Wno-|/wd)")
28 # These flags are needed to suppress warnings that might fire in our headers.
29 set(PC_CFLAGS "${PC_CFLAGS} ${cflag}")
30 elseif(${cflag} MATCHES "^(-W|/w[1234eo])")
diff --git a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20240722.0.bb b/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20240722.0.bb
index f44a5d9082..d9634b2b04 100644
--- a/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20240722.0.bb
+++ b/meta-oe/recipes-devtools/abseil-cpp/abseil-cpp_20240722.0.bb
@@ -14,6 +14,7 @@ SRC_URI = "git://github.com/abseil/abseil-cpp;branch=${BRANCH};protocol=https \
14 file://0002-Remove-maes-option-from-cross-compilation.patch \ 14 file://0002-Remove-maes-option-from-cross-compilation.patch \
15 file://0003-Remove-neon-option-from-cross-compilation.patch \ 15 file://0003-Remove-neon-option-from-cross-compilation.patch \
16 file://0004-abseil-ppc-fixes.patch \ 16 file://0004-abseil-ppc-fixes.patch \
17 file://0005-Don-t-match-Wnon-virtual-dtor-in-the-flags-are-neede.patch \
17 " 18 "
18 19
19S = "${WORKDIR}/git" 20S = "${WORKDIR}/git"