This needs to be reported upstream and the ticket linked (ideally,
develop a patch to fix the issue). The tweak needs to be :class-native
only.

Alex

On Thu, 20 Jul 2023 at 15:37, Rouven Czerwinski
<[email protected]> wrote:
>
> From: Rouven Czerwinski <[email protected]>
>
> Disable -Werror using OECMAKE_C_FLAGS on x86-64. This ensures that json-c can
> build on newer distributions where the host compiler is new enough to treat
> implicit fallthrough warnings as errors:
>   | NOTE: VERBOSE=1 cmake --build 
> /…/work/x86_64-linux/json-c-native/0.15-r0/build --target all --
>   | [1/34] 
> /…/work/x86_64-linux/json-c-native/0.15-r0/recipe-sysroot-native/usr/bin/ice/gcc
>  -D_GNU_SOURCE -Djson_c_EXPORTS 
> -I/…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15 
> -I/…/work/x86_64-linux/json-c-native/0.15-r0/build 
> -isystem/…/work/x86_64-linux/j
>   son-c-native/0.15-r0/recipe-sysroot-native/usr/include -O2 -pipe 
> -ffunction-sections -fdata-sections -Werror -Wall -Wcast-qual 
> -Wno-error=deprecated-declarations -Wextra -Wwrite-strings 
> -Wno-unused-parameter -Wstrict-prototypes -g -fPIC -D_REENTRANT -MD -MT 
> CMakeFiles/json-c.dir/linkhash.c.o -MF CMakeFiles/json-c.dir/linkhash.c.o.d 
> -o CMakeFiles/json-c.dir/linkhash.c.o -c 
> /…/work/x86_64-linux/json-c-native/0.15-r0/json-c
>   -0.15/linkhash.c
>   | FAILED: CMakeFiles/json-c.dir/linkhash.c.o
>   | 
> /…/work/x86_64-linux/json-c-native/0.15-r0/recipe-sysroot-native/usr/bin/ice/gcc
>  -D_GNU_SOURCE -Djson_c_EXPORTS 
> -I/…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15 
> -I/…/work/x86_64-linux/json-c-native/0.15-r0/build 
> -isystem/…/work/x86_64-linux/json-c-n
>   ative/0.15-r0/recipe-sysroot-native/usr/include -O2 -pipe 
> -ffunction-sections -fdata-sections -Werror -Wall -Wcast-qual 
> -Wno-error=deprecated-declarations -Wextra -Wwrite-strings 
> -Wno-unused-parameter -Wstrict-prototypes -g -fPIC -D_REENTRANT -MD -MT 
> CMakeFiles/json-c.dir/linkhash.c.o -MF CMakeFiles/json-c.dir/linkhash.c.o.d 
> -o CMakeFiles/json-c.dir/linkhash.c.o -c 
> /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/l
>   inkhash.c
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c: In 
> function 'hashlittle':
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:367:13: 
> error: this statement may fall through [-Werror=implicit-fallthrough=]
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:368:3: 
> note: here
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:372:13: 
> error: this statement may fall through [-Werror=implicit-fallthrough=]
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:373:3: 
> note: here
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:376:13: 
> error: this statement may fall through [-Werror=implicit-fallthrough=]
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:377:3: 
> note: here
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:380:13: 
> error: this statement may fall through [-Werror=implicit-fallthrough=]
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:381:3: 
> note: here
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:383:13: 
> error: this statement may fall through [-Werror=implicit-fallthrough=]
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:384:3: 
> note: here
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:420:13: 
> error: this statement may fall through [-Werror=implicit-fallthrough=]
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:421:3: 
> note: here
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:421:13: 
> error: this statement may fall through [-Werror=implicit-fallthrough=]
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:422:3: 
> note: here
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:422:13: 
> error: this statement may fall through [-Werror=implicit-fallthrough=]
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:423:3: 
> note: here
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:423:13: 
> error: this statement may fall through [-Werror=implicit-fallthrough=]
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:424:3: 
> note: here
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:424:13: 
> error: this statement may fall through [-Werror=implicit-fallthrough=]
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:425:3: 
> note: here
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:425:13: 
> error: this statement may fall through [-Werror=implicit-fallthrough=]
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:426:3: 
> note: here
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:426:13: 
> error: this statement may fall through [-Werror=implicit-fallthrough=]
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:427:3: 
> note: here
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:427:13: 
> error: this statement may fall through [-Werror=implicit-fallthrough=]
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:428:3: 
> note: here
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:428:13: 
> error: this statement may fall through [-Werror=implicit-fallthrough=]
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:429:3: 
> note: here
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:429:13: 
> error: this statement may fall through [-Werror=implicit-fallthrough=]
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:430:3: 
> note: here
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:430:13: 
> error: this statement may fall through [-Werror=implicit-fallthrough=]
>   | /…/work/x86_64-linux/json-c-native/0.15-r0/json-c-0.15/linkhash.c:431:3: 
> note: here
>   | cc1: all warnings being treated as errors
>
> Passing -Wno-error x86-64 is the minimal invasive fix for older kirkstone
> releases.
>
> Signed-off-by: Rouven Czerwinski <[email protected]>
> ---
>  meta/recipes-devtools/json-c/json-c_0.15.bb | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/meta/recipes-devtools/json-c/json-c_0.15.bb 
> b/meta/recipes-devtools/json-c/json-c_0.15.bb
> index 7cbed55b3b..749eb078f8 100644
> --- a/meta/recipes-devtools/json-c/json-c_0.15.bb
> +++ b/meta/recipes-devtools/json-c/json-c_0.15.bb
> @@ -18,6 +18,8 @@ RPROVIDES:${PN} = "libjson"
>
>  inherit cmake ptest
>
> +OECMAKE_C_FLAGS:append:x86-64 = " -Wno-error"
> +
>  do_install_ptest() {
>      install -d ${D}/${PTEST_PATH}/tests
>      install ${B}/tests/test* ${D}/${PTEST_PATH}/tests
> --
> 2.39.2
>
>
> 
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184653): 
https://lists.openembedded.org/g/openembedded-core/message/184653
Mute This Topic: https://lists.openembedded.org/mt/100255913/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to