diff options
author | Sandro Bonazzola <sanchan@gentoo.org> | 2007-02-12 19:44:53 +0000 |
---|---|---|
committer | Sandro Bonazzola <sanchan@gentoo.org> | 2007-02-12 19:44:53 +0000 |
commit | 01590e491cdf951dcbc00bc19e26f73399c6db3a (patch) | |
tree | 3c73325dcea68d9feafbd77df5871375fbe491a2 /app-arch/rpm/rpm-4.4.6-r4.ebuild | |
parent | removal (diff) | |
download | gentoo-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.ebuild | 106 |
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 +} |