summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSandro Bonazzola <sanchan@gentoo.org>2007-02-12 19:44:53 +0000
committerSandro Bonazzola <sanchan@gentoo.org>2007-02-12 19:44:53 +0000
commit01590e491cdf951dcbc00bc19e26f73399c6db3a (patch)
tree3c73325dcea68d9feafbd77df5871375fbe491a2 /app-arch/rpm/rpm-4.4.6-r4.ebuild
parentremoval (diff)
downloadgentoo-2-01590e491cdf951dcbc00bc19e26f73399c6db3a.tar.gz
gentoo-2-01590e491cdf951dcbc00bc19e26f73399c6db3a.tar.bz2
gentoo-2-01590e491cdf951dcbc00bc19e26f73399c6db3a.zip
ebuild bump trying to increase QA level of this package as per bug #162447. Added a workaround trying to fix bug #153292. Thanks to Marti Raudsepp <marti@juffo.org> for reporting. Thanks to Jeff Johnson <n3npq.jbj@gmail.com> and Ken Gilmer <ken@buglabs.net> for their help.
(Portage version: 2.1.2-r9)
Diffstat (limited to 'app-arch/rpm/rpm-4.4.6-r4.ebuild')
-rw-r--r--app-arch/rpm/rpm-4.4.6-r4.ebuild106
1 files changed, 106 insertions, 0 deletions
diff --git a/app-arch/rpm/rpm-4.4.6-r4.ebuild b/app-arch/rpm/rpm-4.4.6-r4.ebuild
new file mode 100644
index 000000000000..9dd6bd0198e8
--- /dev/null
+++ b/app-arch/rpm/rpm-4.4.6-r4.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-arch/rpm/rpm-4.4.6-r4.ebuild,v 1.1 2007/02/12 19:44:53 sanchan Exp $
+
+inherit eutils autotools distutils perl-module flag-o-matic
+
+DESCRIPTION="Red Hat Package Management Utils"
+HOMEPAGE="http://www.rpm.org/"
+SRC_URI="http://wraptastic.org/pub/rpm-4.4.x/${P}.tar.gz"
+
+LICENSE="GPL-2 LGPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+IUSE="nls python perl doc sqlite"
+
+RDEPEND="=sys-libs/db-3.2*
+ >=sys-libs/zlib-1.1.3
+ >=app-arch/bzip2-1.0.1
+ >=dev-libs/popt-1.7
+ >=app-crypt/gnupg-1.2
+ dev-libs/elfutils
+ virtual/libintl
+ >=dev-libs/beecrypt-3.1.0-r1
+ python? ( >=dev-lang/python-2.2 )
+ perl? ( >=dev-lang/perl-5.8.8 )
+ nls? ( virtual/libintl )
+ sqlite? ( >=dev-db/sqlite-3.3.5 )
+ net-misc/neon"
+DEPEND="${RDEPEND}
+ nls? ( sys-devel/gettext )
+ doc? ( app-doc/doxygen )"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/${P}-with-sqlite.patch
+ epatch "${FILESDIR}"/${P}-stupidness.patch
+ epatch "${FILESDIR}"/${P}-autotools.patch
+ epatch "${FILESDIR}"/${P}-buffer-overflow.patch
+ epatch "${FILESDIR}"/${P}-qa-fix-undefined.patch
+
+ # rpm uses AM_GNU_GETTEXT() but fails to actually
+ # include any of the required gettext files
+ cp /usr/share/gettext/config.rpath . || die
+
+ # the following are additional libraries that might be packaged with
+ # the rpm sources. grep for "test -d" in configure.ac
+ cp file/src/{file,patchlevel}.h tools/
+ rm -rf beecrypt elfutils neon popt sqlite zlib intl file
+
+ sed -i -e "s:intl ::" Makefile.am
+ sed -i -e "s:intl/Makefile ::" configure.ac
+ AT_NO_RECURSIVE="yes" eautoreconf
+ # TODO Get rid of internal copies of lua, db and db3
+}
+
+src_compile() {
+ # Until strict aliasing is porperly fixed...
+ filter-flags -fstrict-aliasing
+ append-flags -fno-strict-aliasing
+ python_version
+ econf \
+ --enable-posixmutexes \
+ --without-javaglue \
+ --without-selinux \
+ $(use_with python python ${PYVER}) \
+ $(use_with doc apidocs) \
+ $(use_with perl) \
+ $(use_with sqlite) \
+ $(use_enable nls) \
+ || die "econf failed"
+ emake || die "emake failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+
+ mv "${D}"/bin/rpm "${D}"/usr/bin
+ rmdir "${D}"/bin
+
+ use nls || rm -rf "${D}"/usr/share/man/??
+
+ keepdir /usr/src/rpm/{SRPMS,SPECS,SOURCES,RPMS,BUILD}
+
+ dodoc CHANGES CREDITS GROUPS README* RPM*
+ use doc && dohtml -r apidocs/html/*
+
+ # Fix perllocal.pod file collision
+ use perl && fixlocalpod
+
+ for magic_file in "magic.mime.mgc" "magic.mgc" "magic.mime" "magic"; do
+ dosym /usr/share/misc/file/${magic_file} /usr/lib/rpm/${magic_file}
+ done
+}
+
+pkg_postinst() {
+ if [[ -f ${ROOT}/var/lib/rpm/Packages ]] ; then
+ einfo "RPM database found... Rebuilding database (may take a while)..."
+ "${ROOT}"/usr/bin/rpm --rebuilddb --root=${ROOT}
+ else
+ einfo "No RPM database found... Creating database..."
+ "${ROOT}"/usr/bin/rpm --initdb --root=${ROOT}
+ fi
+
+ distutils_pkg_postinst
+}