commit: 5485da75f357ff0e9833a7c69c379e0a36b506f0 Author: Joshua Kinard <kumba <AT> gentoo <DOT> org> AuthorDate: Sun Aug 4 09:34:55 2024 +0000 Commit: Joshua Kinard <kumba <AT> gentoo <DOT> org> CommitDate: Sun Aug 4 09:36:57 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5485da75
app-arch/lrzip-next: Update to 0.13.1 Update to v0.13.1, which includes lzma SDK 24.x from 7-Zip upstream. Partially addresses some issues found on musl, however, it will remain masked on musl for the time being until a sigsegv bug in libzpaq is fixed. Bug: https://bugs.gentoo.org/925547 Bug: https://bugs.gentoo.org/925618 Signed-off-by: Joshua Kinard <kumba <AT> gentoo.org> app-arch/lrzip-next/Manifest | 2 +- ...ip-next-0.13.1-fix-lzma_asm_makefile-echo.patch | 20 +++++++++++++ ...-next-0.13.1-use-acx_pthread-configure_ac.patch | 33 ++++++++++++++++++++++ ...t-0.12.6-r1.ebuild => lrzip-next-0.13.1.ebuild} | 30 +++++++++++++------- ...ext-0.12.6-r1.ebuild => lrzip-next-9999.ebuild} | 30 +++++++++++++------- app-arch/lrzip-next/metadata.xml | 3 +- 6 files changed, 96 insertions(+), 22 deletions(-) diff --git a/app-arch/lrzip-next/Manifest b/app-arch/lrzip-next/Manifest index 256514f707f8..d2676b28c624 100644 --- a/app-arch/lrzip-next/Manifest +++ b/app-arch/lrzip-next/Manifest @@ -1 +1 @@ -DIST lrzip-next-0.12.6.tar.gz 600081 BLAKE2B 952b3aefcf424b4626f14caaefc7b160a271330903227207cec249306750dfd24097abfdae159d82dc86e08711f51789ca72bcc66b6d7f4bdd9b892133759dae SHA512 768edaa4059e7a5561a738779cca5e5c46525c0a3f5888fc4e730fe6664f390fa8409060c86076b4b4cc327e317c37d59d557a55db67d97d39da6369788763c8 +DIST lrzip-next-0.13.1.tar.gz 604938 BLAKE2B f31becc3fb9e332a9682d41d2c6408bf08ee9173ddf7794259d1a5c7ea13b2a6d41f66c6ed9c88f840a48845f99d47526dd64667a788aefef5cea630bce4a094 SHA512 6c62d555c6596dba1184f9240ea31351ff0f091335607d44cb6d5d84589a42e234faccc6c835529b85917ebfcd712b676f1cdd66316be1f3d0c204c196043c65 diff --git a/app-arch/lrzip-next/files/lrzip-next-0.13.1-fix-lzma_asm_makefile-echo.patch b/app-arch/lrzip-next/files/lrzip-next-0.13.1-fix-lzma_asm_makefile-echo.patch new file mode 100644 index 000000000000..5ef0ea141bf8 --- /dev/null +++ b/app-arch/lrzip-next/files/lrzip-next-0.13.1-fix-lzma_asm_makefile-echo.patch @@ -0,0 +1,20 @@ +diff -Naurp lrzip-next-0.13.1.orig/src/lzma/ASM/Makefile.am lrzip-next-0.13.1/src/lzma/ASM/Makefile.am +--- lrzip-next-0.13.1.orig/src/lzma/ASM/Makefile.am 2024-07-08 17:55:41.000000000 -0400 ++++ lrzip-next-0.13.1/src/lzma/ASM/Makefile.am 2024-07-15 01:54:16.727136060 -0400 +@@ -25,7 +25,7 @@ LzmaDecOptFILE := \ + + $(ASM_De).lo: $(SRC)/$(ASM_De).asm + $(ASM_PROG) $(ASM_OPT) -o $(ASM_De).o $(ABSSRC)/$(ASM_De).asm +- @echo -e "$(LzmaDecOptFILE)" > $(ASM_De).lo ++ @printf "$(LzmaDecOptFILE)" > $(ASM_De).lo + @$(MKDIR_P) .libs + @cp $(ASM_De).o .libs + +@@ -38,6 +38,6 @@ LzFindOptFILE := \ + + $(ASM_F).lo: $(SRC)/$(ASM_F).asm + $(ASM_PROG) $(ASM_OPT) -o $(ASM_F).o $(ABSSRC)/$(ASM_F).asm +- @echo -e "$(LzFindOptFILE)" > $(ASM_F).lo ++ @printf "$(LzFindOptFILE)" > $(ASM_F).lo + @$(MKDIR_P) .libs + @cp $(ASM_F).o .libs diff --git a/app-arch/lrzip-next/files/lrzip-next-0.13.1-use-acx_pthread-configure_ac.patch b/app-arch/lrzip-next/files/lrzip-next-0.13.1-use-acx_pthread-configure_ac.patch new file mode 100644 index 000000000000..ae0af555ac91 --- /dev/null +++ b/app-arch/lrzip-next/files/lrzip-next-0.13.1-use-acx_pthread-configure_ac.patch @@ -0,0 +1,33 @@ +diff -Naurp lrzip-next-0.12.6.orig/configure.ac lrzip-next-0.12.6/configure.ac +--- lrzip-next-0.12.6.orig/configure.ac 2024-01-27 08:42:15.000000000 -0500 ++++ lrzip-next-0.12.6/configure.ac 2024-03-11 16:27:53.972571412 -0400 +@@ -168,16 +168,19 @@ AC_CHECK_LIB(gcrypt, gcry_md_open, , + AC_CHECK_FUNCS(mmap strerror) + AC_CHECK_FUNCS(getopt_long) + +-AX_PTHREAD +-LIBS="$PTHREAD_LIBS $LIBS" +-AS_IF([test x"$debug" = xyes], +- CFLAGS="-g -Og -DDEBUG" +- CXXFLAGS="-g -Og -DDEBUG", +- CFLAGS="$CFLAGS" +- CXXFLAGS="$CXXFLAGS") +- +-CFLAGS+=" $PTHREAD_CFLAGS" +-CXXFLAGS+=" $PTHREAD_CFLAGS" ++ACX_PTHREAD([ ++ LIBS="$LIBS $PTHREAD_LIBS" ++ CFLAGS="$CFLAGS $PTHREAD_CFLAGS" ++ CXXFLAGS="$CXXFLAGS $PTHREAD_CFLAGS" ++ CC="$PTHREAD_CC" ++ CXX="$PTHREAD_CXX" ++ AC_SUBST([LIBS]) ++ AC_SUBST([CFLAGS]) ++ AC_SUBST([CXXFLAGS]) ++ AC_SUBST([CC]) ++ AC_SUBST([CXX]) ++ ], ++ [AC_MSG_ERROR([POSIX threads support is required])]) + + ## test for ARM or other non x86 processor + ## must use -DNOJIT for compiling zpaq diff --git a/app-arch/lrzip-next/lrzip-next-0.12.6-r1.ebuild b/app-arch/lrzip-next/lrzip-next-0.13.1.ebuild similarity index 67% copy from app-arch/lrzip-next/lrzip-next-0.12.6-r1.ebuild copy to app-arch/lrzip-next/lrzip-next-0.13.1.ebuild index e218f7e3e4fe..de6ccb5d0dce 100644 --- a/app-arch/lrzip-next/lrzip-next-0.12.6-r1.ebuild +++ b/app-arch/lrzip-next/lrzip-next-0.13.1.ebuild @@ -7,12 +7,19 @@ inherit autotools DESCRIPTION="Fork of Con Kolivas' lrzip program for compressing large files" HOMEPAGE="https://github.com/pete4abw/lrzip-next" -SRC_URI="https://github.com/pete4abw/lrzip-next/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +GH_BASE="https://github.com/pete4abw/lrzip-next" +if [[ ${PV} == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="${GH_BASE}.git" +else + SRC_URI="${GH_BASE}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64" +fi LICENSE="GPL-2" SLOT="0" -KEYWORDS="~amd64" -IUSE="asm static-libs year2038" +IUSE="asm +largefile static-libs year2038" RDEPEND="app-arch/bzip2 app-arch/bzip3 @@ -28,6 +35,9 @@ BDEPEND="amd64? ( dev-lang/nasm )" src_prepare() { default + eapply "${FILESDIR}/${PN}-0.13.1-fix-lzma_asm_makefile-echo.patch" + eapply "${FILESDIR}/${PN}-0.13.1-use-acx_pthread-configure_ac.patch" + # configure.ac uses a small helper script, ./util/gitdesc.sh, to # see if it's a tarball or git repo copy. If tarball, it extracts # the version information from a local VERSION file and puts it into @@ -45,15 +55,15 @@ src_prepare() { src_configure() { local myconf=( - $(use_enable static-libs static) \ $(use_enable amd64 asm) + $(use_enable largefile) \ + $(use_enable static-libs static) ) - # This configure switch disappears on a musl system for some - # reason. However, this package is currently broken on musl, - # but we'll leave this in place while we see if upstream has - # any advice. - if ! use elibc_musl; then + # This configure switch only appears on glibc-based userlands. + # It enables 64-bit time_t to support timestamps greater than + # the year 2038 (D_TIME_BITS=64). + if use elibc_glibc; then myconf+=( $(use_enable year2038) ) fi @@ -63,5 +73,5 @@ src_configure() { src_install() { default - find "${ED}" -name '*.la' -delete || die + find "${ED}" -name '*.la' -type f -delete || die } diff --git a/app-arch/lrzip-next/lrzip-next-0.12.6-r1.ebuild b/app-arch/lrzip-next/lrzip-next-9999.ebuild similarity index 67% rename from app-arch/lrzip-next/lrzip-next-0.12.6-r1.ebuild rename to app-arch/lrzip-next/lrzip-next-9999.ebuild index e218f7e3e4fe..0de353974a2c 100644 --- a/app-arch/lrzip-next/lrzip-next-0.12.6-r1.ebuild +++ b/app-arch/lrzip-next/lrzip-next-9999.ebuild @@ -7,12 +7,19 @@ inherit autotools DESCRIPTION="Fork of Con Kolivas' lrzip program for compressing large files" HOMEPAGE="https://github.com/pete4abw/lrzip-next" -SRC_URI="https://github.com/pete4abw/lrzip-next/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +GH_BASE="https://github.com/pete4abw/lrzip-next" +if [[ ${PV} == *9999 ]] ; then + inherit git-r3 + EGIT_REPO_URI="${GH_BASE}.git" +else + SRC_URI="${GH_BASE}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64" +fi LICENSE="GPL-2" SLOT="0" -KEYWORDS="~amd64" -IUSE="asm static-libs year2038" +IUSE="asm +largefile static-libs year2038" RDEPEND="app-arch/bzip2 app-arch/bzip3 @@ -28,6 +35,9 @@ BDEPEND="amd64? ( dev-lang/nasm )" src_prepare() { default + eapply "${FILESDIR}/${PN}-0.13.1-fix-lzma_asm_makefile-echo.patch" + eapply "${FILESDIR}/${PN}-0.13.1-use-acx_pthread-configure_ac.patch" + # configure.ac uses a small helper script, ./util/gitdesc.sh, to # see if it's a tarball or git repo copy. If tarball, it extracts # the version information from a local VERSION file and puts it into @@ -45,15 +55,15 @@ src_prepare() { src_configure() { local myconf=( - $(use_enable static-libs static) \ $(use_enable amd64 asm) + $(use_enable largefile) \ + $(use_enable static-libs static) ) - # This configure switch disappears on a musl system for some - # reason. However, this package is currently broken on musl, - # but we'll leave this in place while we see if upstream has - # any advice. - if ! use elibc_musl; then + # This configure switch only appears for glibc-based userlands. + # It enables 64-bit time_t to support timestamps greater than + # the year 2038 (D_TIME_BITS=64). + if use elibc_glibc; then myconf+=( $(use_enable year2038) ) fi @@ -63,5 +73,5 @@ src_configure() { src_install() { default - find "${ED}" -name '*.la' -delete || die + find "${ED}" -name '*.la' -type f -delete || die } diff --git a/app-arch/lrzip-next/metadata.xml b/app-arch/lrzip-next/metadata.xml index d0dea613ffd3..2abeb3d4dcf5 100644 --- a/app-arch/lrzip-next/metadata.xml +++ b/app-arch/lrzip-next/metadata.xml @@ -17,6 +17,7 @@ <remote-id type="github">pete4abw/lrzip-next</remote-id> </upstream> <use> - <flag name="year2038">Enables support for timestamps after the year 2038</flag> + <flag name="largefile">Enables support for large files</flag> + <flag name="year2038">Enables support for 64-bit 'time_t' (sets D_TIME_BITS=64; glibc only)</flag> </use> </pkgmetadata>
