# $Id: Portfile 53588 2009-07-09 10:32:58Z afb@macports.org $

PortSystem 1.0

name			rpm51
version			5.1.9
platforms		darwin freebsd linux
categories		sysutils archivers
maintainers		mac.com:n3npq afb
description		The RPM package management system.
long_description	The RPM Package Manager (RPM) is a powerful command line driven \
			package management system capable of installing, uninstalling, \
			verifying, querying, and updating software packages. Each software \
			package consists of an archive of files along with information about \
			the package like its version, a description, etc.

homepage		http://rpm5.org
master_sites		${homepage}/files/rpm/rpm-5.1/
distname		rpm-${version}
checksums		md5 2b6ff8f7abb1fe919402f00cc0ca56f7 \
			sha1 12f4be10da5e622f175fac79bbcea17928830357 \
			rmd160 2c26d72f0a7675388fdb7a4c36c404fc04dc020b
worksrcdir		rpm-${version}

depends_build		port:expat port:neon \
			port:python25 port:perl5.8 \
			port:readline port:beecrypt \
			port:libiconv port:gettext

depends_lib		lib:libhistory.5:readline port:gettext \
			port:popt port:sqlite3 port:xar port:liblzma \
			port:pcre

depends_run		port:openssl \
			bin:gzip:gzip \
                        bin:bzip2:bzip2 \
                        bin:unzip:unzip

patchfiles		patch-macros.in patch-configure

build.type		gnu

configure.args		--disable-nls --without-javaglue --without-included-gettext \
			--with-libintl-prefix=${prefix} --with-libiconv-prefix=${prefix} \
			--mandir=${prefix}/share/man --infodir=${prefix}/share/info \
			--with-python=2.5 --with-perl --with-sqlite --with-dbapi=sqlite \
			--with-xar=external --with-xz=external --with-pcre=external \
			--without-apidocs --sysconfdir=${prefix}/etc --with-path-cfg=${prefix}/etc/rpm
configure.env		__PYTHON=${prefix}/bin/python2.5 __PERL=${prefix}/bin/perl5.8


configure.args-append	--with-lua=internal --with-db=internal
configure.cppflags-append	-I${prefix}/include/xar

post-destroot {
	xinstall -d -m 755 ${destroot}${prefix}/etc/rpm
	system "${worksrcpath}/rpm --macros=${worksrcpath}/macros --eval='%{_target_platform}' > ${destroot}${prefix}/etc/rpm/platform"
	system "${worksrcpath}/rpm --macros=${worksrcpath}/macros --eval='noarch-%{_target_vendor}-%{_target_os}%{?_gnu}' >> ${destroot}${prefix}/etc/rpm/platform"

	delete [glob ${destroot}${prefix}/lib/perl5/*/*/*/auto/RPM/.packlist]
	delete [glob ${destroot}${prefix}/lib/perl5/*/*/perllocal.pod]

	# where the RPM database lives
	destroot.keepdirs ${destroot}${prefix}/etc/rpm\
			  ${destroot}${prefix}/var/lib/rpm\
			  ${destroot}${prefix}/var/spool/repackage\
			  ${destroot}${prefix}/src/rpm/BUILD\
			  ${destroot}${prefix}/src/rpm/RPMS\
			  ${destroot}${prefix}/src/rpm/SOURCES\
			  ${destroot}${prefix}/src/rpm/SPECS\
			  ${destroot}${prefix}/src/rpm/SRPMS
}

platform darwin {
	configure.args-append --disable-optimized --disable-aio \
			      --with-glob --enable-broken-chown \
			      --disable-rpath

	post-destroot {
		# Mac OS X specific changes
	}
}

platform freebsd {

	post-destroot {
		# FreeBSD specific changes
		reinplace "s;/usr/bin/tar;/usr/local/bin/gtar;" ${destroot}${prefix}/lib/rpm/macros
		reinplace "s;/usr/bin/make;/usr/local/bin/gmake;" ${destroot}${prefix}/lib/rpm/macros
	}
}

platform linux {

	post-destroot {
		# Linux specific changes
	}
}

platform macosx {
	# ${prefix}/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5 is not a directory
	configure.args-append --with-python-lib-dir=${prefix}/lib/python2.5/site-packages
}

variant docs description "API documentation" {
	depends_run-append bin:doxygen:doxygen
	configure.args-delete --without-apidocs
	configure.args-append --with-apidocs
}
