summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2022-12-01 17:11:16 +0100
committerSam James <sam@gentoo.org>2022-12-01 19:38:23 +0000
commitaa9e23f4d96ed4046d265751ac8d8902f389c26b (patch)
tree28c7af0fc5a3c9a4ef426a82c08fa7c3252e6ff5 /app-arch
parentapp-alternatives/gzip: Add a package for gzip symlinks (diff)
downloadgentoo-aa9e23f4d96ed4046d265751ac8d8902f389c26b.tar.gz
gentoo-aa9e23f4d96ed4046d265751ac8d8902f389c26b.tar.bz2
gentoo-aa9e23f4d96ed4046d265751ac8d8902f389c26b.zip
app-arch/gzip: Support app-alternatives/gzip
Signed-off-by: Michał Górny <mgorny@gentoo.org> Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'app-arch')
-rw-r--r--app-arch/gzip/gzip-1.12-r3.ebuild84
1 files changed, 84 insertions, 0 deletions
diff --git a/app-arch/gzip/gzip-1.12-r3.ebuild b/app-arch/gzip/gzip-1.12-r3.ebuild
new file mode 100644
index 000000000000..98f464a9e840
--- /dev/null
+++ b/app-arch/gzip/gzip-1.12-r3.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/gzip.asc
+inherit flag-o-matic verify-sig
+
+DESCRIPTION="Standard GNU compressor"
+HOMEPAGE="https://www.gnu.org/software/gzip/"
+SRC_URI="mirror://gnu/gzip/${P}.tar.xz
+ https://alpha.gnu.org/gnu/gzip/${P}.tar.xz"
+SRC_URI+=" verify-sig? (
+ mirror://gnu/gzip/${P}.tar.xz.sig
+ https://alpha.gnu.org/gnu/gzip/${P}.tar.xz.sig
+ )"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="pic static"
+
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-gzip )"
+RDEPEND="!app-arch/pigz[symlink(-)]"
+PDEPEND="
+ app-alternatives/gzip
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.3.8-install-symlinks.patch"
+)
+
+src_configure() {
+ use static && append-flags -static
+
+ # Avoid text relocation in gzip
+ use pic && export DEFS="NO_ASM"
+
+ # bug #663928
+ econf --disable-gcc-warnings
+}
+
+src_install() {
+ default
+
+ docinto txt
+ dodoc algorithm.doc gzip.doc
+
+ # Avoid conflict with app-arch/ncompress
+ rm "${ED}"/usr/bin/uncompress || die
+
+ # keep most things in /usr, just the fun stuff in /
+ # also rename them to avoid conflict with app-alternatives/gzip
+ dodir /bin
+ local x
+ for x in gunzip gzip zcat; do
+ mv "${ED}/usr/bin/${x}" "${ED}/bin/${x}-reference" || die
+ done
+ sed -i -e 's:exec gzip:&-reference:' \
+ "${ED}"/bin/{gunzip,zcat}-reference || die
+ mv "${ED}"/usr/share/man/man1/gzip{,-reference}.1 || die
+ rm "${ED}"/usr/share/man/man1/{gunzip,zcat}.1 || die
+}
+
+pkg_postinst() {
+ if [[ -n ${REPLACING_VERSIONS} ]]; then
+ local ver
+ for ver in ${REPLACING_VERSIONS}; do
+ if ver_test "${ver}" -lt "1.12-r2"; then
+ ewarn "This package no longer installs 'uncompress'."
+ ewarn "Please use 'gzip -d' to decompress .Z files."
+ fi
+ done
+ fi
+
+ # ensure to preserve the symlinks before app-alternatives/gzip
+ # is installed
+ local x
+ for x in gunzip gzip zcat; do
+ if [[ ! -h ${EROOT}/bin/${x} ]]; then
+ ln -s "${x}-reference" "${EROOT}/bin/${x}" || die
+ fi
+ done
+}