From 5b2cdd1c7d1743ea2937248ccc02bca9517a5771 Mon Sep 17 00:00:00 2001 From: Sam James Date: Sat, 9 Mar 2024 21:02:15 +0000 Subject: app-arch/xz-utils: add 5.6.1 Bug: https://bugs.gentoo.org/925415 Signed-off-by: Sam James --- app-arch/xz-utils/Manifest | 2 + app-arch/xz-utils/xz-utils-5.6.1.ebuild | 141 ++++++++++++++++++++++++++++++++ 2 files changed, 143 insertions(+) create mode 100644 app-arch/xz-utils/xz-utils-5.6.1.ebuild (limited to 'app-arch/xz-utils') diff --git a/app-arch/xz-utils/Manifest b/app-arch/xz-utils/Manifest index 360a44287429..2638e4d9191c 100644 --- a/app-arch/xz-utils/Manifest +++ b/app-arch/xz-utils/Manifest @@ -4,3 +4,5 @@ DIST xz-5.4.6.tar.gz 2889306 BLAKE2B f0bbd33ea7cd64d475c3501f6e76080c8c0080e377f DIST xz-5.4.6.tar.gz.sig 566 BLAKE2B 808f1b5e2a17729f36a05ba88a9c00210cda2afa02923e6f289d13dc2a48f7674cafec6e25660e142d67f01dd941c7390cee2757b054df3a3193dde0791363a1 SHA512 d5e32b944e7492a32c40f675d918796e077f63490a23c6fce5c4d6d1eebc443f129d27a2e888913c5a36c3ffdac75b9c96c1749402283445e0ba9ff72b965741 DIST xz-5.6.0.tar.gz 3036813 BLAKE2B 7b7ed5da5711fee6e53af1c72a6f4aff569d7cf986bca8cd3f3104cbb73342e81306295903a8660476d228344eb17d08e2a005230c06ac7e3d9e27bbaba0e075 SHA512 1ef3cd3607818314e55b28c20263a9088d4b6e5362a45fbd37c17e799e26b4a7579928b99925ffe71e7804b0db2f65936f66a825bac9b23b7b0664f902925de8 DIST xz-5.6.0.tar.gz.sig 566 BLAKE2B 6c073c620b03751fcb40f47612acf96bee67f9dd5c38aa8ccd1f140cf3183ba009b60496fe319c14d9a32bd6cc6563f142d1716d9ae1e0554f77114dc9fc8f21 SHA512 2800c3f440b6b17b61c418e12945f136535cc5a59069be2ee0de37e312e9ad16a29338152990eeb22ebe6cc3513679bdc40336cfa089a279d3b3476ac9d13ed0 +DIST xz-5.6.1.tar.gz 3045434 BLAKE2B b3fc3140c9655e812a03800a5ed8ac709aaafaee2ce5d3a62defdd085e643fa639de44beb64833160f4eb12829ad25b96d9f50a8c3d56d79cd5bbef71b9009b2 SHA512 8af100eb83288f032e4813be2bf8de7d733c8761f77f078776c1391709241ad8fe3192d107664786e2543677915c5eeb3fe7add5c53b48b50c10a9de7c9f4fda +DIST xz-5.6.1.tar.gz.sig 566 BLAKE2B d515e60da078e6cb79a2c7a9daa3c8326487d7e8c0f1398d6059c53493232c3a3c21174dab5904833d0938a59fdb02f86aab05767d8cf02f8ee53981d3767fae SHA512 73f50ff5ce7f9d0a3bed1bc7d9e26de2217915517d2057f0c7102374eb20de1bb8b02a2f78680aae80b55913b2ede5141a118c51a2f565c6eba6ae8406474938 diff --git a/app-arch/xz-utils/xz-utils-5.6.1.ebuild b/app-arch/xz-utils/xz-utils-5.6.1.ebuild new file mode 100644 index 000000000000..f3c9351bf44b --- /dev/null +++ b/app-arch/xz-utils/xz-utils-5.6.1.ebuild @@ -0,0 +1,141 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Remember: we cannot leverage autotools in this ebuild in order +# to avoid circular deps with autotools + +EAPI=8 + +inherit flag-o-matic libtool multilib multilib-minimal preserve-libs toolchain-funcs + +if [[ ${PV} == 9999 ]] ; then + # Per tukaani.org, git.tukaani.org is a mirror of github and + # may be behind. + EGIT_REPO_URI=" + https://github.com/tukaani-project/xz + https://git.tukaani.org/xz.git + " + inherit git-r3 autotools + + # bug #272880 and bug #286068 + BDEPEND="sys-devel/gettext >=dev-build/libtool-2" +else + VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/jiatan.asc + inherit verify-sig + + MY_P="${PN/-utils}-${PV/_}" + SRC_URI=" + https://github.com/tukaani-project/xz/releases/download/v${PV/_}/${MY_P}.tar.gz + mirror://sourceforge/lzmautils/${MY_P}.tar.gz + https://tukaani.org/xz/${MY_P}.tar.gz + verify-sig? ( + https://github.com/tukaani-project/xz/releases/download/v${PV/_}/${MY_P}.tar.gz.sig + https://tukaani.org/xz/${MY_P}.tar.gz.sig + ) + " + + if [[ ${PV} != *_alpha* && ${PV} != *_beta* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + fi + + S="${WORKDIR}/${MY_P}" +fi + +DESCRIPTION="Utils for managing LZMA compressed files" +HOMEPAGE="https://tukaani.org/xz/" + +# See top-level COPYING file as it outlines the various pieces and their licenses. +LICENSE="0BSD LGPL-2.1+ GPL-2+ doc? ( CC-BY-SA-4.0 )" +SLOT="0" +IUSE="cpu_flags_arm_crc32 doc +extra-filters pgo nls static-libs" + +if [[ ${PV} != 9999 ]] ; then + BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-jiatan )" +fi + +src_prepare() { + default + + if [[ ${PV} == 9999 ]] ; then + eautopoint + eautoreconf + else + # Allow building shared libs on Solaris/x64 + elibtoolize + fi +} + +multilib_src_configure() { + local myconf=( + --enable-threads + $(multilib_native_use_enable doc) + $(use_enable nls) + $(use_enable static-libs static) + $(use_enable cpu_flags_arm_crc32 arm64-crc32) + ) + + if ! multilib_is_native_abi ; then + myconf+=( + --disable-{xz,xzdec,lzmadec,lzmainfo,lzma-links,scripts} + ) + fi + + if ! use extra-filters ; then + myconf+=( + # LZMA1 + LZMA2 for standard .lzma & .xz files + --enable-encoders=lzma1,lzma2 + --enable-decoders=lzma1,lzma2 + + # those are used by default, depending on preset + --enable-match-finders=hc3,hc4,bt4 + + # CRC64 is used by default, though some (old?) files use CRC32 + --enable-checks=crc32,crc64 + ) + fi + + if [[ ${CHOST} == *-solaris* ]] ; then + export gl_cv_posix_shell="${EPREFIX}"/bin/sh + + # Undo Solaris-based defaults pointing to /usr/xpg5/bin + myconf+=( --disable-path-for-script ) + fi + + ECONF_SOURCE="${S}" econf "${myconf[@]}" +} + +multilib_src_compile() { + # -fprofile-partial-training because upstream note the test suite isn't super comprehensive + # See https://documentation.suse.com/sbp/all/html/SBP-GCC-10/index.html#sec-gcc10-pgo + local pgo_generate_flags=$(usev pgo "-fprofile-update=atomic -fprofile-dir=${T}/${ABI}-pgo -fprofile-generate=${T}/${ABI}-pgo $(test-flags-CC -fprofile-partial-training)") + local pgo_use_flags=$(usev pgo "-fprofile-use=${T}/${ABI}-pgo -fprofile-dir=${T}/${ABI}-pgo $(test-flags-CC -fprofile-partial-training)") + + emake CFLAGS="${CFLAGS} ${pgo_generate_flags}" + + if use pgo ; then + emake CFLAGS="${CFLAGS} ${pgo_generate_flags}" -k check + + if tc-is-clang; then + llvm-profdata merge "${T}"/${ABI}-pgo --output="${T}"/${ABI}-pgo/default.profdata || die + fi + + emake clean + emake CFLAGS="${CFLAGS} ${pgo_use_flags}" + fi +} + +multilib_src_install_all() { + find "${ED}" -type f -name '*.la' -delete || die + + if use doc ; then + rm "${ED}"/usr/share/doc/${PF}/COPYING* || die + fi +} + +pkg_preinst() { + preserve_old_lib /usr/$(get_libdir)/liblzma$(get_libname 0) +} + +pkg_postinst() { + preserve_old_lib_notify /usr/$(get_libdir)/liblzma$(get_libname 0) +} -- cgit v1.2.3-65-gdbad