From 5485da75f357ff0e9833a7c69c379e0a36b506f0 Mon Sep 17 00:00:00 2001 From: Joshua Kinard Date: Sun, 4 Aug 2024 05:34:55 -0400 Subject: 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 --- 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 ++++++++++ app-arch/lrzip-next/lrzip-next-0.12.6-r1.ebuild | 67 ------------------- app-arch/lrzip-next/lrzip-next-0.13.1.ebuild | 77 ++++++++++++++++++++++ app-arch/lrzip-next/lrzip-next-9999.ebuild | 77 ++++++++++++++++++++++ app-arch/lrzip-next/metadata.xml | 3 +- 7 files changed, 210 insertions(+), 69 deletions(-) create mode 100644 app-arch/lrzip-next/files/lrzip-next-0.13.1-fix-lzma_asm_makefile-echo.patch create mode 100644 app-arch/lrzip-next/files/lrzip-next-0.13.1-use-acx_pthread-configure_ac.patch delete mode 100644 app-arch/lrzip-next/lrzip-next-0.12.6-r1.ebuild create mode 100644 app-arch/lrzip-next/lrzip-next-0.13.1.ebuild create mode 100644 app-arch/lrzip-next/lrzip-next-9999.ebuild (limited to 'app-arch/lrzip-next') 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.12.6-r1.ebuild deleted file mode 100644 index e218f7e3e4fe..000000000000 --- a/app-arch/lrzip-next/lrzip-next-0.12.6-r1.ebuild +++ /dev/null @@ -1,67 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="8" - -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" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64" -IUSE="asm static-libs year2038" - -RDEPEND="app-arch/bzip2 - app-arch/bzip3 - app-arch/lz4 - app-arch/zstd - dev-libs/libgcrypt - dev-libs/libgpg-error - dev-libs/lzo - sys-libs/zlib" -DEPEND="${RDEPEND}" -BDEPEND="amd64? ( dev-lang/nasm )" - -src_prepare() { - default - - # 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 - # configure.ac at the top for major/minor/micro. To avoid the need - # for a BDEPEND on dev-vcs/git, we can do this directly. - local major=$(awk '/Major: / {printf "%s",$2; exit}' VERSION) - local minor=$(awk '/Minor: / {printf "%s",$2; exit}' VERSION) - local micro=$(awk '/Micro: / {printf "%s",$2; exit}' VERSION) - sed -i -e "s:\[m4_esyscmd_s(\[./util/gitdesc.sh major\])\]:${major}:" configure.ac - sed -i -e "s:\[m4_esyscmd_s(\[./util/gitdesc.sh minor\])\]:${minor}:" configure.ac - sed -i -e "s:\[m4_esyscmd_s(\[./util/gitdesc.sh micro\])\]:${micro}:" configure.ac - - eautoreconf -} - -src_configure() { - local myconf=( - $(use_enable static-libs static) \ - $(use_enable amd64 asm) - ) - - # 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 - myconf+=( $(use_enable year2038) ) - fi - - econf "${myconf[@]}" -} - -src_install() { - default - - find "${ED}" -name '*.la' -delete || die -} diff --git a/app-arch/lrzip-next/lrzip-next-0.13.1.ebuild b/app-arch/lrzip-next/lrzip-next-0.13.1.ebuild new file mode 100644 index 000000000000..de6ccb5d0dce --- /dev/null +++ b/app-arch/lrzip-next/lrzip-next-0.13.1.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" + +inherit autotools + +DESCRIPTION="Fork of Con Kolivas' lrzip program for compressing large files" +HOMEPAGE="https://github.com/pete4abw/lrzip-next" + +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" +IUSE="asm +largefile static-libs year2038" + +RDEPEND="app-arch/bzip2 + app-arch/bzip3 + app-arch/lz4 + app-arch/zstd + dev-libs/libgcrypt + dev-libs/libgpg-error + dev-libs/lzo + sys-libs/zlib" +DEPEND="${RDEPEND}" +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 + # configure.ac at the top for major/minor/micro. To avoid the need + # for a BDEPEND on dev-vcs/git, we can do this directly. + local major=$(awk '/Major: / {printf "%s",$2; exit}' VERSION) + local minor=$(awk '/Minor: / {printf "%s",$2; exit}' VERSION) + local micro=$(awk '/Micro: / {printf "%s",$2; exit}' VERSION) + sed -i -e "s:\[m4_esyscmd_s(\[./util/gitdesc.sh major\])\]:${major}:" configure.ac + sed -i -e "s:\[m4_esyscmd_s(\[./util/gitdesc.sh minor\])\]:${minor}:" configure.ac + sed -i -e "s:\[m4_esyscmd_s(\[./util/gitdesc.sh micro\])\]:${micro}:" configure.ac + + eautoreconf +} + +src_configure() { + local myconf=( + $(use_enable amd64 asm) + $(use_enable largefile) \ + $(use_enable static-libs static) + ) + + # 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 + + econf "${myconf[@]}" +} + +src_install() { + default + + find "${ED}" -name '*.la' -type f -delete || die +} diff --git a/app-arch/lrzip-next/lrzip-next-9999.ebuild b/app-arch/lrzip-next/lrzip-next-9999.ebuild new file mode 100644 index 000000000000..0de353974a2c --- /dev/null +++ b/app-arch/lrzip-next/lrzip-next-9999.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" + +inherit autotools + +DESCRIPTION="Fork of Con Kolivas' lrzip program for compressing large files" +HOMEPAGE="https://github.com/pete4abw/lrzip-next" + +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" +IUSE="asm +largefile static-libs year2038" + +RDEPEND="app-arch/bzip2 + app-arch/bzip3 + app-arch/lz4 + app-arch/zstd + dev-libs/libgcrypt + dev-libs/libgpg-error + dev-libs/lzo + sys-libs/zlib" +DEPEND="${RDEPEND}" +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 + # configure.ac at the top for major/minor/micro. To avoid the need + # for a BDEPEND on dev-vcs/git, we can do this directly. + local major=$(awk '/Major: / {printf "%s",$2; exit}' VERSION) + local minor=$(awk '/Minor: / {printf "%s",$2; exit}' VERSION) + local micro=$(awk '/Micro: / {printf "%s",$2; exit}' VERSION) + sed -i -e "s:\[m4_esyscmd_s(\[./util/gitdesc.sh major\])\]:${major}:" configure.ac + sed -i -e "s:\[m4_esyscmd_s(\[./util/gitdesc.sh minor\])\]:${minor}:" configure.ac + sed -i -e "s:\[m4_esyscmd_s(\[./util/gitdesc.sh micro\])\]:${micro}:" configure.ac + + eautoreconf +} + +src_configure() { + local myconf=( + $(use_enable amd64 asm) + $(use_enable largefile) \ + $(use_enable static-libs static) + ) + + # 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 + + econf "${myconf[@]}" +} + +src_install() { + default + + 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 @@ pete4abw/lrzip-next - Enables support for timestamps after the year 2038 + Enables support for large files + Enables support for 64-bit 'time_t' (sets D_TIME_BITS=64; glibc only) -- cgit v1.2.3-65-gdbad