* [PATCH] json-c: Disable icecc to avoid implicit-fallthrough warning as error
@ 2019-06-06 2:05 Douglas Royds
2019-06-06 9:45 ` Burton, Ross
2019-06-07 1:21 ` [PATCH v2] " Douglas Royds
0 siblings, 2 replies; 10+ messages in thread
From: Douglas Royds @ 2019-06-06 2:05 UTC (permalink / raw)
To: openembedded-core
icecc preprocesses source files locally before shipping them off to be compiled
on remote hosts. This preprocessing removes comments, including /* fallthrough */
comments in switch statements that normally prevent the implicit-fallthrough
warning.
Rather than turning off -Werror by patching configure.ac, it is simpler to
disable icecc completely for json-c. There are very few source files to compile,
so the compilation is quick even without icecc.
See https://github.com/icecc/icecream/issues/419
Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
---
meta/recipes-devtools/json-c/json-c_0.13.1.bb | 1 +
1 file changed, 1 insertion(+)
diff --git a/meta/recipes-devtools/json-c/json-c_0.13.1.bb b/meta/recipes-devtools/json-c/json-c_0.13.1.bb
index 5b10e68297..8d2a20352d 100644
--- a/meta/recipes-devtools/json-c/json-c_0.13.1.bb
+++ b/meta/recipes-devtools/json-c/json-c_0.13.1.bb
@@ -21,6 +21,7 @@ RPROVIDES_${PN} = "libjson"
inherit autotools
EXTRA_OECONF = "--enable-rdrand"
+ICECC_DISABLED = "1"
do_configure_prepend() {
# Clean up autoconf cruft that should not be in the tarball
--
2.17.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH] json-c: Disable icecc to avoid implicit-fallthrough warning as error
2019-06-06 2:05 [PATCH] json-c: Disable icecc to avoid implicit-fallthrough warning as error Douglas Royds
@ 2019-06-06 9:45 ` Burton, Ross
2019-06-06 21:03 ` Douglas Royds
2019-06-07 1:21 ` [PATCH v2] " Douglas Royds
1 sibling, 1 reply; 10+ messages in thread
From: Burton, Ross @ 2019-06-06 9:45 UTC (permalink / raw)
To: Douglas Royds; +Cc: OE-core
Considering the pain that the gcc upgrade introducing that warning
caused I'll be *very* surprised if this problem is limited to json-c.
Could the icecc class forcibly disable that warning instead?
Ross
On Thu, 6 Jun 2019 at 03:06, Douglas Royds via Openembedded-core
<openembedded-core@lists.openembedded.org> wrote:
>
> icecc preprocesses source files locally before shipping them off to be compiled
> on remote hosts. This preprocessing removes comments, including /* fallthrough */
> comments in switch statements that normally prevent the implicit-fallthrough
> warning.
>
> Rather than turning off -Werror by patching configure.ac, it is simpler to
> disable icecc completely for json-c. There are very few source files to compile,
> so the compilation is quick even without icecc.
>
> See https://github.com/icecc/icecream/issues/419
>
> Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
> ---
> meta/recipes-devtools/json-c/json-c_0.13.1.bb | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/meta/recipes-devtools/json-c/json-c_0.13.1.bb b/meta/recipes-devtools/json-c/json-c_0.13.1.bb
> index 5b10e68297..8d2a20352d 100644
> --- a/meta/recipes-devtools/json-c/json-c_0.13.1.bb
> +++ b/meta/recipes-devtools/json-c/json-c_0.13.1.bb
> @@ -21,6 +21,7 @@ RPROVIDES_${PN} = "libjson"
> inherit autotools
>
> EXTRA_OECONF = "--enable-rdrand"
> +ICECC_DISABLED = "1"
>
> do_configure_prepend() {
> # Clean up autoconf cruft that should not be in the tarball
> --
> 2.17.1
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] json-c: Disable icecc to avoid implicit-fallthrough warning as error
2019-06-06 9:45 ` Burton, Ross
@ 2019-06-06 21:03 ` Douglas Royds
2019-06-06 21:15 ` Joshua Watt
2019-06-06 22:04 ` Burton, Ross
0 siblings, 2 replies; 10+ messages in thread
From: Douglas Royds @ 2019-06-06 21:03 UTC (permalink / raw)
To: Burton, Ross; +Cc: OE-core
I struggled to find a solution that would work in the -native case, as
we need to support gcc as old as 5.4 (Ubuntu 16.04).
The problem is somewhat specific to json-c, as -Werror is hard-coded
into configure.ac in this package.
On 6/06/19 9:45 PM, Burton, Ross wrote:
> Considering the pain that the gcc upgrade introducing that warning
> caused I'll be *very* surprised if this problem is limited to json-c.
> Could the icecc class forcibly disable that warning instead?
>
> Ross
>
> On Thu, 6 Jun 2019 at 03:06, Douglas Royds via Openembedded-core
> <openembedded-core@lists.openembedded.org> wrote:
>> icecc preprocesses source files locally before shipping them off to be compiled
>> on remote hosts. This preprocessing removes comments, including /* fallthrough */
>> comments in switch statements that normally prevent the implicit-fallthrough
>> warning.
>>
>> Rather than turning off -Werror by patching configure.ac, it is simpler to
>> disable icecc completely for json-c. There are very few source files to compile,
>> so the compilation is quick even without icecc.
>>
>> See https://github.com/icecc/icecream/issues/419
>>
>> Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
>> ---
>> meta/recipes-devtools/json-c/json-c_0.13.1.bb | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/meta/recipes-devtools/json-c/json-c_0.13.1.bb b/meta/recipes-devtools/json-c/json-c_0.13.1.bb
>> index 5b10e68297..8d2a20352d 100644
>> --- a/meta/recipes-devtools/json-c/json-c_0.13.1.bb
>> +++ b/meta/recipes-devtools/json-c/json-c_0.13.1.bb
>> @@ -21,6 +21,7 @@ RPROVIDES_${PN} = "libjson"
>> inherit autotools
>>
>> EXTRA_OECONF = "--enable-rdrand"
>> +ICECC_DISABLED = "1"
>>
>> do_configure_prepend() {
>> # Clean up autoconf cruft that should not be in the tarball
>> --
>> 2.17.1
>>
>> --
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core@lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] json-c: Disable icecc to avoid implicit-fallthrough warning as error
2019-06-06 21:03 ` Douglas Royds
@ 2019-06-06 21:15 ` Joshua Watt
2019-06-06 21:53 ` Douglas Royds
2019-06-06 22:04 ` Burton, Ross
1 sibling, 1 reply; 10+ messages in thread
From: Joshua Watt @ 2019-06-06 21:15 UTC (permalink / raw)
To: Douglas Royds, Burton, Ross; +Cc: OE-core
FWIW: I've fixed a few upstream recipes that were doing this to use the
__attribute__((fallthrough)) instead of a comment.
Anyway, usually the correct fix is to add the package to
ICECC_SYSTEM_PACKAGE_BL in icecc.bbclass; it is maybe not ideal but
ICECC_DISABLED is the user control for enabling and disabling icecream
globally, not a per-recipe flag.
The current blacklist is woefully outdated, I really need to get around
to updating it
On 6/6/19 4:03 PM, Douglas Royds via Openembedded-core wrote:
> I struggled to find a solution that would work in the -native case, as
> we need to support gcc as old as 5.4 (Ubuntu 16.04).
>
> The problem is somewhat specific to json-c, as -Werror is hard-coded
> into configure.ac in this package.
>
>
> On 6/06/19 9:45 PM, Burton, Ross wrote:
>
>> Considering the pain that the gcc upgrade introducing that warning
>> caused I'll be *very* surprised if this problem is limited to json-c.
>> Could the icecc class forcibly disable that warning instead?
>>
>> Ross
>>
>> On Thu, 6 Jun 2019 at 03:06, Douglas Royds via Openembedded-core
>> <openembedded-core@lists.openembedded.org> wrote:
>>> icecc preprocesses source files locally before shipping them off to
>>> be compiled
>>> on remote hosts. This preprocessing removes comments, including /*
>>> fallthrough */
>>> comments in switch statements that normally prevent the
>>> implicit-fallthrough
>>> warning.
>>>
>>> Rather than turning off -Werror by patching configure.ac, it is
>>> simpler to
>>> disable icecc completely for json-c. There are very few source files
>>> to compile,
>>> so the compilation is quick even without icecc.
>>>
>>> See https://github.com/icecc/icecream/issues/419
>>>
>>> Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
>>> ---
>>> meta/recipes-devtools/json-c/json-c_0.13.1.bb | 1 +
>>> 1 file changed, 1 insertion(+)
>>>
>>> diff --git a/meta/recipes-devtools/json-c/json-c_0.13.1.bb
>>> b/meta/recipes-devtools/json-c/json-c_0.13.1.bb
>>> index 5b10e68297..8d2a20352d 100644
>>> --- a/meta/recipes-devtools/json-c/json-c_0.13.1.bb
>>> +++ b/meta/recipes-devtools/json-c/json-c_0.13.1.bb
>>> @@ -21,6 +21,7 @@ RPROVIDES_${PN} = "libjson"
>>> inherit autotools
>>>
>>> EXTRA_OECONF = "--enable-rdrand"
>>> +ICECC_DISABLED = "1"
>>>
>>> do_configure_prepend() {
>>> # Clean up autoconf cruft that should not be in the tarball
>>> --
>>> 2.17.1
>>>
>>> --
>>> _______________________________________________
>>> Openembedded-core mailing list
>>> Openembedded-core@lists.openembedded.org
>>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
>
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] json-c: Disable icecc to avoid implicit-fallthrough warning as error
2019-06-06 21:15 ` Joshua Watt
@ 2019-06-06 21:53 ` Douglas Royds
0 siblings, 0 replies; 10+ messages in thread
From: Douglas Royds @ 2019-06-06 21:53 UTC (permalink / raw)
To: Joshua Watt, Burton, Ross; +Cc: OE-core
__attribute__((fallthrough)) wouldn't help us with gcc 5.4 in the
-native case, of course.
I'll resubmit the patch using ICECC_SYSTEM_PACKAGE_BL
On 7/06/19 9:15 AM, Joshua Watt wrote:
> FWIW: I've fixed a few upstream recipes that were doing this to use
> the __attribute__((fallthrough)) instead of a comment.
>
> Anyway, usually the correct fix is to add the package to
> ICECC_SYSTEM_PACKAGE_BL in icecc.bbclass; it is maybe not ideal but
> ICECC_DISABLED is the user control for enabling and disabling icecream
> globally, not a per-recipe flag.
>
> The current blacklist is woefully outdated, I really need to get
> around to updating it
>
> On 6/6/19 4:03 PM, Douglas Royds via Openembedded-core wrote:
>> I struggled to find a solution that would work in the -native case,
>> as we need to support gcc as old as 5.4 (Ubuntu 16.04).
>>
>> The problem is somewhat specific to json-c, as -Werror is hard-coded
>> into configure.ac in this package.
>>
>>
>> On 6/06/19 9:45 PM, Burton, Ross wrote:
>>
>>> Considering the pain that the gcc upgrade introducing that warning
>>> caused I'll be *very* surprised if this problem is limited to json-c.
>>> Could the icecc class forcibly disable that warning instead?
>>>
>>> Ross
>>>
>>> On Thu, 6 Jun 2019 at 03:06, Douglas Royds via Openembedded-core
>>> <openembedded-core@lists.openembedded.org> wrote:
>>>> icecc preprocesses source files locally before shipping them off to
>>>> be compiled
>>>> on remote hosts. This preprocessing removes comments, including /*
>>>> fallthrough */
>>>> comments in switch statements that normally prevent the
>>>> implicit-fallthrough
>>>> warning.
>>>>
>>>> Rather than turning off -Werror by patching configure.ac, it is
>>>> simpler to
>>>> disable icecc completely for json-c. There are very few source
>>>> files to compile,
>>>> so the compilation is quick even without icecc.
>>>>
>>>> See https://github.com/icecc/icecream/issues/419
>>>>
>>>> Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
>>>> ---
>>>> meta/recipes-devtools/json-c/json-c_0.13.1.bb | 1 +
>>>> 1 file changed, 1 insertion(+)
>>>>
>>>> diff --git a/meta/recipes-devtools/json-c/json-c_0.13.1.bb
>>>> b/meta/recipes-devtools/json-c/json-c_0.13.1.bb
>>>> index 5b10e68297..8d2a20352d 100644
>>>> --- a/meta/recipes-devtools/json-c/json-c_0.13.1.bb
>>>> +++ b/meta/recipes-devtools/json-c/json-c_0.13.1.bb
>>>> @@ -21,6 +21,7 @@ RPROVIDES_${PN} = "libjson"
>>>> inherit autotools
>>>>
>>>> EXTRA_OECONF = "--enable-rdrand"
>>>> +ICECC_DISABLED = "1"
>>>>
>>>> do_configure_prepend() {
>>>> # Clean up autoconf cruft that should not be in the tarball
>>>> --
>>>> 2.17.1
>>>>
>>>> --
>>>> _______________________________________________
>>>> Openembedded-core mailing list
>>>> Openembedded-core@lists.openembedded.org
>>>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>>
>>
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH] json-c: Disable icecc to avoid implicit-fallthrough warning as error
2019-06-06 21:03 ` Douglas Royds
2019-06-06 21:15 ` Joshua Watt
@ 2019-06-06 22:04 ` Burton, Ross
1 sibling, 0 replies; 10+ messages in thread
From: Burton, Ross @ 2019-06-06 22:04 UTC (permalink / raw)
To: Douglas Royds; +Cc: OE-core
On Thu, 6 Jun 2019 at 22:03, Douglas Royds <douglas.royds@taitradio.com> wrote:
> The problem is somewhat specific to json-c, as -Werror is hard-coded
> into configure.ac in this package.
Which is downright evil, and to be honest we should patch that out.
Ross
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v2] json-c: Disable icecc to avoid implicit-fallthrough warning as error
2019-06-06 2:05 [PATCH] json-c: Disable icecc to avoid implicit-fallthrough warning as error Douglas Royds
2019-06-06 9:45 ` Burton, Ross
@ 2019-06-07 1:21 ` Douglas Royds
2019-06-07 11:20 ` Burton, Ross
2019-06-11 1:59 ` Douglas Royds
1 sibling, 2 replies; 10+ messages in thread
From: Douglas Royds @ 2019-06-07 1:21 UTC (permalink / raw)
To: openembedded-core
icecc preprocesses source files locally before shipping them off to be compiled
on remote hosts. This preprocessing removes comments, including /* fallthrough */
comments in switch statements that normally prevent the implicit-fallthrough
warning.
Rather than turning off -Werror by patching configure.ac, it is simpler to
disable icecc completely for json-c. There are very few source files to compile,
so the compilation is quick even without icecc.
See https://github.com/icecc/icecream/issues/419
Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
---
meta/classes/icecc.bbclass | 1 +
1 file changed, 1 insertion(+)
diff --git a/meta/classes/icecc.bbclass b/meta/classes/icecc.bbclass
index edb0e10434..c0f21bdbfd 100644
--- a/meta/classes/icecc.bbclass
+++ b/meta/classes/icecc.bbclass
@@ -76,6 +76,7 @@ ICECC_ENV_DEBUG ??= ""
# target-sdk-provides-dummy - ${HOST_PREFIX} is empty which triggers the "NULL
# prefix" error.
ICECC_SYSTEM_PACKAGE_BL += "\
+ json-c \
libgcc-initial \
target-sdk-provides-dummy \
"
--
2.17.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH v2] json-c: Disable icecc to avoid implicit-fallthrough warning as error
2019-06-07 1:21 ` [PATCH v2] " Douglas Royds
@ 2019-06-07 11:20 ` Burton, Ross
2019-06-09 19:56 ` Burton, Ross
2019-06-11 1:59 ` Douglas Royds
1 sibling, 1 reply; 10+ messages in thread
From: Burton, Ross @ 2019-06-07 11:20 UTC (permalink / raw)
To: Douglas Royds; +Cc: OE-core
FWIW I still believe that just patching out -Werror is the correct fix
here. To be honest I'm really close to writing a QA check that
-Werror and friends isn't being used at all...
Filed https://github.com/json-c/json-c/issues/489 in the hope that
upstream will handle it.
Ross
On Fri, 7 Jun 2019 at 02:22, Douglas Royds via Openembedded-core
<openembedded-core@lists.openembedded.org> wrote:
>
> icecc preprocesses source files locally before shipping them off to be compiled
> on remote hosts. This preprocessing removes comments, including /* fallthrough */
> comments in switch statements that normally prevent the implicit-fallthrough
> warning.
>
> Rather than turning off -Werror by patching configure.ac, it is simpler to
> disable icecc completely for json-c. There are very few source files to compile,
> so the compilation is quick even without icecc.
>
> See https://github.com/icecc/icecream/issues/419
>
> Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
> ---
> meta/classes/icecc.bbclass | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/meta/classes/icecc.bbclass b/meta/classes/icecc.bbclass
> index edb0e10434..c0f21bdbfd 100644
> --- a/meta/classes/icecc.bbclass
> +++ b/meta/classes/icecc.bbclass
> @@ -76,6 +76,7 @@ ICECC_ENV_DEBUG ??= ""
> # target-sdk-provides-dummy - ${HOST_PREFIX} is empty which triggers the "NULL
> # prefix" error.
> ICECC_SYSTEM_PACKAGE_BL += "\
> + json-c \
> libgcc-initial \
> target-sdk-provides-dummy \
> "
> --
> 2.17.1
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v2] json-c: Disable icecc to avoid implicit-fallthrough warning as error
2019-06-07 11:20 ` Burton, Ross
@ 2019-06-09 19:56 ` Burton, Ross
0 siblings, 0 replies; 10+ messages in thread
From: Burton, Ross @ 2019-06-09 19:56 UTC (permalink / raw)
To: Douglas Royds; +Cc: OE-core
FWIW, this just landed in json-c master:
https://github.com/json-c/json-c/commit/07ea04e65193c3e5c902c5b79421d5fa48ff67c7
"build: add option --disable-werror to configure"
Ross
On Fri, 7 Jun 2019 at 12:20, Burton, Ross <ross.burton@intel.com> wrote:
>
> FWIW I still believe that just patching out -Werror is the correct fix
> here. To be honest I'm really close to writing a QA check that
> -Werror and friends isn't being used at all...
>
> Filed https://github.com/json-c/json-c/issues/489 in the hope that
> upstream will handle it.
>
> Ross
>
> On Fri, 7 Jun 2019 at 02:22, Douglas Royds via Openembedded-core
> <openembedded-core@lists.openembedded.org> wrote:
> >
> > icecc preprocesses source files locally before shipping them off to be compiled
> > on remote hosts. This preprocessing removes comments, including /* fallthrough */
> > comments in switch statements that normally prevent the implicit-fallthrough
> > warning.
> >
> > Rather than turning off -Werror by patching configure.ac, it is simpler to
> > disable icecc completely for json-c. There are very few source files to compile,
> > so the compilation is quick even without icecc.
> >
> > See https://github.com/icecc/icecream/issues/419
> >
> > Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
> > ---
> > meta/classes/icecc.bbclass | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/meta/classes/icecc.bbclass b/meta/classes/icecc.bbclass
> > index edb0e10434..c0f21bdbfd 100644
> > --- a/meta/classes/icecc.bbclass
> > +++ b/meta/classes/icecc.bbclass
> > @@ -76,6 +76,7 @@ ICECC_ENV_DEBUG ??= ""
> > # target-sdk-provides-dummy - ${HOST_PREFIX} is empty which triggers the "NULL
> > # prefix" error.
> > ICECC_SYSTEM_PACKAGE_BL += "\
> > + json-c \
> > libgcc-initial \
> > target-sdk-provides-dummy \
> > "
> > --
> > 2.17.1
> >
> > --
> > _______________________________________________
> > Openembedded-core mailing list
> > Openembedded-core@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-core
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v2] json-c: Disable icecc to avoid implicit-fallthrough warning as error
2019-06-07 1:21 ` [PATCH v2] " Douglas Royds
2019-06-07 11:20 ` Burton, Ross
@ 2019-06-11 1:59 ` Douglas Royds
1 sibling, 0 replies; 10+ messages in thread
From: Douglas Royds @ 2019-06-11 1:59 UTC (permalink / raw)
To: openembedded-core
Please disregard this one, I've sent a recipe update to pick up the new
--disable-werror configure option.
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2019-06-11 2:00 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-06 2:05 [PATCH] json-c: Disable icecc to avoid implicit-fallthrough warning as error Douglas Royds
2019-06-06 9:45 ` Burton, Ross
2019-06-06 21:03 ` Douglas Royds
2019-06-06 21:15 ` Joshua Watt
2019-06-06 21:53 ` Douglas Royds
2019-06-06 22:04 ` Burton, Ross
2019-06-07 1:21 ` [PATCH v2] " Douglas Royds
2019-06-07 11:20 ` Burton, Ross
2019-06-09 19:56 ` Burton, Ross
2019-06-11 1:59 ` Douglas Royds
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.