diff options
author | Fabian Groffen <grobian@gentoo.org> | 2022-12-31 15:38:11 +0100 |
---|---|---|
committer | Fabian Groffen <grobian@gentoo.org> | 2022-12-31 15:38:11 +0100 |
commit | 9e0c9cfea7698608fc671bd231a2636b85bf64f8 (patch) | |
tree | 7fbeb06af5b30d8b1971d9332ad761eb73fa1451 /app-arch | |
parent | scripts/bootstrap-prefix: Set a prefix-guest profile for RAP stage2 (diff) | |
download | prefix-9e0c9cfea7698608fc671bd231a2636b85bf64f8.tar.gz prefix-9e0c9cfea7698608fc671bd231a2636b85bf64f8.tar.bz2 prefix-9e0c9cfea7698608fc671bd231a2636b85bf64f8.zip |
app-arch/bzip2: sync with gx86
Signed-off-by: Fabian Groffen <grobian@gentoo.org>
Diffstat (limited to 'app-arch')
-rw-r--r-- | app-arch/bzip2/bzip2-1.0.8-r1.ebuild | 142 | ||||
-rw-r--r-- | app-arch/bzip2/bzip2-1.0.8-r4.ebuild (renamed from app-arch/bzip2/bzip2-1.0.8-r3.ebuild) | 31 |
2 files changed, 20 insertions, 153 deletions
diff --git a/app-arch/bzip2/bzip2-1.0.8-r1.ebuild b/app-arch/bzip2/bzip2-1.0.8-r1.ebuild deleted file mode 100644 index 2ba7042d39..0000000000 --- a/app-arch/bzip2/bzip2-1.0.8-r1.ebuild +++ /dev/null @@ -1,142 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# XXX: atm, libbz2.a is always PIC :(, so it is always built quickly -# (since we're building shared libs) ... - -EAPI=7 - -inherit toolchain-funcs multilib-minimal usr-ldscript prefix - -DESCRIPTION="A high-quality data compressor used extensively by Gentoo Linux" -HOMEPAGE="https://sourceware.org/bzip2/" -SRC_URI="https://sourceware.org/pub/${PN}/${P}.tar.gz" - -LICENSE="BZIP2" -SLOT="0/1" # subslot = SONAME -KEYWORDS="~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt" -IUSE="static static-libs" - -PATCHES=( - "${FILESDIR}"/${PN}-1.0.4-makefile-CFLAGS.patch - "${FILESDIR}"/${PN}-1.0.8-saneso.patch - "${FILESDIR}"/${PN}-1.0.4-man-links.patch #172986 - "${FILESDIR}"/${PN}-1.0.6-progress.patch - "${FILESDIR}"/${PN}-1.0.3-no-test.patch - "${FILESDIR}"/${PN}-1.0.8-mingw.patch #393573 - "${FILESDIR}"/${PN}-1.0.8-out-of-tree-build.patch -) - -DOCS=( CHANGES README{,.COMPILATION.PROBLEMS,.XML.STUFF} manual.pdf ) -HTML_DOCS=( manual.html ) - -src_prepare() { - default - - # - Use right man path - # - Generate symlinks instead of hardlinks - # - pass custom variables to control libdir - sed -i \ - -e 's:\$(PREFIX)/man:\$(PREFIX)/share/man:g' \ - -e 's:ln -s -f $(PREFIX)/bin/:ln -s -f :' \ - -e 's:$(PREFIX)/lib:$(PREFIX)/$(LIBDIR):g' \ - Makefile || die - - hprefixify -w "/^PATH=/" bz{diff,grep,more} - # this a makefile for Darwin, which already "includes" saneso - cp "${FILESDIR}"/${P}-Makefile-libbz2_dylib Makefile-libbz2_dylib || die - - if [[ ${CHOST} == *-cygwin* ]] ; then - sed -i -e "s/-o libbz2\.so\.${PV}/-Wl,--out-implib=libbz2$(get_libname ${PV})/" \ - -e "s/-Wl,-soname -Wl,libbz2\.so\.1/-o cygbz2-${PV%%.*}.dll/" \ - -e "s/libbz2\.so/libbz2$(get_libname)/g" \ - Makefile-libbz2_so - fi -} - -bemake() { - emake \ - VPATH="${S}" \ - CC="$(tc-getCC)" \ - AR="$(tc-getAR)" \ - RANLIB="$(tc-getRANLIB)" \ - "$@" -} - -multilib_src_compile() { - local checkopts= - case "${CHOST}" in - *-darwin*) - bemake PREFIX="${EPREFIX}"/usr -f "${S}"/Makefile-libbz2_dylib all - ;; - *) - bemake -f "${S}"/Makefile-libbz2_so all - ;; - esac - # Make sure we link against the shared lib #504648 - ln -sf libbz2$(get_libname ${PV}) libbz2$(get_libname) || die - bemake -f "${S}"/Makefile all LDFLAGS="${LDFLAGS} $(usex static -static '')" -} - -multilib_src_install() { - into /usr - - # Install the shared lib manually. We install: - # .x.x.x - standard shared lib behavior - # .x.x - SONAME some distros use #338321 - # .x - SONAME Gentoo uses - dolib.so libbz2$(get_libname ${PV}) - [[ ${CHOST} == *-cygwin* ]] && dobin cygbz2-${PV%%.*}.dll - local v - for v in libbz2$(get_libname) libbz2$(get_libname ${PV%%.*}) libbz2$(get_libname ${PV%.*}) ; do - dosym libbz2$(get_libname ${PV}) /usr/$(get_libdir)/${v} - done - - # Install libbz2.so.1.0 due to accidental soname change in 1.0.7. - # Reference: 98da0ad82192d21ad74ae52366ea8466e2acea24. - # OK to remove one year after 2020-04-11. - if [[ ! -L "${ED}/usr/$(get_libdir)/libbz2$(get_libname 1.0)" ]]; then - dosym libbz2.so.${PV} "/usr/$(get_libdir)/libbz2$(get_libname 1.0)" - fi - - use static-libs && dolib.a libbz2.a - - if multilib_is_native_abi ; then - gen_usr_ldscript -a bz2 - - dobin bzip2recover - into / - dobin bzip2 - fi -} - -multilib_src_install_all() { - # `make install` doesn't cope with out-of-tree builds, nor with - # installing just non-binaries, so handle things ourselves. - insinto /usr/include - doins bzlib.h - into /usr - dobin bz{diff,grep,more} - doman *.1 - - dosym bzdiff /usr/bin/bzcmp - dosym bzdiff.1 /usr/share/man/man1/bzcmp.1 - - dosym bzmore /usr/bin/bzless - dosym bzmore.1 /usr/share/man/man1/bzless.1 - - local x - for x in bunzip2 bzcat bzip2recover ; do - dosym bzip2.1 /usr/share/man/man1/${x}.1 - done - for x in bz{e,f}grep ; do - dosym bzgrep /usr/bin/${x} - dosym bzgrep.1 /usr/share/man/man1/${x}.1 - done - - einstalldocs - - # move "important" bzip2 binaries to /bin and use the shared libbz2.so - dosym bzip2 /bin/bzcat - dosym bzip2 /bin/bunzip2 -} diff --git a/app-arch/bzip2/bzip2-1.0.8-r3.ebuild b/app-arch/bzip2/bzip2-1.0.8-r4.ebuild index 1c2b65d3b8..6608999730 100644 --- a/app-arch/bzip2/bzip2-1.0.8-r3.ebuild +++ b/app-arch/bzip2/bzip2-1.0.8-r4.ebuild @@ -19,9 +19,12 @@ SLOT="0/1" # subslot = SONAME KEYWORDS="~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt" IUSE="static static-libs" -BDEPEND="verify-sig? ( sec-keys/openpgp-keys-bzip2 )" -RDEPEND="!app-arch/lbzip2[symlink(-)] - !app-arch/pbzip2[symlink(-)]" +BDEPEND=" + verify-sig? ( sec-keys/openpgp-keys-bzip2 ) +" +PDEPEND=" + app-alternatives/bzip2 +" PATCHES=( "${FILESDIR}"/${PN}-1.0.4-makefile-CFLAGS.patch @@ -101,7 +104,7 @@ multilib_src_install() { dobin bzip2recover into / - dobin bzip2 + newbin bzip2 bzip2-reference fi } @@ -112,7 +115,8 @@ multilib_src_install_all() { doins bzlib.h into /usr dobin bz{diff,grep,more} - doman *.1 + doman bz{diff,grep,more}.1 + newman bzip2.1 bzip2-reference.1 dosym bzdiff /usr/bin/bzcmp dosym bzdiff.1 /usr/share/man/man1/bzcmp.1 @@ -120,18 +124,23 @@ multilib_src_install_all() { dosym bzmore /usr/bin/bzless dosym bzmore.1 /usr/share/man/man1/bzless.1 + dosym bzip2-reference.1 /usr/share/man/man1/bzip2recover.1 local x - for x in bunzip2 bzcat bzip2recover ; do - dosym bzip2.1 /usr/share/man/man1/${x}.1 - done for x in bz{e,f}grep ; do dosym bzgrep /usr/bin/${x} dosym bzgrep.1 /usr/share/man/man1/${x}.1 done einstalldocs +} - # move "important" bzip2 binaries to /bin and use the shared libbz2.so - dosym bzip2 /bin/bzcat - dosym bzip2 /bin/bunzip2 +pkg_postinst() { + # ensure to preserve the symlinks before app-alternatives/bzip2 + # is installed + local x + for x in bzip2 bunzip2 bzcat; do + if [[ ! -h ${EROOT}/bin/${x} ]]; then + ln -s bzip2-reference "${EROOT}/bin/${x}" || die + fi + done } |