diff options
author | Mike Frysinger <vapier@gentoo.org> | 2005-08-22 23:02:18 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2005-08-22 23:02:18 +0000 |
commit | 202be9f9a57c84baed58ff1768a43c3c379ab0e4 (patch) | |
tree | 87e8d583294f091c9bac7ba8eee8c437728f0a40 | |
parent | m68k/sh love (diff) | |
download | gentoo-2-202be9f9a57c84baed58ff1768a43c3c379ab0e4.tar.gz gentoo-2-202be9f9a57c84baed58ff1768a43c3c379ab0e4.tar.bz2 gentoo-2-202be9f9a57c84baed58ff1768a43c3c379ab0e4.zip |
Add support for dumping rpms to a tar file and skipping the slow gzip stage.
(Portage version: 2.0.51.22-r2)
-rw-r--r-- | app-arch/rpm2targz/ChangeLog | 10 | ||||
-rw-r--r-- | app-arch/rpm2targz/files/digest-rpm2targz-9.0-r4 | 1 | ||||
-rw-r--r-- | app-arch/rpm2targz/files/rpm2targz-9.0-rpm2tar.patch | 41 | ||||
-rw-r--r-- | app-arch/rpm2targz/rpm2targz-9.0-r4.ebuild | 49 |
4 files changed, 99 insertions, 2 deletions
diff --git a/app-arch/rpm2targz/ChangeLog b/app-arch/rpm2targz/ChangeLog index 67a8ded2e70a..74cb6a24b90e 100644 --- a/app-arch/rpm2targz/ChangeLog +++ b/app-arch/rpm2targz/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for app-arch/rpm2targz -# Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-arch/rpm2targz/ChangeLog,v 1.37 2005/08/10 23:43:39 ka0ttic Exp $ +# Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/app-arch/rpm2targz/ChangeLog,v 1.38 2005/08/22 23:02:18 vapier Exp $ + +*rpm2targz-9.0-r4 (22 Aug 2005) + + 22 Aug 2005; Mike Frysinger <vapier@gentoo.org> + +files/rpm2targz-9.0-rpm2tar.patch, +rpm2targz-9.0-r4.ebuild: + Add support for dumping rpms to a tar file and skipping the slow gzip stage. 10 Aug 2005; Aaron Walker <ka0ttic@gentoo.org> rpm2targz-9.0-r3.ebuild: Stable on mips. diff --git a/app-arch/rpm2targz/files/digest-rpm2targz-9.0-r4 b/app-arch/rpm2targz/files/digest-rpm2targz-9.0-r4 new file mode 100644 index 000000000000..154805e3f598 --- /dev/null +++ b/app-arch/rpm2targz/files/digest-rpm2targz-9.0-r4 @@ -0,0 +1 @@ +MD5 7b8ba680dcbe7e1e4e349698400bcea6 rpm2targz-9.0.tar.gz 2639 diff --git a/app-arch/rpm2targz/files/rpm2targz-9.0-rpm2tar.patch b/app-arch/rpm2targz/files/rpm2targz-9.0-rpm2tar.patch new file mode 100644 index 000000000000..2dee633816f6 --- /dev/null +++ b/app-arch/rpm2targz/files/rpm2targz-9.0-rpm2tar.patch @@ -0,0 +1,41 @@ +Add support for turning rpm's into tar's and skipping the gzip stage ... +Much faster on slower boxes and useful when you just want to rip apart +a rpm and look at the insides. + +--- rpm2targz ++++ rpm2targz +@@ -35,6 +35,7 @@ + exit 1 + fi + ++BASENAME="`basename $0`" + if [ "$1" = "" ]; then + echo "$0: Converts RPM format to standard GNU tar + GNU zip format." + if [ -e /etc/slackware-version ]; then +@@ -44,8 +45,10 @@ + fi + echo + echo "Usage: $0 <file.rpm>" +- if [ "`basename $0`" = "rpm2tgz" ]; then ++ if [ "$BASENAME" = "rpm2tgz" ]; then + echo " (Outputs \"file.tgz\")" ++ elif [ "$BASENAME" = "rpm2tar" ]; then ++ echo " (Outputs \"file.tar\")" + else + echo " (Outputs \"file.tar.gz\")" + fi +@@ -118,9 +121,11 @@ + rm -f $ofn + find . -type d -perm 700 -exec chmod 755 {} \; ) + ( cd ${WORKDIR} ; tar cf - . ) > `basename $i .rpm`.tar +- gzip -9 `basename $i .rpm`.tar +- if [ "`basename $0`" = "rpm2tgz" ]; then +- mv `basename $i .rpm`.tar.gz `basename $i .rpm`.tgz ++ if [ "$BASENAME" != "rpm2tar" ]; then ++ gzip -9 `basename $i .rpm`.tar ++ if [ "$BASENAME" = "rpm2tgz" ]; then ++ mv `basename $i .rpm`.tar.gz `basename $i .rpm`.tgz ++ fi + fi + ( rm -rf "${WORKDIR}/*" ) + echo diff --git a/app-arch/rpm2targz/rpm2targz-9.0-r4.ebuild b/app-arch/rpm2targz/rpm2targz-9.0-r4.ebuild new file mode 100644 index 000000000000..89e997e7fb61 --- /dev/null +++ b/app-arch/rpm2targz/rpm2targz-9.0-r4.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-arch/rpm2targz/rpm2targz-9.0-r4.ebuild,v 1.1 2005/08/22 23:02:18 vapier Exp $ + +inherit toolchain-funcs eutils + +DESCRIPTION="Convert a .rpm file to a .tar.gz archive" +HOMEPAGE="http://www.slackware.com/config/packages.php" +SRC_URI="mirror://gentoo/${P}.tar.gz" + +LICENSE="as-is" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" +IUSE="" + +# NOTE: rpm2targz autodetects rpm2cpio at runtime, and uses it if available, +# so we don't explicitly set it as a dependency. +DEPEND="app-arch/cpio + sys-apps/file" +RDEPEND="${DEPEND} + sys-apps/util-linux + sys-apps/which" + +S=${WORKDIR} + +src_unpack() { + unpack ${A} + cd "${S}" + # makes rpm2targz extract in current dir + epatch "${FILESDIR}"/${P}-gentoo.patch + # adds bzip2 detection (#23249) + epatch "${FILESDIR}"/${P}-bzip2.patch + # adds bzip2 decompression to rpm2targz (#31164) + epatch "${FILESDIR}"/${P}-bzip2_rpm2targz.patch + # secures temp file handling (#96192) + epatch "${FILESDIR}"/${P}-secure_temp_handling.patch + # add supprot for a quicker rpm2tar + epatch "${FILESDIR}"/${P}-rpm2tar.patch +} + +src_compile() { + emake rpmoffset CC=$(tc-getCC) || die +} + +src_install() { + dobin rpmoffset rpm2targz || die + dosym rpm2targz /usr/bin/rpm2tar + dodoc rpm2targz.README +} |