Message ID | 20180813143326.14262-1-matthew.weber@rockwellcollins.com |
---|---|
State | Superseded |
Headers | show |
Series | package/libselinux: host gcc at least 4.7 | expand |
Hi Matt, On Mon, Aug 13, 2018 at 09:33:26AM -0500, Matt Weber wrote: > Resolves. > label_file.h: In function 'compile_regex': > label_file.h:353: error: '__ATOMIC_ACQUIRE' undeclared (first use in this function) > label_file.h:353: error: (Each undeclared identifier is reported only once > label_file.h:353: error: for each function it appears in.) > label_file.h:405: error: '__ATOMIC_RELEASE' undeclared (first use in this function) > > Fixes: > http://autobuild.buildroot.net/results/3d3/3d3ecf63236bb41abca7d1996619ba697a7cbdb8/ > http://autobuild.buildroot.net/results/e98/e98789785a03e238e7cdca0ad07526d70fcfa30b/ > > Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com> > --- > package/libselinux/Config.in | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/package/libselinux/Config.in b/package/libselinux/Config.in > index 6be816db77..74d87bef1a 100644 > --- a/package/libselinux/Config.in > +++ b/package/libselinux/Config.in > @@ -6,6 +6,8 @@ config BR2_PACKAGE_LIBSELINUX > depends on BR2_TOOLCHAIN_USES_GLIBC > # Toolchain issue: "fixup not contained within frag" > depends on !BR2_arc > + # Uses __ATOMIC_* > + depends on BR2_HOST_GCC_AT_LEAST_4_7 You add the dependency to the target libselinux. But libselinux is not even enabled in the build configs you reference in the commit log. The failing package is host-libselinux. We don't see target libselinux failures in autobuilders because we don't test target toolchains older than gcc 4.7. This change is probably correct though, but it doesn't fix the autobuilders. In any case, for target libselinux you need to propagate this dependency to all libselinux reverse dependencies. baruch > select BR2_PACKAGE_LIBSEPOL > select BR2_PACKAGE_PCRE > help
Baruch, On Mon, Aug 13, 2018 at 9:47 AM Baruch Siach <baruch@tkos.co.il> wrote: > > Hi Matt, > > On Mon, Aug 13, 2018 at 09:33:26AM -0500, Matt Weber wrote: > > Resolves. > > label_file.h: In function 'compile_regex': > > label_file.h:353: error: '__ATOMIC_ACQUIRE' undeclared (first use in this function) > > label_file.h:353: error: (Each undeclared identifier is reported only once > > label_file.h:353: error: for each function it appears in.) > > label_file.h:405: error: '__ATOMIC_RELEASE' undeclared (first use in this function) > > > > Fixes: > > http://autobuild.buildroot.net/results/3d3/3d3ecf63236bb41abca7d1996619ba697a7cbdb8/ > > http://autobuild.buildroot.net/results/e98/e98789785a03e238e7cdca0ad07526d70fcfa30b/ > > > > Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com> > > --- > > package/libselinux/Config.in | 2 ++ > > 1 file changed, 2 insertions(+) > > > > diff --git a/package/libselinux/Config.in b/package/libselinux/Config.in > > index 6be816db77..74d87bef1a 100644 > > --- a/package/libselinux/Config.in > > +++ b/package/libselinux/Config.in > > @@ -6,6 +6,8 @@ config BR2_PACKAGE_LIBSELINUX > > depends on BR2_TOOLCHAIN_USES_GLIBC > > # Toolchain issue: "fixup not contained within frag" > > depends on !BR2_arc > > + # Uses __ATOMIC_* > > + depends on BR2_HOST_GCC_AT_LEAST_4_7 > > You add the dependency to the target libselinux. But libselinux is not even > enabled in the build configs you reference in the commit log. The failing > package is host-libselinux. > > We don't see target libselinux failures in autobuilders because we don't test > target toolchains older than gcc 4.7. This change is probably correct though, > but it doesn't fix the autobuilders. In any case, for target libselinux you > need to propagate this dependency to all libselinux reverse dependencies. Ah true..... host-. So I need to add a randconfig update. I'll fix the dependency propogation you mention and add a second patch for the cfg generation filtering
Hi Matt, On Mon, Aug 13, 2018 at 09:50:24AM -0500, Matthew Weber wrote: > On Mon, Aug 13, 2018 at 9:47 AM Baruch Siach <baruch@tkos.co.il> wrote: > > On Mon, Aug 13, 2018 at 09:33:26AM -0500, Matt Weber wrote: > > > Resolves. > > > label_file.h: In function 'compile_regex': > > > label_file.h:353: error: '__ATOMIC_ACQUIRE' undeclared (first use in this function) > > > label_file.h:353: error: (Each undeclared identifier is reported only once > > > label_file.h:353: error: for each function it appears in.) > > > label_file.h:405: error: '__ATOMIC_RELEASE' undeclared (first use in this function) > > > > > > Fixes: > > > http://autobuild.buildroot.net/results/3d3/3d3ecf63236bb41abca7d1996619ba697a7cbdb8/ > > > http://autobuild.buildroot.net/results/e98/e98789785a03e238e7cdca0ad07526d70fcfa30b/ > > > > > > Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com> > > > --- > > > package/libselinux/Config.in | 2 ++ > > > 1 file changed, 2 insertions(+) > > > > > > diff --git a/package/libselinux/Config.in b/package/libselinux/Config.in > > > index 6be816db77..74d87bef1a 100644 > > > --- a/package/libselinux/Config.in > > > +++ b/package/libselinux/Config.in > > > @@ -6,6 +6,8 @@ config BR2_PACKAGE_LIBSELINUX > > > depends on BR2_TOOLCHAIN_USES_GLIBC > > > # Toolchain issue: "fixup not contained within frag" > > > depends on !BR2_arc > > > + # Uses __ATOMIC_* > > > + depends on BR2_HOST_GCC_AT_LEAST_4_7 > > > > You add the dependency to the target libselinux. But libselinux is not even > > enabled in the build configs you reference in the commit log. The failing > > package is host-libselinux. > > > > We don't see target libselinux failures in autobuilders because we don't test > > target toolchains older than gcc 4.7. This change is probably correct though, > > but it doesn't fix the autobuilders. In any case, for target libselinux you > > need to propagate this dependency to all libselinux reverse dependencies. > > Ah true..... host-. So I need to add a randconfig update. I'll fix > the dependency propogation you mention and add a second patch for the > cfg generation filtering Note that you need to propagate the host- dependency as well. baruch
Baruch On Mon, Aug 13, 2018 at 9:54 AM Baruch Siach <baruch@tkos.co.il> wrote: > > Hi Matt, > > On Mon, Aug 13, 2018 at 09:50:24AM -0500, Matthew Weber wrote: > > On Mon, Aug 13, 2018 at 9:47 AM Baruch Siach <baruch@tkos.co.il> wrote: > > > On Mon, Aug 13, 2018 at 09:33:26AM -0500, Matt Weber wrote: > > > > Resolves. > > > > label_file.h: In function 'compile_regex': > > > > label_file.h:353: error: '__ATOMIC_ACQUIRE' undeclared (first use in this function) > > > > label_file.h:353: error: (Each undeclared identifier is reported only once > > > > label_file.h:353: error: for each function it appears in.) > > > > label_file.h:405: error: '__ATOMIC_RELEASE' undeclared (first use in this function) > > > > > > > > Fixes: > > > > http://autobuild.buildroot.net/results/3d3/3d3ecf63236bb41abca7d1996619ba697a7cbdb8/ > > > > http://autobuild.buildroot.net/results/e98/e98789785a03e238e7cdca0ad07526d70fcfa30b/ > > > > > > > > Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com> > > > > --- > > > > package/libselinux/Config.in | 2 ++ > > > > 1 file changed, 2 insertions(+) > > > > > > > > diff --git a/package/libselinux/Config.in b/package/libselinux/Config.in > > > > index 6be816db77..74d87bef1a 100644 > > > > --- a/package/libselinux/Config.in > > > > +++ b/package/libselinux/Config.in > > > > @@ -6,6 +6,8 @@ config BR2_PACKAGE_LIBSELINUX > > > > depends on BR2_TOOLCHAIN_USES_GLIBC > > > > # Toolchain issue: "fixup not contained within frag" > > > > depends on !BR2_arc > > > > + # Uses __ATOMIC_* > > > > + depends on BR2_HOST_GCC_AT_LEAST_4_7 > > > > > > You add the dependency to the target libselinux. But libselinux is not even > > > enabled in the build configs you reference in the commit log. The failing > > > package is host-libselinux. > > > > > > We don't see target libselinux failures in autobuilders because we don't test > > > target toolchains older than gcc 4.7. This change is probably correct though, > > > but it doesn't fix the autobuilders. In any case, for target libselinux you > > > need to propagate this dependency to all libselinux reverse dependencies. > > > > Ah true..... host-. So I need to add a randconfig update. I'll fix > > the dependency propogation you mention and add a second patch for the > > cfg generation filtering > > Note that you need to propagate the host- dependency as well. You mean in utils/genrandconfig's update for this, right? For the original patch above, I'm assuming I should propogate the depends on BR2_HOST_GCC_AT_LEAST_4_7 but also add depends on BR2_GCC_AT_LEAST_4_7. Matt
Baruch, On Mon, Aug 13, 2018 at 9:56 AM Matthew Weber <matthew.weber@rockwellcollins.com> wrote: > > Baruch > On Mon, Aug 13, 2018 at 9:54 AM Baruch Siach <baruch@tkos.co.il> wrote: > > > > Hi Matt, > > > > On Mon, Aug 13, 2018 at 09:50:24AM -0500, Matthew Weber wrote: > > > On Mon, Aug 13, 2018 at 9:47 AM Baruch Siach <baruch@tkos.co.il> wrote: > > > > On Mon, Aug 13, 2018 at 09:33:26AM -0500, Matt Weber wrote: > > > > > Resolves. > > > > > label_file.h: In function 'compile_regex': > > > > > label_file.h:353: error: '__ATOMIC_ACQUIRE' undeclared (first use in this function) > > > > > label_file.h:353: error: (Each undeclared identifier is reported only once > > > > > label_file.h:353: error: for each function it appears in.) > > > > > label_file.h:405: error: '__ATOMIC_RELEASE' undeclared (first use in this function) > > > > > > > > > > Fixes: > > > > > http://autobuild.buildroot.net/results/3d3/3d3ecf63236bb41abca7d1996619ba697a7cbdb8/ > > > > > http://autobuild.buildroot.net/results/e98/e98789785a03e238e7cdca0ad07526d70fcfa30b/ > > > > > > > > > > Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com> > > > > > --- > > > > > package/libselinux/Config.in | 2 ++ > > > > > 1 file changed, 2 insertions(+) > > > > > > > > > > diff --git a/package/libselinux/Config.in b/package/libselinux/Config.in > > > > > index 6be816db77..74d87bef1a 100644 > > > > > --- a/package/libselinux/Config.in > > > > > +++ b/package/libselinux/Config.in > > > > > @@ -6,6 +6,8 @@ config BR2_PACKAGE_LIBSELINUX > > > > > depends on BR2_TOOLCHAIN_USES_GLIBC > > > > > # Toolchain issue: "fixup not contained within frag" > > > > > depends on !BR2_arc > > > > > + # Uses __ATOMIC_* > > > > > + depends on BR2_HOST_GCC_AT_LEAST_4_7 > > > > > > > > You add the dependency to the target libselinux. But libselinux is not even > > > > enabled in the build configs you reference in the commit log. The failing > > > > package is host-libselinux. > > > > > > > > We don't see target libselinux failures in autobuilders because we don't test > > > > target toolchains older than gcc 4.7. This change is probably correct though, > > > > but it doesn't fix the autobuilders. In any case, for target libselinux you > > > > need to propagate this dependency to all libselinux reverse dependencies. > > > > > > Ah true..... host-. So I need to add a randconfig update. I'll fix > > > the dependency propogation you mention and add a second patch for the > > > cfg generation filtering > > > > Note that you need to propagate the host- dependency as well. > > You mean in utils/genrandconfig's update for this, right? > > For the original patch above, I'm assuming I should propogate the > depends on BR2_HOST_GCC_AT_LEAST_4_7 but also add depends on > BR2_GCC_AT_LEAST_4_7. > Just realized this is going to get messy. Here's more detail. For these, I'll propagate the BR2_HOST_GCC_AT_LEAST_4_7 and BR2_GCC_AT_LEAST_4_7 based on the .mk having a make depends on host-libselinux android-tools restorecond checkpolicy setools libsemanage For these just, BR2_GCC_AT_LEAST_4_7 as there is no host-libselinux built. busybox Matt
Hi Matt, On Mon, Aug 13, 2018 at 09:56:57AM -0500, Matthew Weber wrote: > On Mon, Aug 13, 2018 at 9:54 AM Baruch Siach <baruch@tkos.co.il> wrote: > > On Mon, Aug 13, 2018 at 09:50:24AM -0500, Matthew Weber wrote: > > > On Mon, Aug 13, 2018 at 9:47 AM Baruch Siach <baruch@tkos.co.il> wrote: > > > > On Mon, Aug 13, 2018 at 09:33:26AM -0500, Matt Weber wrote: > > > > > Resolves. > > > > > label_file.h: In function 'compile_regex': > > > > > label_file.h:353: error: '__ATOMIC_ACQUIRE' undeclared (first use in this function) > > > > > label_file.h:353: error: (Each undeclared identifier is reported only once > > > > > label_file.h:353: error: for each function it appears in.) > > > > > label_file.h:405: error: '__ATOMIC_RELEASE' undeclared (first use in this function) > > > > > > > > > > Fixes: > > > > > http://autobuild.buildroot.net/results/3d3/3d3ecf63236bb41abca7d1996619ba697a7cbdb8/ > > > > > http://autobuild.buildroot.net/results/e98/e98789785a03e238e7cdca0ad07526d70fcfa30b/ > > > > > > > > > > Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com> > > > > > --- > > > > > package/libselinux/Config.in | 2 ++ > > > > > 1 file changed, 2 insertions(+) > > > > > > > > > > diff --git a/package/libselinux/Config.in b/package/libselinux/Config.in > > > > > index 6be816db77..74d87bef1a 100644 > > > > > --- a/package/libselinux/Config.in > > > > > +++ b/package/libselinux/Config.in > > > > > @@ -6,6 +6,8 @@ config BR2_PACKAGE_LIBSELINUX > > > > > depends on BR2_TOOLCHAIN_USES_GLIBC > > > > > # Toolchain issue: "fixup not contained within frag" > > > > > depends on !BR2_arc > > > > > + # Uses __ATOMIC_* > > > > > + depends on BR2_HOST_GCC_AT_LEAST_4_7 > > > > > > > > You add the dependency to the target libselinux. But libselinux is not even > > > > enabled in the build configs you reference in the commit log. The failing > > > > package is host-libselinux. > > > > > > > > We don't see target libselinux failures in autobuilders because we don't test > > > > target toolchains older than gcc 4.7. This change is probably correct though, > > > > but it doesn't fix the autobuilders. In any case, for target libselinux you > > > > need to propagate this dependency to all libselinux reverse dependencies. > > > > > > Ah true..... host-. So I need to add a randconfig update. I'll fix > > > the dependency propogation you mention and add a second patch for the > > > cfg generation filtering > > > > Note that you need to propagate the host- dependency as well. > > You mean in utils/genrandconfig's update for this, right? No. I mean all host and target packages that have host-libselinux in their _DEPENDENCIES. Otherwise, enabling any of them would cause a build of host-libselinux regardless of the Config.in dependency. Isn't it easier to apply the alternative patch that uses the older __sync routines for older gcc? > For the original patch above, I'm assuming I should propogate the > depends on BR2_HOST_GCC_AT_LEAST_4_7 but also add depends on > BR2_GCC_AT_LEAST_4_7. Both dependencies need to be propagated, as far as I understand. baruch
Baruch, On Mon, Aug 13, 2018 at 10:06 AM Baruch Siach <baruch@tkos.co.il> wrote: > > Hi Matt, > > On Mon, Aug 13, 2018 at 09:56:57AM -0500, Matthew Weber wrote: > > On Mon, Aug 13, 2018 at 9:54 AM Baruch Siach <baruch@tkos.co.il> wrote: > > > On Mon, Aug 13, 2018 at 09:50:24AM -0500, Matthew Weber wrote: > > > > On Mon, Aug 13, 2018 at 9:47 AM Baruch Siach <baruch@tkos.co.il> wrote: > > > > > On Mon, Aug 13, 2018 at 09:33:26AM -0500, Matt Weber wrote: > > > > > > Resolves. > > > > > > label_file.h: In function 'compile_regex': > > > > > > label_file.h:353: error: '__ATOMIC_ACQUIRE' undeclared (first use in this function) > > > > > > label_file.h:353: error: (Each undeclared identifier is reported only once > > > > > > label_file.h:353: error: for each function it appears in.) > > > > > > label_file.h:405: error: '__ATOMIC_RELEASE' undeclared (first use in this function) > > > > > > > > > > > > Fixes: > > > > > > http://autobuild.buildroot.net/results/3d3/3d3ecf63236bb41abca7d1996619ba697a7cbdb8/ > > > > > > http://autobuild.buildroot.net/results/e98/e98789785a03e238e7cdca0ad07526d70fcfa30b/ > > > > > > > > > > > > Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com> > > > > > > --- > > > > > > package/libselinux/Config.in | 2 ++ > > > > > > 1 file changed, 2 insertions(+) > > > > > > > > > > > > diff --git a/package/libselinux/Config.in b/package/libselinux/Config.in > > > > > > index 6be816db77..74d87bef1a 100644 > > > > > > --- a/package/libselinux/Config.in > > > > > > +++ b/package/libselinux/Config.in > > > > > > @@ -6,6 +6,8 @@ config BR2_PACKAGE_LIBSELINUX > > > > > > depends on BR2_TOOLCHAIN_USES_GLIBC > > > > > > # Toolchain issue: "fixup not contained within frag" > > > > > > depends on !BR2_arc > > > > > > + # Uses __ATOMIC_* > > > > > > + depends on BR2_HOST_GCC_AT_LEAST_4_7 > > > > > > > > > > You add the dependency to the target libselinux. But libselinux is not even > > > > > enabled in the build configs you reference in the commit log. The failing > > > > > package is host-libselinux. > > > > > > > > > > We don't see target libselinux failures in autobuilders because we don't test > > > > > target toolchains older than gcc 4.7. This change is probably correct though, > > > > > but it doesn't fix the autobuilders. In any case, for target libselinux you > > > > > need to propagate this dependency to all libselinux reverse dependencies. > > > > > > > > Ah true..... host-. So I need to add a randconfig update. I'll fix > > > > the dependency propogation you mention and add a second patch for the > > > > cfg generation filtering > > > > > > Note that you need to propagate the host- dependency as well. > > > > You mean in utils/genrandconfig's update for this, right? > > No. I mean all host and target packages that have host-libselinux in their > _DEPENDENCIES. Otherwise, enabling any of them would cause a build of > host-libselinux regardless of the Config.in dependency. > > Isn't it easier to apply the alternative patch that uses the older __sync > routines for older gcc? > > > For the original patch above, I'm assuming I should propogate the > > depends on BR2_HOST_GCC_AT_LEAST_4_7 but also add depends on > > BR2_GCC_AT_LEAST_4_7. > > Both dependencies need to be propagated, as far as I understand. > http://patchwork.ozlabs.org/project/buildroot/list/?series=60561
Hello, On Mon, 13 Aug 2018 18:05:59 +0300, Baruch Siach wrote: > No. I mean all host and target packages that have host-libselinux in their > _DEPENDENCIES. Otherwise, enabling any of them would cause a build of > host-libselinux regardless of the Config.in dependency. > > Isn't it easier to apply the alternative patch that uses the older __sync > routines for older gcc? Is it would be much easier. The question is: is this patch correct ? I am not super familiar with the semantic of those atomic operations, so I'm not super confident in reviewing Hollis proposal. But if you think Hollis patch is correct, a Acked-by or Reviewed-by on it would be good. Thanks! Thomas
diff --git a/package/libselinux/Config.in b/package/libselinux/Config.in index 6be816db77..74d87bef1a 100644 --- a/package/libselinux/Config.in +++ b/package/libselinux/Config.in @@ -6,6 +6,8 @@ config BR2_PACKAGE_LIBSELINUX depends on BR2_TOOLCHAIN_USES_GLIBC # Toolchain issue: "fixup not contained within frag" depends on !BR2_arc + # Uses __ATOMIC_* + depends on BR2_HOST_GCC_AT_LEAST_4_7 select BR2_PACKAGE_LIBSEPOL select BR2_PACKAGE_PCRE help
Resolves. label_file.h: In function 'compile_regex': label_file.h:353: error: '__ATOMIC_ACQUIRE' undeclared (first use in this function) label_file.h:353: error: (Each undeclared identifier is reported only once label_file.h:353: error: for each function it appears in.) label_file.h:405: error: '__ATOMIC_RELEASE' undeclared (first use in this function) Fixes: http://autobuild.buildroot.net/results/3d3/3d3ecf63236bb41abca7d1996619ba697a7cbdb8/ http://autobuild.buildroot.net/results/e98/e98789785a03e238e7cdca0ad07526d70fcfa30b/ Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com> --- package/libselinux/Config.in | 2 ++ 1 file changed, 2 insertions(+)