summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2011-09-21 19:36:25 +0000
committerMike Frysinger <vapier@gentoo.org>2011-09-21 19:36:25 +0000
commit0b693048910107257ef62b475ad7461e7d12ed0d (patch)
treee18a3c6f97a34bcbcecd6cef91008423c4230629 /sys-libs/zlib
parentAdd back because redmine depends on this specific version. Sigh. Thanks to Mr... (diff)
downloadhistorical-0b693048910107257ef62b475ad7461e7d12ed0d.tar.gz
historical-0b693048910107257ef62b475ad7461e7d12ed0d.tar.bz2
historical-0b693048910107257ef62b475ad7461e7d12ed0d.zip
Add USE=static-libs support, and USE=minizip to control building of the minizip code as a library for other apps to link against (like vlc) #383351.
Package-Manager: portage-2.2.0_alpha58/cvs/Linux x86_64
Diffstat (limited to 'sys-libs/zlib')
-rw-r--r--sys-libs/zlib/ChangeLog10
-rw-r--r--sys-libs/zlib/Manifest12
-rw-r--r--sys-libs/zlib/files/zlib-1.2.4-minizip-autotools.patch64
-rw-r--r--sys-libs/zlib/metadata.xml3
-rw-r--r--sys-libs/zlib/zlib-1.2.5.1-r2.ebuild97
5 files changed, 180 insertions, 6 deletions
diff --git a/sys-libs/zlib/ChangeLog b/sys-libs/zlib/ChangeLog
index eb1c72932801..11fae272abf7 100644
--- a/sys-libs/zlib/ChangeLog
+++ b/sys-libs/zlib/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for sys-libs/zlib
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-libs/zlib/ChangeLog,v 1.94 2011/09/16 21:40:42 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/zlib/ChangeLog,v 1.95 2011/09/21 19:36:25 vapier Exp $
+
+*zlib-1.2.5.1-r2 (21 Sep 2011)
+
+ 21 Sep 2011; Mike Frysinger <vapier@gentoo.org>
+ +files/zlib-1.2.4-minizip-autotools.patch, +zlib-1.2.5.1-r2.ebuild,
+ metadata.xml:
+ Add USE=static-libs support, and USE=minizip to control building of the
+ minizip code as a library for other apps to link against (like vlc) #383351.
*zlib-1.2.5.1-r1 (16 Sep 2011)
diff --git a/sys-libs/zlib/Manifest b/sys-libs/zlib/Manifest
index ad25d00f2de0..68a7f33f5489 100644
--- a/sys-libs/zlib/Manifest
+++ b/sys-libs/zlib/Manifest
@@ -10,6 +10,7 @@ AUX zlib-1.2.3-build.patch 1525 RMD160 4282e2acca68f6c9301bd8881f6c2a12bfbe7820
AUX zlib-1.2.3-mingw-implib.patch 245 RMD160 a80d95f2c3563e21f813f805e13a005c6e3832ec SHA1 5cc94c2ee9f0c66098721ca4b98a01a0b2f8c00b SHA256 27f8a0f15dd2a04771875e248fe311854d3880ef61fd9d2fbdcea8326427fd95
AUX zlib-1.2.3-r1-bsd-soname.patch 572 RMD160 40351d687838d4889ee1cb47aa594f0f9beefca2 SHA1 fea13311c55b87ee17362e329517200c9e18af73 SHA256 20ad1fce102236f6fcec2d825cdd4261011b4cb01f4f57b91cdecac227f9600d
AUX zlib-1.2.3-visibility-support.patch 1016 RMD160 39492a1537bad731fd568a0af0ad39e93ceb3a07 SHA1 326e03782ed533a480115b9bcd5e96773f7570df SHA256 77acaffa3dccf2d48cfde0f9a30d10a55b4d9aad7c9c3b51c50925b6dadc8df6
+AUX zlib-1.2.4-minizip-autotools.patch 1584 RMD160 3ce936574704abf75e33263d98561baab29851b0 SHA1 2f9b28ee19df3e6c6b42b4a7278a8cd892e95566 SHA256 adf77c7c57de45c974f211a72cdee7496824557299dbd5db3f0e4b5c2f811fce
AUX zlib-1.2.5-fbsd_chosts.patch 574 RMD160 6671a57d237db1ed78cdce8886c180aa4cf386d2 SHA1 f5a9b7c3127314720874fc7a00971db159808330 SHA256 a717f7d4f08a86f2ea4f0d926c2944b270948a879e3c5585a4f4fdef4fd95908
AUX zlib-1.2.5-ldflags.patch 879 RMD160 027ea24420f1e768c2fac995136ca26c9d874faf SHA1 3b867f0d6b212f78a2d654cd8d4371d0453d7524 SHA256 4eedfead8dc883649050be09fc112ad6b67b45605ccf805dde292636e5b2b953
AUX zlib-1.2.5-lfs-decls.patch 519 RMD160 2b9eee4022f6344c1bc61a4e2065651085979f4c SHA1 6cf544f50ac6fb8635725d253e24d531dc2bb203 SHA256 8953fea34d7eb2bf0a5393e5aeacb6c6c17f25fa2524c5f557f459184e2e20d8
@@ -21,13 +22,14 @@ DIST zlib-1.2.5.tar.bz2 486374 RMD160 c6c4c2a2a205061b21487e69234106f5517b4b32 S
EBUILD zlib-1.2.3-r1.ebuild 2108 RMD160 86035d0567fbd74c1e4f066a8650a235824527c1 SHA1 f329bb4098c9b4d526bed79ef2d3932d178004e7 SHA256 1826babce8086b210791956f9a698909e5aea6ad695d18a15d5fbb774e058552
EBUILD zlib-1.2.5-r2.ebuild 1985 RMD160 51991cece3b068936d37ba832d51813536888d13 SHA1 785858d4dee04e3ac110f6bdfc29e2dc76276683 SHA256 0a99b2f2b02be7316b92390f0b7d2f3654b9e9e4cad2616f96a6c304ea3ac598
EBUILD zlib-1.2.5.1-r1.ebuild 2120 RMD160 f8eb787ce206bafafae3cba50f4982b4beea60e4 SHA1 3cb35b8e30ea41fdf6029274862ace3922f3ff14 SHA256 d4211f602ec3fb4f7f18655af3a49b22bd7e247b551328f35fd599cb2223f56c
+EBUILD zlib-1.2.5.1-r2.ebuild 2696 RMD160 9904a4be5e26602d3c2e1b59bce474ecd675e524 SHA1 77544b9a70d37cce5a9af1d62eeb386ad6e704d0 SHA256 8aadaca399bf8ad5b45e93e4d03ee17aac2c610a27ae723e75bf4542aa6856b9
EBUILD zlib-1.2.5.1.ebuild 1969 RMD160 fd7596c2f8d93859ae68329622b93b3c2cb3eca6 SHA1 4fb8715b7b760e8e8bd8d7558f2c61791dc1bf38 SHA256 6e6f0643c77d90a425c288f1e6097bff27cb5bac8ce2070ec3c0526d69ef6280
-MISC ChangeLog 13502 RMD160 f5ae7a198b422e26642039210d5477e8181173b6 SHA1 bd45967f51627a7a523a0b890073200aef5d3a3e SHA256 af58db7d7039c03b910ba4568295afd2e97ee2a262d49b0179ac4c68738895fe
-MISC metadata.xml 164 RMD160 f43cbec30b7074319087c9acffdb9354b17b0db3 SHA1 9c213f5803676c56439df3716be07d6692588856 SHA256 f5f2891f2a4791cd31350bb2bb572131ad7235cd0eeb124c9912c187ac10ce92
+MISC ChangeLog 13824 RMD160 1ac4447f211b65f7585c6f9488612108f05d23b4 SHA1 15f01d7978c9765350ec31060475afa5bf4e868b SHA256 0038a9e4c2eaf5e51e04b2e41a1c8f55f72a09ffc11a6fc1358fca6919fd25e5
+MISC metadata.xml 269 RMD160 63bbf881a18eb43b70b7ffb6af5558192058ee53 SHA1 9ba95b82087621f9e7cb966b00ce81b367e39ac9 SHA256 ff07e786e28da9cde8f02f75cae044a5f640ce396f3e62419d48da1367f0014c
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.17 (GNU/Linux)
-iF4EAREIAAYFAk5zwmEACgkQaC/OocHi7JY7wgD8DutbmDZePkm2GZEeqfoIo0T4
-l8rhU0fC28L5FFGXrW4A/3IoRp2/9LtFXbdYBhhDw94n8frlmEJIx6kPDRQQI0Tm
-=/Ghc
+iF4EAREIAAYFAk56PMAACgkQaC/OocHi7JYSBwD/b7XxB/Kz7ZD88KwkvuGt2TTr
+i5UV0IWc8UbO9lNJweUA/iVz9O639KBv+8RMs5sAz3tndqb+S93FdGe1GwWKwKHE
+=kxTm
-----END PGP SIGNATURE-----
diff --git a/sys-libs/zlib/files/zlib-1.2.4-minizip-autotools.patch b/sys-libs/zlib/files/zlib-1.2.4-minizip-autotools.patch
new file mode 100644
index 000000000000..81a62f0b1d18
--- /dev/null
+++ b/sys-libs/zlib/files/zlib-1.2.4-minizip-autotools.patch
@@ -0,0 +1,64 @@
+sniped & improved from Fedora
+
+--- zlib-1.2.4/contrib/minizip/configure.ac
++++ zlib-1.2.4/contrib/minizip/configure.ac
+@@ -0,0 +1,12 @@
++# -*- Autoconf -*-
++# Process this file with autoconf to produce a configure script.
++
++AC_INIT([minizip], [@ZLIB_VER@], [bugzilla.redhat.com])
++AC_CONFIG_SRCDIR([minigzip.c])
++AM_INIT_AUTOMAKE([foreign])
++LT_INIT
++
++AC_SUBST([HAVE_UNISTD_H], [0])
++AC_CHECK_HEADER([unistd.h], [HAVE_UNISTD_H=1], [])
++AC_CONFIG_FILES([Makefile minizip.pc])
++AC_OUTPUT
+--- zlib-1.2.4/contrib/minizip/Makefile.am
++++ zlib-1.2.4/contrib/minizip/Makefile.am
+@@ -0,0 +1,28 @@
++lib_LTLIBRARIES = libminizip.la
++
++libminizip_la_SOURCES = \
++ ioapi.c \
++ mztools.c \
++ unzip.c \
++ zip.c
++
++libminizip_la_CFLAGS = -I../.. -L../..
++libminizip_la_LDFLAGS = -version-info 1:0:0 -lz
++
++minizip_includedir = $(includedir)/minizip
++minizip_include_HEADERS = \
++ crypt.h \
++ ioapi.h \
++ mztools.h \
++ unzip.h \
++ zip.h
++
++pkgconfigdir = $(libdir)/pkgconfig
++pkgconfig_DATA = minizip.pc
++
++EXTRA_PROGRAMS = miniunzip minizip
++
++miniunzip_SOURCES = miniunz.c
++miniunzip_LDADD = libminizip.la
++
++minizip_SOURCES = minizip.c
++minizip_LDADD = libminizip.la
+--- zlib-1.2.4/contrib/minizip/minizip.pc.in
++++ zlib-1.2.4/contrib/minizip/minizip.pc.in
+@@ -0,0 +1,12 @@
++prefix=@prefix@
++exec_prefix=@exec_prefix@
++libdir=@libdir@
++includedir=@includedir@/minizip
++
++Name: minizip
++Description: Minizip zip file manipulation library
++Requires:
++Version: @PACKAGE_VERSION@
++Libs: -L${libdir} -lminizip
++Libs.private: -lz
++Cflags: -I${includedir}
diff --git a/sys-libs/zlib/metadata.xml b/sys-libs/zlib/metadata.xml
index 96a2d586367d..cfdad4c916fd 100644
--- a/sys-libs/zlib/metadata.xml
+++ b/sys-libs/zlib/metadata.xml
@@ -2,4 +2,7 @@
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<herd>base-system</herd>
+<use>
+ <flag name='minizip'>include the minizip library for quick and dirty zip extraction</flag>
+</use>
</pkgmetadata>
diff --git a/sys-libs/zlib/zlib-1.2.5.1-r2.ebuild b/sys-libs/zlib/zlib-1.2.5.1-r2.ebuild
new file mode 100644
index 000000000000..4d8fbc704173
--- /dev/null
+++ b/sys-libs/zlib/zlib-1.2.5.1-r2.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-libs/zlib/zlib-1.2.5.1-r2.ebuild,v 1.1 2011/09/21 19:36:25 vapier Exp $
+
+inherit autotools eutils toolchain-funcs
+
+DESCRIPTION="Standard (de)compression library"
+HOMEPAGE="http://www.zlib.net/"
+SRC_URI="http://www.gzip.org/zlib/${P}.tar.gz
+ http://www.zlib.net/current/beta/${P}.tar.gz"
+
+LICENSE="ZLIB"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd"
+IUSE="minizip static-libs"
+
+RDEPEND="!<dev-libs/libxml2-2.7.7" #309623
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ # trust exit status of the compiler rather than stderr #55434
+ # -if test "`(...) 2>&1`" = ""; then
+ # +if (...) 2>/dev/null; then
+ sed -i 's|\<test "`\([^"]*\) 2>&1`" = ""|\1 2>/dev/null|' configure || die
+
+ epatch "${FILESDIR}"/${P}-version.patch
+ epatch "${FILESDIR}"/${P}-symlinks.patch
+ EPATCH_OPTS=-p1 epatch "${FILESDIR}"/${PN}-1.2.4-minizip-autotools.patch
+ if use minizip ; then
+ cd contrib/minizip
+ sed -i "s:@ZLIB_VER@:${PV}:" configure.ac || die
+ ln -s ../../minigzip.c || die
+ eautoreconf
+ fi
+}
+
+usex() { use $1 && echo ${2:-yes} || echo ${3:-no} ; }
+echoit() { echo "$@"; "$@"; }
+src_compile() {
+ case ${CHOST} in
+ *-mingw*|mingw*)
+ emake -f win32/Makefile.gcc STRIP=true PREFIX=${CHOST}- || die
+ sed \
+ -e 's|@prefix@|/usr|g' \
+ -e 's|@exec_prefix@|${prefix}|g' \
+ -e 's|@libdir@|${exec_prefix}/'$(get_libdir)'|g' \
+ -e 's|@sharedlibdir@|${exec_prefix}/'$(get_libdir)'|g' \
+ -e 's|@includedir@|${prefix}/include|g' \
+ -e 's|@VERSION@|'${PV}'|g' \
+ zlib.pc.in > zlib.pc || die
+ ;;
+ *) # not an autoconf script, so can't use econf
+ echoit ./configure --shared --prefix=/usr --libdir=/usr/$(get_libdir) || die
+ emake || die
+ ;;
+ esac
+ if use minizip ; then
+ cd contrib/minizip
+ econf $(use_enable static-libs static) || die
+ emake || die
+ fi
+}
+
+src_install() {
+ case ${CHOST} in
+ *-mingw*|mingw*)
+ emake -f win32/Makefile.gcc install \
+ BINARY_PATH="${D}/usr/bin" \
+ LIBRARY_PATH="${D}/usr/$(get_libdir)" \
+ INCLUDE_PATH="${D}/usr/include" \
+ SHARED_MODE=1 \
+ || die
+ insinto /usr/share/pkgconfig
+ doins zlib.pc || die
+ ;;
+
+ *)
+ emake install DESTDIR="${D}" LDCONFIG=: || die
+ gen_usr_ldscript -a z
+ ;;
+ esac
+
+ # clean up namespace a little #383179
+ # we do it here so we only have to tweak 2 files
+ sed -i -r 's:\<(O[FN])\>:_Z_\1:g' "${D}"/usr/include/*.h
+
+ dodoc FAQ README ChangeLog doc/*.txt
+
+ if use minizip ; then
+ cd contrib/minizip
+ emake install DESTDIR="${D}" || die
+ dodoc *.txt
+ fi
+
+ use static-libs || rm -f "${D}"/usr/$(get_libdir)/*.{a,la}
+}