Message ID | 20190922090646.15130-10-thomas.petazzoni@bootlin.com |
---|---|
State | Accepted |
Headers | show |
Series | SELinux improvements | expand |
Thomas, On Sun, Sep 22, 2019 at 4:07 AM Thomas Petazzoni <thomas.petazzoni@bootlin.com> wrote: > > This package provides a replacement implementation for <fts.h> > functions missing from musl and uClibc-ng. > > Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> > --- > DEVELOPERS | 1 + > package/Config.in | 1 + > package/musl-fts/Config.in | 7 +++++++ > package/musl-fts/musl-fts.hash | 3 +++ > package/musl-fts/musl-fts.mk | 21 +++++++++++++++++++++ > 5 files changed, 33 insertions(+) > create mode 100644 package/musl-fts/Config.in > create mode 100644 package/musl-fts/musl-fts.hash > create mode 100644 package/musl-fts/musl-fts.mk > > diff --git a/DEVELOPERS b/DEVELOPERS > index b427fd92ae..18ef50c311 100644 > --- a/DEVELOPERS > +++ b/DEVELOPERS > @@ -2291,6 +2291,7 @@ F: package/monit/ > F: package/mpdecimal/ > F: package/msmtp/ > F: package/musl/ > +F: package/musl-fts/ > F: package/ne10/ > F: package/pkg-python.mk > F: package/pkg-autotools.mk > diff --git a/package/Config.in b/package/Config.in > index 2fc11065f6..15572e7a1d 100644 > --- a/package/Config.in > +++ b/package/Config.in > @@ -1766,6 +1766,7 @@ endif > source "package/msgpack/Config.in" > source "package/mtdev2tuio/Config.in" > source "package/musl-compat-headers/Config.in" > + source "package/musl-fts/Config.in" > source "package/openblas/Config.in" > source "package/orc/Config.in" > source "package/p11-kit/Config.in" > diff --git a/package/musl-fts/Config.in b/package/musl-fts/Config.in > new file mode 100644 > index 0000000000..a7f38c182e > --- /dev/null > +++ b/package/musl-fts/Config.in > @@ -0,0 +1,7 @@ > +config BR2_PACKAGE_MUSL_FTS > + bool "musl-fts" > + depends on !BR2_TOOLCHAIN_USES_GLIBC > + help > + The musl-fts package implements the fts(3) functions > + fts_open, fts_read, fts_children, fts_set and fts_close, > + which are missing in musl and uClibc-ng C libraries. > diff --git a/package/musl-fts/musl-fts.hash b/package/musl-fts/musl-fts.hash > new file mode 100644 > index 0000000000..207fef31ad > --- /dev/null > +++ b/package/musl-fts/musl-fts.hash > @@ -0,0 +1,3 @@ > +# Locally calculated > +sha256 49ae567a96dbab22823d045ffebe0d6b14b9b799925e9ca9274d47d26ff482a6 musl-fts-v1.2.7.tar.gz > +sha256 55af87e4017668f54467a3380e7ebbac5e672d8c763bfe95e6fc882a6fdc4046 COPYING > diff --git a/package/musl-fts/musl-fts.mk b/package/musl-fts/musl-fts.mk > new file mode 100644 > index 0000000000..190f3864b4 > --- /dev/null > +++ b/package/musl-fts/musl-fts.mk > @@ -0,0 +1,21 @@ > +################################################################################ > +# > +# musl-fts > +# > +################################################################################ > + > +MUSL_FTS_VERSION = v1.2.7 Does it make sense in this case to move the "v" to the SITE like the other version fix-ups? I checked release monitoring and it doesn't look like there is an entry yet for this package (ie. no precedence has been set yet) > +MUSL_FTS_SITE = $(call github,void-linux,musl-fts,$(MUSL_FTS_VERSION)) Regards, Matt
On Mon, 23 Sep 2019 08:12:17 -0500 Matthew Weber <matthew.weber@collins.com> wrote: > > +MUSL_FTS_VERSION = v1.2.7 > > Does it make sense in this case to move the "v" to the SITE like the > other version fix-ups? I checked release monitoring and it doesn't > look like there is an entry yet for this package (ie. no precedence > has been set yet) It makes complete sense to move the "v" to the site of course. My bad, this patch was sitting in a Buildroot branch for quite a while, and I didn't rework it after the "v" cleanup in all other Buildroot packages. I'll wait for other comments before sending a v2 (which would be another 22 patches sent on the mailing list), unless someone applies my patch and does the fix. Thomas
Thomas, On Mon, Sep 23, 2019 at 8:33 AM Thomas Petazzoni <thomas.petazzoni@bootlin.com> wrote: > > On Mon, 23 Sep 2019 08:12:17 -0500 > Matthew Weber <matthew.weber@collins.com> wrote: > > > > +MUSL_FTS_VERSION = v1.2.7 > > > > Does it make sense in this case to move the "v" to the SITE like the > > other version fix-ups? I checked release monitoring and it doesn't > > look like there is an entry yet for this package (ie. no precedence > > has been set yet) > > It makes complete sense to move the "v" to the site of course. My bad, > this patch was sitting in a Buildroot branch for quite a while, and I > didn't rework it after the "v" cleanup in all other Buildroot packages. > > I'll wait for other comments before sending a v2 (which would be > another 22 patches sent on the mailing list), unless someone applies my > patch and does the fix. > I probably won't send a Reviewed by for the other patches individually but I did go through them and it looks good. (Had a few side conversations on the host selinux dependency removal for policycoreutils and it seems fine) Reviewed-by: Matt Weber <matthew.weber@rockwellcollins.com>
On Mon, 23 Sep 2019 08:36:59 -0500 Matthew Weber <matthew.weber@collins.com> wrote: > I probably won't send a Reviewed by for the other patches individually > but I did go through them and it looks good. (Had a few side > conversations on the host selinux dependency removal for > policycoreutils and it seems fine) Thanks! Speaking of host python dependencies, I'm also wondering about making the host-python dependency of host-libselinux and libsemanage optional. Indeed, they are only needed if you want the Python bindings of libselinux/libsemanage on the host, and you can perfectly fine have a working SELinux stack without those. Now the question is what should trigger the build of those Python bindings. A visible Config.in.host option ? A hidden Config.in.host option, but then selected by what ? I guess it's mainly host-setools that needs the Python bindings of host-libselinux. I'm not sure what uses the Python bindings of host-libsemanage though. Thomas
On 22/09/2019 11:06, Thomas Petazzoni wrote: > This package provides a replacement implementation for <fts.h> > functions missing from musl and uClibc-ng. > > Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Now this is applied, a couple of additional packages/options might be enabled as well... - clamav's --disable-fanotify might be removed; - elfutils has a huge patch to add fts which might be removed; - libcgroup; - ltp-testsuite depends on !MUSL; neither the Config.in nor commit baedef979cda explain why exactly, but it might be due to fts. Regards, Arnout
On Thu, 10 Oct 2019 00:31:53 +0200 Arnout Vandecappelle <arnout@mind.be> wrote: > Now this is applied, a couple of additional packages/options might be enabled > as well... > > - clamav's --disable-fanotify might be removed; > - elfutils has a huge patch to add fts which might be removed; > - libcgroup; > - ltp-testsuite depends on !MUSL; neither the Config.in nor commit baedef979cda > explain why exactly, but it might be due to fts. Absolutely, there's a whole bunch of stuff that can be improved thanks to this. But the series was already 30 patches long, so I thought it was already enough. Thanks for reviewing and merging! Thomas
Hi Arnout, > Now this is applied, a couple of additional packages/options might be enabled > as well... > - clamav's --disable-fanotify might be removed; > - elfutils has a huge patch to add fts which might be removed; > - libcgroup; > - ltp-testsuite depends on !MUSL; neither the Config.in nor commit baedef979cda > explain why exactly, but it might be due to fts. Thanks for adding musl-fts, I was thinking about it. ATM LTP on musl is not blocked by missing fts.h (I need to update that comment in ltp-testsuite.mk), just cpuset tests aren't compiled if it's not available. But it'd be nice to select it for uclibc to have these tests compiled. Feel free to do it or I'll do it (hopefully soon). LTP under musl itself has more problems. These are mainly caused by some old and dirty code which depends on glibc specific features (we're slowly rewriting these tests which fixes it). Some of these problems are on uclibc as well, Waldemar Brodkorb solved it with just deleting problematic parts. For previous release I enabled LTP for musl using the same way (more tests needed to be deleted). I thought I posted it, but it looks like I didn't. I'll update the patch and send it again. Kind regards, Petr
diff --git a/DEVELOPERS b/DEVELOPERS index b427fd92ae..18ef50c311 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -2291,6 +2291,7 @@ F: package/monit/ F: package/mpdecimal/ F: package/msmtp/ F: package/musl/ +F: package/musl-fts/ F: package/ne10/ F: package/pkg-python.mk F: package/pkg-autotools.mk diff --git a/package/Config.in b/package/Config.in index 2fc11065f6..15572e7a1d 100644 --- a/package/Config.in +++ b/package/Config.in @@ -1766,6 +1766,7 @@ endif source "package/msgpack/Config.in" source "package/mtdev2tuio/Config.in" source "package/musl-compat-headers/Config.in" + source "package/musl-fts/Config.in" source "package/openblas/Config.in" source "package/orc/Config.in" source "package/p11-kit/Config.in" diff --git a/package/musl-fts/Config.in b/package/musl-fts/Config.in new file mode 100644 index 0000000000..a7f38c182e --- /dev/null +++ b/package/musl-fts/Config.in @@ -0,0 +1,7 @@ +config BR2_PACKAGE_MUSL_FTS + bool "musl-fts" + depends on !BR2_TOOLCHAIN_USES_GLIBC + help + The musl-fts package implements the fts(3) functions + fts_open, fts_read, fts_children, fts_set and fts_close, + which are missing in musl and uClibc-ng C libraries. diff --git a/package/musl-fts/musl-fts.hash b/package/musl-fts/musl-fts.hash new file mode 100644 index 0000000000..207fef31ad --- /dev/null +++ b/package/musl-fts/musl-fts.hash @@ -0,0 +1,3 @@ +# Locally calculated +sha256 49ae567a96dbab22823d045ffebe0d6b14b9b799925e9ca9274d47d26ff482a6 musl-fts-v1.2.7.tar.gz +sha256 55af87e4017668f54467a3380e7ebbac5e672d8c763bfe95e6fc882a6fdc4046 COPYING diff --git a/package/musl-fts/musl-fts.mk b/package/musl-fts/musl-fts.mk new file mode 100644 index 0000000000..190f3864b4 --- /dev/null +++ b/package/musl-fts/musl-fts.mk @@ -0,0 +1,21 @@ +################################################################################ +# +# musl-fts +# +################################################################################ + +MUSL_FTS_VERSION = v1.2.7 +MUSL_FTS_SITE = $(call github,void-linux,musl-fts,$(MUSL_FTS_VERSION)) +MUSL_FTS_AUTORECONF = YES +MUSL_FTS_LICENSE = BSD-3-Clause +MUSL_FTS_LICENSE_FILES = COPYING +# pkg-config needed for autoreconf +MUSL_FTS_DEPENDENCIES = host-pkgconf +MUSL_FTS_INSTALL_STAGING = YES + +define MUSL_FTS_CREATE_M4_DIR + mkdir -p $(@D)/m4 +endef +MUSL_FTS_POST_PATCH_HOOKS += MUSL_FTS_CREATE_M4_DIR + +$(eval $(autotools-package))
This package provides a replacement implementation for <fts.h> functions missing from musl and uClibc-ng. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> --- DEVELOPERS | 1 + package/Config.in | 1 + package/musl-fts/Config.in | 7 +++++++ package/musl-fts/musl-fts.hash | 3 +++ package/musl-fts/musl-fts.mk | 21 +++++++++++++++++++++ 5 files changed, 33 insertions(+) create mode 100644 package/musl-fts/Config.in create mode 100644 package/musl-fts/musl-fts.hash create mode 100644 package/musl-fts/musl-fts.mk