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>

Reply via email to