diff options
author | Joshua Kinard <kumba@gentoo.org> | 2024-08-04 05:34:55 -0400 |
---|---|---|
committer | Joshua Kinard <kumba@gentoo.org> | 2024-08-04 05:36:57 -0400 |
commit | 5485da75f357ff0e9833a7c69c379e0a36b506f0 (patch) | |
tree | 10c47e8945e43634649cd71d2d216b18fe25b75d /app-arch/lrzip-next | |
parent | dev-util/kcov: add 43 and adoption (diff) | |
download | gentoo-5485da75f357ff0e9833a7c69c379e0a36b506f0.tar.gz gentoo-5485da75f357ff0e9833a7c69c379e0a36b506f0.tar.bz2 gentoo-5485da75f357ff0e9833a7c69c379e0a36b506f0.zip |
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@gentoo.org>
Diffstat (limited to 'app-arch/lrzip-next')
-rw-r--r-- | app-arch/lrzip-next/Manifest | 2 | ||||
-rw-r--r-- | app-arch/lrzip-next/files/lrzip-next-0.13.1-fix-lzma_asm_makefile-echo.patch | 20 | ||||
-rw-r--r-- | app-arch/lrzip-next/files/lrzip-next-0.13.1-use-acx_pthread-configure_ac.patch | 33 | ||||
-rw-r--r-- | app-arch/lrzip-next/lrzip-next-0.13.1.ebuild (renamed from app-arch/lrzip-next/lrzip-next-0.12.6-r1.ebuild) | 30 | ||||
-rw-r--r-- | app-arch/lrzip-next/lrzip-next-9999.ebuild | 77 | ||||
-rw-r--r-- | app-arch/lrzip-next/metadata.xml | 3 |
6 files changed, 153 insertions, 12 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 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-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 @@ <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> |