aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-devtools
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2024-02-01 18:51:17 -0800
committerKhem Raj <raj.khem@gmail.com>2024-02-01 19:02:38 -0800
commitb239853fd3bdcdc58a2a862a86fab92ca06d68b8 (patch)
treedc219820d9288dc5a170a16317b90affd0b07c3f /meta-oe/recipes-devtools
parentb4d8d8626efac1e93749c7fd778e241716cf9c4f (diff)
downloadmeta-openembedded-b239853fd3bdcdc58a2a862a86fab92ca06d68b8.tar.gz
flatcc: Fix build warnings found with clang-18
Fix what we can, and also disable warning-as-error as some compilers can be quite ambitious. Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe/recipes-devtools')
-rw-r--r--meta-oe/recipes-devtools/flatcc/flatcc/0001-Check-for-C-standard-version-23-for-__fallthrough__.patch31
-rw-r--r--meta-oe/recipes-devtools/flatcc/flatcc_git.bb2
2 files changed, 33 insertions, 0 deletions
diff --git a/meta-oe/recipes-devtools/flatcc/flatcc/0001-Check-for-C-standard-version-23-for-__fallthrough__.patch b/meta-oe/recipes-devtools/flatcc/flatcc/0001-Check-for-C-standard-version-23-for-__fallthrough__.patch
new file mode 100644
index 0000000000..c9ff55a167
--- /dev/null
+++ b/meta-oe/recipes-devtools/flatcc/flatcc/0001-Check-for-C-standard-version-23-for-__fallthrough__.patch
@@ -0,0 +1,31 @@
+From 7c199e3b191a6f714694035f1eba40112e71675c Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 1 Feb 2024 18:41:51 -0800
+Subject: [PATCH] Check for C standard version >= 23 for [[__fallthrough__]]
+
+This avoids warnings with clang-18+ e.g.
+
+pprintint.h:256:6: error: [[]] attributes are a C23 extension [-Werror,-Wc23-extensions]
+
+Upstream-Status: Submitted [https://github.com/dvidelabs/flatcc/pull/273]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ include/flatcc/portable/pattributes.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/include/flatcc/portable/pattributes.h b/include/flatcc/portable/pattributes.h
+index 9240fa3..dd4918a 100644
+--- a/include/flatcc/portable/pattributes.h
++++ b/include/flatcc/portable/pattributes.h
+@@ -57,7 +57,7 @@ extern "C" {
+
+
+ /* https://en.cppreference.com/w/c/language/attributes/fallthrough */
+-#if PORTABLE_HAS_C_ATTRIBUTE(__fallthrough__)
++#if PORTABLE_HAS_C_ATTRIBUTE(__fallthrough__) && defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L
+ # define pattribute_fallthrough [[__fallthrough__]]
+ #elif PORTABLE_HAS_ATTRIBUTE(__fallthrough__)
+ # define pattribute_fallthrough __attribute__((__fallthrough__))
+--
+2.43.0
+
diff --git a/meta-oe/recipes-devtools/flatcc/flatcc_git.bb b/meta-oe/recipes-devtools/flatcc/flatcc_git.bb
index 660a44c5a5..161c4107b5 100644
--- a/meta-oe/recipes-devtools/flatcc/flatcc_git.bb
+++ b/meta-oe/recipes-devtools/flatcc/flatcc_git.bb
@@ -10,6 +10,7 @@ PV = "0.6.2+gitr${SRCPV}"
SRC_URI = " \
git://github.com/dvidelabs/flatcc.git;protocol=https;branch=master \
+ file://0001-Check-for-C-standard-version-23-for-__fallthrough__.patch \
"
SRCREV = "1653ec964730ec7d9892a08a1695ada6d20f5196"
@@ -22,6 +23,7 @@ inherit cmake
EXTRA_OECMAKE += " \
-DFLATCC_INSTALL=On \
-DFLATCC_TEST=Off \
+ -DFLATCC_ALLOW_WERROR=Off \
"
BBCLASSEXTEND = "native nativesdk"