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

PortSystem 1.0

name			rpm52
version			5.2.0
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.2/
distname		rpm-${version}
checksums		md5 9126c960be02f2b0d6068801aa27fde7 \
			sha1 45031ea461738f081559082d35ce80fcfea822e6 \
			rmd160 0d4c3cfe5781608325a3269fe00fd5fa071c284e
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-devel \
			port:liblzma port:pcre port:ossp-uuid

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

patchfiles		patch-macros.in

post-patch {
	file copy ${worksrcpath}/js/src/jsfile.msg ${worksrcpath}/js/rpmjsfile.msg
}

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 --with-uuid=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-js=internal --with-lua=internal --with-db=internal
configure.cppflags-append	-I${prefix}/include/xar -I${prefix}/include/ossp

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
	}
}

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