Re: [OE-core] [PATCH] json-c: Disable icecc to avoid implicit-fallthrough warning as error
On Thu, 6 Jun 2019 at 22:03, Douglas Royds 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 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH] json-c: Disable icecc to avoid implicit-fallthrough warning as error
__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 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 --- 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 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH] json-c: Disable icecc to avoid implicit-fallthrough warning as error
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 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 --- 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 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH] json-c: Disable icecc to avoid implicit-fallthrough warning as error
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 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 --- 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 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH] json-c: Disable icecc to avoid implicit-fallthrough warning as error
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 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 > --- > 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 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH] json-c: Disable icecc to avoid implicit-fallthrough warning as error
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 --- 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