summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego Elio Pettenò <flameeyes@gentoo.org>2009-10-25 19:37:08 +0000
committerDiego Elio Pettenò <flameeyes@gentoo.org>2009-10-25 19:37:08 +0000
commitc1eae5e40cd58fbf1606205eff7fe6313d71c0f6 (patch)
tree3d81ad7af5ef19943da36fb7b409156184cfc5fa /app-arch
parentFixed issue https://bugs.gentoo.org/show_bug.cgi?id=290468 (diff)
downloadgentoo-2-c1eae5e40cd58fbf1606205eff7fe6313d71c0f6.tar.gz
gentoo-2-c1eae5e40cd58fbf1606205eff7fe6313d71c0f6.tar.bz2
gentoo-2-c1eae5e40cd58fbf1606205eff7fe6313d71c0f6.zip
Bump revision adding a static-libs USE flag to disable libarchive.a build; also remove .la file when disabling static libraries (thanks to Mauro Toffanin for this). Extend the metadata USE documentation to explain that the various USE flags don't stop bsdtar from calling the decompressor command as a filter.
(Portage version: 2.2_rc46/cvs/Linux x86_64)
Diffstat (limited to 'app-arch')
-rw-r--r--app-arch/libarchive/ChangeLog12
-rw-r--r--app-arch/libarchive/libarchive-2.7.1-r1.ebuild85
-rw-r--r--app-arch/libarchive/metadata.xml27
3 files changed, 118 insertions, 6 deletions
diff --git a/app-arch/libarchive/ChangeLog b/app-arch/libarchive/ChangeLog
index 1d741fa0e57f..b613384ea36f 100644
--- a/app-arch/libarchive/ChangeLog
+++ b/app-arch/libarchive/ChangeLog
@@ -1,6 +1,16 @@
# ChangeLog for app-arch/libarchive
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-arch/libarchive/ChangeLog,v 1.67 2009/09/09 13:04:32 flameeyes Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-arch/libarchive/ChangeLog,v 1.68 2009/10/25 19:37:08 flameeyes Exp $
+
+*libarchive-2.7.1-r1 (25 Oct 2009)
+
+ 25 Oct 2009; Diego E. Pettenò <flameeyes@gentoo.org>
+ +libarchive-2.7.1-r1.ebuild, metadata.xml:
+ Bump revision adding a static-libs USE flag to disable libarchive.a build;
+ also remove .la file when disabling static libraries (thanks to Mauro
+ Toffanin for this). Extend the metadata USE documentation to explain that
+ the various USE flags don't stop bsdtar from calling the decompressor
+ command as a filter.
*libarchive-2.7.1 (09 Sep 2009)
diff --git a/app-arch/libarchive/libarchive-2.7.1-r1.ebuild b/app-arch/libarchive/libarchive-2.7.1-r1.ebuild
new file mode 100644
index 000000000000..8ea82869f7b3
--- /dev/null
+++ b/app-arch/libarchive/libarchive-2.7.1-r1.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-arch/libarchive/libarchive-2.7.1-r1.ebuild,v 1.1 2009/10/25 19:37:08 flameeyes Exp $
+
+EAPI="2"
+
+inherit eutils libtool toolchain-funcs flag-o-matic
+
+DESCRIPTION="BSD tar command"
+HOMEPAGE="http://people.freebsd.org/~kientzle/libarchive"
+SRC_URI="http://${PN}.googlecode.com/files/${P}.tar.gz
+ http://people.freebsd.org/~kientzle/libarchive/src/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd"
+IUSE="static static-libs acl xattr kernel_linux +bzip2 +lzma +zlib"
+
+COMPRESS_LIBS_DEPEND="lzma? ( app-arch/xz-utils )
+ bzip2? ( app-arch/bzip2 )
+ zlib? ( sys-libs/zlib )"
+
+RDEPEND="!dev-libs/libarchive
+ dev-libs/openssl
+ acl? ( virtual/acl )
+ xattr? ( kernel_linux? ( sys-apps/attr ) )
+ !static? ( ${COMPRESS_LIBS_DEPEND} )"
+DEPEND="${RDEPEND}
+ ${COMPRESS_LIBS_DEPEND}
+ kernel_linux? ( sys-fs/e2fsprogs
+ virtual/os-headers )"
+
+src_prepare() {
+ elibtoolize
+ epunt_cxx
+}
+
+src_configure() {
+ local myconf
+
+ if ! use static ; then
+ myconf="--enable-bsdtar=shared --enable-bsdcpio=shared"
+ fi
+
+ # force static libs for static binaries
+ if use static && ! use static-libs; then
+ myconf="${myconf} --enable-static"
+ fi
+
+ # Check for need of this in 2.7.1 and later, on 2.7.0, -Werror was
+ # added to the final release, but since it's done in the
+ # Makefile.am we can just work it around this way.
+ append-flags -Wno-error
+
+ # We disable lzmadec because we support the newer liblzma from xz-utils
+ # and not liblzmadec with this version.
+ econf --bindir=/bin \
+ --enable-bsdtar --enable-bsdcpio \
+ $(use_enable acl) $(use_enable xattr) \
+ $(use_with zlib) \
+ $(use_with bzip2 bz2lib) $(use_with lzma) \
+ $(use_enable static-libs static) \
+ --without-lzmadec \
+ ${myconf} \
+ --disable-dependency-tracking || die "econf failed."
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed."
+
+ # remove useless .a and .la files (only for non static compilation)
+ use static-libs || find "${D}" \( -name '*.a' -or -name '*.la' \) -delete
+
+ # Create tar symlink for FreeBSD
+ if [[ ${CHOST} == *-freebsd* ]]; then
+ dosym bsdtar /bin/tar
+ dosym bsdtar.1 /usr/share/man/man1/tar.1
+ # We may wish to switch to symlink bsdcpio to cpio too one day
+ fi
+
+ dodoc NEWS README
+ dodir /$(get_libdir)
+ mv "${D}"/usr/$(get_libdir)/*.so* "${D}"/$(get_libdir)
+ gen_usr_ldscript libarchive.so
+}
diff --git a/app-arch/libarchive/metadata.xml b/app-arch/libarchive/metadata.xml
index 1f7460becace..e88a26aef202 100644
--- a/app-arch/libarchive/metadata.xml
+++ b/app-arch/libarchive/metadata.xml
@@ -12,16 +12,33 @@
<use>
<flag name="static">
Build bsdtar and bsdcpio as static archives, removing
- dependencies over the enabled compression libraries (lzmadec,
- libbz2, zlib).
+ dependencies over the enabled compression libraries (lzma,
+ lzmadec, libbz2, zlib).
+ </flag>
+ <flag name="zlib">
+ Allow accessing gzip-compressed archives through
+ <pkg>sys-libs/zlib</pkg>. This only affects libarchive's native
+ support: bsdtar will keep using gunzip as a filter if that's not
+ built-in. It's also needed for supporting extraction of ZIP
+ files.
</flag>
<flag name="bzip2">
Allow accessing bzip2-compressed archives through libbz2 (which
- comes with bzip2).
+ comes with <pkg>app-arch/bzip2</pkg>). This only affects
+ libarchive's native support: bsdtar will keep using bunzip2 as a
+ filter if that's not built-in.
</flag>
- <flag name="lzma">
+ <flag name="lzma" restrict="&lt;app-arch/libarchive-2.7.1">
Allow accessing lzma-compressed archives through the lzmadec
- library.
+ library (<pkg>app-arch/lzma-utils</pkg>). This only affects
+ libarchive's native support: bsdtar will keep using unlzma as a
+ filter if that's not built-in.
+ </flag>
+ <flag name="lzma" restrict="&gt;=app-arch/libarchive-2.7.1">
+ Allow accessing lzma-compressed archives through the lzma
+ library (<pkg>app-arch/xz-utils</pkg>). This only affects
+ libarchive's native support: bsdtar will keep using unlzma as a
+ filter if that's not built-in.
</flag>
</use>
</pkgmetadata>