Message ID | 20240205151102.512785-1-alex@linutronix.de |
---|---|
State | Superseded, archived |
Headers | show |
Series | [1/2] lzlib: add a recipe | expand |
On Mon, 2024-02-05 at 16:11 +0100, Alexander Kanavin wrote: > This is needed for rpm reproducibility, as otherwise libmagic > will call an external lzip executable, which is both > non-threadsafe, and non-deterministic w.r.t sysroot presence. > > Signed-off-by: Alexander Kanavin <alex@linutronix.de> > --- > meta/conf/distro/include/maintainers.inc | 1 + > meta/recipes-extended/lzip/lzlib_1.14.bb | 37 ++++++++++++++++++++++++ > 2 files changed, 38 insertions(+) > create mode 100644 meta/recipes-extended/lzip/lzlib_1.14.bb > > diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc > index f0e27b8380e..277e3b16363 100644 > --- a/meta/conf/distro/include/maintainers.inc > +++ b/meta/conf/distro/include/maintainers.inc > @@ -485,6 +485,7 @@ RECIPE_MAINTAINER:pn-lua = "Alexander Kanavin <alex.kanavin@gmail.com>" > RECIPE_MAINTAINER:pn-lz4 = "Denys Dmytriyenko <denis@denix.org>" > RECIPE_MAINTAINER:pn-lzo = "Denys Dmytriyenko <denis@denix.org>" > RECIPE_MAINTAINER:pn-lzip = "Denys Dmytriyenko <denis@denix.org>" > +RECIPE_MAINTAINER:pn-lzlib = "Denys Dmytriyenko <denis@denix.org>" > RECIPE_MAINTAINER:pn-m4 = "Robert Yang <liezhi.yang@windriver.com>" > RECIPE_MAINTAINER:pn-m4-native = "Robert Yang <liezhi.yang@windriver.com>" > RECIPE_MAINTAINER:pn-make = "Robert Yang <liezhi.yang@windriver.com>" > diff --git a/meta/recipes-extended/lzip/lzlib_1.14.bb b/meta/recipes-extended/lzip/lzlib_1.14.bb > new file mode 100644 > index 00000000000..0fac508869f > --- /dev/null > +++ b/meta/recipes-extended/lzip/lzlib_1.14.bb > @@ -0,0 +1,37 @@ > +SUMMARY = "Data compression library providing in-memory LZMA compression and decompression functions" > +HOMEPAGE = "https://www.nongnu.org/lzip/lzlib.html" > +DESCRIPTION = "Lzlib is a data compression library providing in-memory LZMA compression and decompression functions, including integrity checking of the decompressed data. The compressed data format used by the library is the lzip format. Lzlib is written in C. " > +LICENSE = "BSD-2-Clause" > +LIC_FILES_CHKSUM = "file://COPYING;md5=04d943636aa1482e0a97d924d9f4f68f \ > + " > + > +SRC_URI = "${SAVANNAH_GNU_MIRROR}/lzip/lzlib/lzlib-${PV}.tar.gz" > +SRC_URI[sha256sum] = "5acac8714ed4f306020bae660dddce706e5f8a795863679037da9fe6bf4dcf6f" > + > +B = "${WORKDIR}/build" > +do_configure[cleandirs] = "${B}" > + > +CONFIGUREOPTS = "\ > + '--srcdir=${S}' \ > + '--prefix=${prefix}' \ > + '--exec-prefix=${exec_prefix}' \ > + '--bindir=${bindir}' \ > + '--datadir=${datadir}' \ > + '--infodir=${infodir}' \ > + '--sysconfdir=${sysconfdir}' \ > + '--enable-shared' \ > + 'CC=${CC}' \ > + 'CPPFLAGS=${CPPFLAGS}' \ > + 'CXXFLAGS=${CXXFLAGS}' \ > + 'LDFLAGS=${LDFLAGS}' \ > +" > + > +do_configure () { > + ${S}/configure ${CONFIGUREOPTS} > +} > + > +do_install () { > + oe_runmake 'DESTDIR=${D}' install > +} > + > +BBCLASSEXTEND = "native nativesdk" There looks to be a multilib issue: https://autobuilder.yoctoproject.org/typhoon/#/builders/44/builds/8577/steps/17/logs/stdio and a reproducibility issue: https://autobuilder.yoctoproject.org/typhoon/#/builders/117/builds/4338/steps/12/logs/stdio Cheers, Richard
On Tue, 6 Feb 2024 at 09:29, Richard Purdie <richard.purdie@linuxfoundation.org> wrote: > There looks to be a multilib issue: > > https://autobuilder.yoctoproject.org/typhoon/#/builders/44/builds/8577/steps/17/logs/stdio > > and a reproducibility issue: > > https://autobuilder.yoctoproject.org/typhoon/#/builders/117/builds/4338/steps/12/logs/stdio I sent corrected patches. Alex
On Tue, 2024-02-06 at 10:14 +0100, Alexander Kanavin wrote: > On Tue, 6 Feb 2024 at 09:29, Richard Purdie > <richard.purdie@linuxfoundation.org> wrote: > > > There looks to be a multilib issue: > > > > https://autobuilder.yoctoproject.org/typhoon/#/builders/44/builds/8577/steps/17/logs/stdio > > > > and a reproducibility issue: > > > > https://autobuilder.yoctoproject.org/typhoon/#/builders/117/builds/4338/steps/12/logs/stdio > > I sent corrected patches. Thanks, very much appreciated! Cheers, Richard
diff --git a/meta/conf/distro/include/maintainers.inc b/meta/conf/distro/include/maintainers.inc index f0e27b8380e..277e3b16363 100644 --- a/meta/conf/distro/include/maintainers.inc +++ b/meta/conf/distro/include/maintainers.inc @@ -485,6 +485,7 @@ RECIPE_MAINTAINER:pn-lua = "Alexander Kanavin <alex.kanavin@gmail.com>" RECIPE_MAINTAINER:pn-lz4 = "Denys Dmytriyenko <denis@denix.org>" RECIPE_MAINTAINER:pn-lzo = "Denys Dmytriyenko <denis@denix.org>" RECIPE_MAINTAINER:pn-lzip = "Denys Dmytriyenko <denis@denix.org>" +RECIPE_MAINTAINER:pn-lzlib = "Denys Dmytriyenko <denis@denix.org>" RECIPE_MAINTAINER:pn-m4 = "Robert Yang <liezhi.yang@windriver.com>" RECIPE_MAINTAINER:pn-m4-native = "Robert Yang <liezhi.yang@windriver.com>" RECIPE_MAINTAINER:pn-make = "Robert Yang <liezhi.yang@windriver.com>" diff --git a/meta/recipes-extended/lzip/lzlib_1.14.bb b/meta/recipes-extended/lzip/lzlib_1.14.bb new file mode 100644 index 00000000000..0fac508869f --- /dev/null +++ b/meta/recipes-extended/lzip/lzlib_1.14.bb @@ -0,0 +1,37 @@ +SUMMARY = "Data compression library providing in-memory LZMA compression and decompression functions" +HOMEPAGE = "https://www.nongnu.org/lzip/lzlib.html" +DESCRIPTION = "Lzlib is a data compression library providing in-memory LZMA compression and decompression functions, including integrity checking of the decompressed data. The compressed data format used by the library is the lzip format. Lzlib is written in C. " +LICENSE = "BSD-2-Clause" +LIC_FILES_CHKSUM = "file://COPYING;md5=04d943636aa1482e0a97d924d9f4f68f \ + " + +SRC_URI = "${SAVANNAH_GNU_MIRROR}/lzip/lzlib/lzlib-${PV}.tar.gz" +SRC_URI[sha256sum] = "5acac8714ed4f306020bae660dddce706e5f8a795863679037da9fe6bf4dcf6f" + +B = "${WORKDIR}/build" +do_configure[cleandirs] = "${B}" + +CONFIGUREOPTS = "\ + '--srcdir=${S}' \ + '--prefix=${prefix}' \ + '--exec-prefix=${exec_prefix}' \ + '--bindir=${bindir}' \ + '--datadir=${datadir}' \ + '--infodir=${infodir}' \ + '--sysconfdir=${sysconfdir}' \ + '--enable-shared' \ + 'CC=${CC}' \ + 'CPPFLAGS=${CPPFLAGS}' \ + 'CXXFLAGS=${CXXFLAGS}' \ + 'LDFLAGS=${LDFLAGS}' \ +" + +do_configure () { + ${S}/configure ${CONFIGUREOPTS} +} + +do_install () { + oe_runmake 'DESTDIR=${D}' install +} + +BBCLASSEXTEND = "native nativesdk"
This is needed for rpm reproducibility, as otherwise libmagic will call an external lzip executable, which is both non-threadsafe, and non-deterministic w.r.t sysroot presence. Signed-off-by: Alexander Kanavin <alex@linutronix.de> --- meta/conf/distro/include/maintainers.inc | 1 + meta/recipes-extended/lzip/lzlib_1.14.bb | 37 ++++++++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 meta/recipes-extended/lzip/lzlib_1.14.bb