commit:     f5f60c948b12ac20880e220e29e631c94e0d09b5
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 14 13:45:25 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sun Jul 14 13:45:25 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f5f60c94

app-arch/bzip2: Bump to version 1.0.8

Package-Manager: Portage-2.3.69, Repoman-2.3.16
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 app-arch/bzip2/Manifest                            |   1 +
 app-arch/bzip2/bzip2-1.0.8.ebuild                  | 114 +++++++++++++++++++++
 app-arch/bzip2/files/bzip2-1.0.8-mingw.patch       |  16 +++
 .../files/bzip2-1.0.8-out-of-tree-build.patch      |  76 ++++++++++++++
 app-arch/bzip2/files/bzip2-1.0.8-saneso.patch      |  13 +++
 5 files changed, 220 insertions(+)

diff --git a/app-arch/bzip2/Manifest b/app-arch/bzip2/Manifest
index ace5eb289ae..697d1445ac9 100644
--- a/app-arch/bzip2/Manifest
+++ b/app-arch/bzip2/Manifest
@@ -1,2 +1,3 @@
 DIST bzip2-1.0.6.tar.gz 782025 BLAKE2B 
b31533af7c71d715e6600874bb0a11b9b3aebbb08af0414a6d88bd5a2ad879a482ad408338159cb6c241815da8f48798d2ea7789ea971431d0be42ee827b0a7e
 SHA512 
00ace5438cfa0c577e5f578d8a808613187eff5217c35164ffe044fbafdfec9e98f4192c02a7d67e01e5a5ccced630583ad1003c37697219b0f147343a3fdd12
 DIST bzip2-1.0.7.tar.gz 809680 BLAKE2B 
da185d9771dd83d59f2c13ea32e9a514ce50c97d69145ca2c4c8f28749fc85c1aec491c5100f4fc6b2183ee397015b7e74a0407dc1d7a360db159a0a3676fd7a
 SHA512 
e0e19b493e6b1f7beeb0eeb0be8a6358c24202173f28acb1e902a768835be9e24f2cb966452fbc90fc3e4e692532ce0c7e86d06aef2d52c0d2a9ac16e12ec8c8
+DIST bzip2-1.0.8.tar.gz 810029 BLAKE2B 
22ab3acd84f4db8c3d6f59340c252faedfd4447cea00dafbd652e65b6cf8a20adf6835c22e58563004cfafdb15348c924996230b4b23cae42da5e25eeac4bdad
 SHA512 
083f5e675d73f3233c7930ebe20425a533feedeaaa9d8cc86831312a6581cefbe6ed0d08d2fa89be81082f2a5abdabca8b3c080bf97218a1bd59dc118a30b9f3

