From 0ccf907992a0e3560897ac300ee6b1352d969c42 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Tue, 20 Aug 2019 09:04:41 +0000 Subject: meson: backport fix for builds with -Werror=return-type Signed-off-by: Martin Jansa Signed-off-by: Armin Kuster --- meta/recipes-devtools/meson/meson.inc | 1 + ...-return-statements-that-are-seen-with-Wer.patch | 84 ++++++++++++++++++++++ 2 files changed, 85 insertions(+) create mode 100644 meta/recipes-devtools/meson/meson/0001-Fix-missing-return-statements-that-are-seen-with-Wer.patch diff --git a/meta/recipes-devtools/meson/meson.inc b/meta/recipes-devtools/meson/meson.inc index 2d18f72c0c..bfe9851e94 100644 --- a/meta/recipes-devtools/meson/meson.inc +++ b/meta/recipes-devtools/meson/meson.inc @@ -16,6 +16,7 @@ SRC_URI = "https://github.com/mesonbuild/meson/releases/download/${PV}/meson-${P file://cross-prop-default.patch \ file://many-cross.patch \ file://cross-libdir.patch \ + file://0001-Fix-missing-return-statements-that-are-seen-with-Wer.patch \ " SRC_URI[sha256sum] = "ef9f14326ec1e30d3ba1a26df0f92826ede5a79255ad723af78a2691c37109fd" SRC_URI[md5sum] = "0267b0871266056184c484792572c682" diff --git a/meta/recipes-devtools/meson/meson/0001-Fix-missing-return-statements-that-are-seen-with-Wer.patch b/meta/recipes-devtools/meson/meson/0001-Fix-missing-return-statements-that-are-seen-with-Wer.patch new file mode 100644 index 0000000000..1f22755e17 --- /dev/null +++ b/meta/recipes-devtools/meson/meson/0001-Fix-missing-return-statements-that-are-seen-with-Wer.patch @@ -0,0 +1,84 @@ +From 7e83cf1edac2a57c08ebb1ce7f21c2a539d5c300 Mon Sep 17 00:00:00 2001 +From: Martin Liska +Date: Mon, 15 Jul 2019 10:06:17 +0200 +Subject: [PATCH] Fix missing return statements that are seen with + -Werror=return-type. + +Error example: + +Code: + + #include + int main () { + /* If it's not defined as a macro, try to use as a symbol */ + #ifndef LC_MESSAGES + LC_MESSAGES; + #endif + } +Compiler stdout: + +Compiler stderr: + In file included from /usr/include/locale.h:25, + from /tmp/tmpep_i4iwg/testfile.c:2: +/usr/include/features.h:382:4: warning: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Wcpp] + 382 | # warning _FORTIFY_SOURCE requires compiling with optimization (-O) + | ^~~~~~~ +/tmp/tmpep_i4iwg/testfile.c: In function 'main': +/tmp/tmpep_i4iwg/testfile.c:8:9: error: control reaches end of non-void function [-Werror=return-type] + 8 | } + | ^ +cc1: some warnings being treated as errors + +Upstream-Status: Backport +Signed-off-by: Martin Jansa +--- + mesonbuild/compilers/c.py | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/mesonbuild/compilers/c.py b/mesonbuild/compilers/c.py +index b0096459..69cf84a4 100644 +--- a/mesonbuild/compilers/c.py ++++ b/mesonbuild/compilers/c.py +@@ -387,6 +387,7 @@ class CCompiler(Compiler): + #ifndef {symbol} + {symbol}; + #endif ++ return 0; + }}''' + return self.compiles(t.format(**fargs), env, extra_args=extra_args, + dependencies=dependencies) +@@ -563,6 +564,7 @@ class CCompiler(Compiler): + {prefix} + int main(int argc, char **argv) {{ + {type} something; ++ return 0; + }}''' + if not self.compiles(t.format(**fargs), env, extra_args=extra_args, + dependencies=dependencies): +@@ -598,6 +600,7 @@ class CCompiler(Compiler): + {prefix} + int main(int argc, char **argv) {{ + {type} something; ++ return 0; + }}''' + if not self.compiles(t.format(**fargs), env, extra_args=extra_args, + dependencies=dependencies): +@@ -672,6 +675,7 @@ class CCompiler(Compiler): + #include + int main(int argc, char *argv[]) {{ + printf ("{fmt}", {cast} {f}()); ++ return 0; + }}'''.format(**fargs) + res = self.run(code, env, extra_args=extra_args, dependencies=dependencies) + if not res.compiled: +@@ -823,6 +827,7 @@ class CCompiler(Compiler): + #error "No definition for __builtin_{func} found in the prefix" + #endif + #endif ++ return 0; + }}''' + return self.links(t.format(**fargs), env, extra_args=extra_args, + dependencies=dependencies) +-- +2.17.1 + -- cgit 1.2.3-korg