diff --git a/app-arch/bzip2/bzip2-1.0.8.ebuild 
b/app-arch/bzip2/bzip2-1.0.8.ebuild
new file mode 100644
index 00000000000..fd6f8529985
--- /dev/null
+++ b/app-arch/bzip2/bzip2-1.0.8.ebuild
@@ -0,0 +1,114 @@
+# Copyright 1999-2019 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
+
+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="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv 
~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+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
+}
+
+bemake() {
+       emake \
+               VPATH="${S}" \
+               CC="$(tc-getCC)" \
+               AR="$(tc-getAR)" \
+               RANLIB="$(tc-getRANLIB)" \
+               "$@"
+}
+
+multilib_src_compile() {
+       bemake -f "${S}"/Makefile-libbz2_so all
+       # Make sure we link against the shared lib #504648
+       ln -s libbz2.so.${PV} libbz2.so || 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.so.${PV}
+       local v
+       for v in libbz2.so{,.{${PV%%.*},${PV%.*}}} ; do
+               dosym libbz2.so.${PV} /usr/$(get_libdir)/${v}
+       done
+       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/files/bzip2-1.0.8-mingw.patch 
b/app-arch/bzip2/files/bzip2-1.0.8-mingw.patch
new file mode 100644
index 00000000000..b512a8f466e
--- /dev/null
+++ b/app-arch/bzip2/files/bzip2-1.0.8-mingw.patch
@@ -0,0 +1,16 @@
+make it build for mingw targets
+
+https://bugs.gentoo.org/393573
+
+--- a/bzlib.h
++++ b/bzlib.h
+@@ -81,6 +81,9 @@ typedef
+       /* windows.h define small to char */
+ #      undef small
+ #   endif
++#   ifndef WINAPI
++#   define WINAPI
++#   endif
+ #   ifdef BZ_EXPORT
+ #   define BZ_API(func) WINAPI func
+ #   define BZ_EXTERN extern

diff --git a/app-arch/bzip2/files/bzip2-1.0.8-out-of-tree-build.patch 
b/app-arch/bzip2/files/bzip2-1.0.8-out-of-tree-build.patch
new file mode 100644
index 00000000000..4a641fdb2e8
--- /dev/null
+++ b/app-arch/bzip2/files/bzip2-1.0.8-out-of-tree-build.patch
@@ -0,0 +1,76 @@
+--- bzip2-1.0.8/Makefile
++++ bzip2-1.0.8/Makefile
+@@ -54,7 +54,6 @@
+ 
+ check: test
+ test: bzip2
+-      @cat words1
+       ./bzip2 -1  < sample1.ref > sample1.rb2
+       ./bzip2 -2  < sample2.ref > sample2.rb2
+       ./bzip2 -3  < sample3.ref > sample3.rb2
+@@ -67,7 +66,6 @@
+       cmp sample1.tst sample1.ref
+       cmp sample2.tst sample2.ref
+       cmp sample3.tst sample3.ref
+-      @cat words3
+ 
+ install: bzip2 bzip2recover
+       if ( test ! -d $(PREFIX)/bin ) ; then mkdir -p $(PREFIX)/bin ; fi
+@@ -113,25 +111,8 @@
+       sample1.rb2 sample2.rb2 sample3.rb2 \
+       sample1.tst sample2.tst sample3.tst
+ 
+-blocksort.o: blocksort.c
+-      @cat words0
+-      $(CC) $(CFLAGS) -c blocksort.c
+-huffman.o: huffman.c
+-      $(CC) $(CFLAGS) -c huffman.c
+-crctable.o: crctable.c
+-      $(CC) $(CFLAGS) -c crctable.c
+-randtable.o: randtable.c
+-      $(CC) $(CFLAGS) -c randtable.c
+-compress.o: compress.c
+-      $(CC) $(CFLAGS) -c compress.c
+-decompress.o: decompress.c
+-      $(CC) $(CFLAGS) -c decompress.c
+-bzlib.o: bzlib.c
+-      $(CC) $(CFLAGS) -c bzlib.c
+-bzip2.o: bzip2.c
+-      $(CC) $(CFLAGS) -c bzip2.c
+-bzip2recover.o: bzip2recover.c
+-      $(CC) $(CFLAGS) -c bzip2recover.c
++%.o: %.c
++      $(CC) $(CFLAGS) -c $<
+ 
+ 
+ distclean: clean
+--- bzip2-1.0.8/Makefile-libbz2_so
++++ bzip2-1.0.8/Makefile-libbz2_so
+@@ -36,24 +36,10 @@
+ 
+ all: $(OBJS)
+       $(CC) $(LDFLAGS) -shared -Wl,-soname -Wl,libbz2.so.1.0 -o 
libbz2.so.1.0.8 $(OBJS)
+-      $(CC) $(LDFLAGS) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.1.0.8
+-      rm -f libbz2.so.1.0
+-      ln -s libbz2.so.1.0.8 libbz2.so.1.0
++      ln -sf libbz2.so.1.0.8 libbz2.so.1.0
+ 
+ clean: 
+       rm -f $(OBJS) bzip2.o libbz2.so.1.0.8 libbz2.so.1.0 bzip2-shared
+ 
+-blocksort.o: blocksort.c
+-      $(CC) $(CFLAGS) -c blocksort.c
+-huffman.o: huffman.c
+-      $(CC) $(CFLAGS) -c huffman.c
+-crctable.o: crctable.c
+-      $(CC) $(CFLAGS) -c crctable.c
+-randtable.o: randtable.c
+-      $(CC) $(CFLAGS) -c randtable.c
+-compress.o: compress.c
+-      $(CC) $(CFLAGS) -c compress.c
+-decompress.o: decompress.c
+-      $(CC) $(CFLAGS) -c decompress.c
+-bzlib.o: bzlib.c
+-      $(CC) $(CFLAGS) -c bzlib.c
++%.o: %.c
++      $(CC) $(CFLAGS) -c $<

diff --git a/app-arch/bzip2/files/bzip2-1.0.8-saneso.patch 
b/app-arch/bzip2/files/bzip2-1.0.8-saneso.patch
new file mode 100644
index 00000000000..08430831baa
--- /dev/null
+++ b/app-arch/bzip2/files/bzip2-1.0.8-saneso.patch
@@ -0,0 +1,13 @@
+--- bzip2-1.0.8/Makefile-libbz2_so
++++ bzip2-1.0.8/Makefile-libbz2_so
+@@ -35,8 +35,8 @@
+       bzlib.o
+ 
+ all: $(OBJS)
+-      $(CC) -shared -Wl,-soname -Wl,libbz2.so.1.0 -o libbz2.so.1.0.8 $(OBJS)
+-      $(CC) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.1.0.8
++      $(CC) $(LDFLAGS) -shared -Wl,-soname -Wl,libbz2.so.1.0 -o 
libbz2.so.1.0.8 $(OBJS)
++      $(CC) $(LDFLAGS) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.1.0.8
+       rm -f libbz2.so.1.0
+       ln -s libbz2.so.1.0.8 libbz2.so.1.0
+ 

Reply via email to