# $Id: Portfile,v 1.16 2005/06/17 20:47:47 jkh Exp $ PortSystem 1.0 name rpm44 version 4.4.2 platforms darwin categories sysutils archivers maintainers n3npq@mac.com 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. master_sites ftp://jbj.org/pub/rpm-macosx/ distfiles rpm-${version}.tar.gz checksums md5 a2b35ac4ad5595400720d2608734f1a3 depends_lib lib:libiconv.2:libiconv lib:libintl.3:gettext \ lib:libexpat:expat lib:libreadline:readline \ lib:libbeecrypt.6:beecrypt lib:libneon.24:neon \ lib:libsqlite3.0:sqlite3 \ port:python24 port:popt ###you do *not* want these installed, instead use "/usr": #lib:libssl:openssl lib:libbz2:bzip2 path:perl:perl5.8 ###zlib should be replaced with the internal rpm version: #lib:libz:zlib ###"expat" is for libneon, and "readline" is for rpm lua depends_build port:libiconv port:gettext #path:${prefix}/bin/autoconf:autoconf path:${prefix}/bin/automake:automake #"doxygen" is required for building the rpm API docs, default is --without #bin:doxygen:doxygen worksrcdir rpm-${version} 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 configure.env __PYTHON="${prefix}/bin/python" build.type gnu variant darwin { patchfiles-append \ rpm-4.4.1-glob.patch patch-zlib-Makefile.in \ patch-file-src-Makefile.in patch-python-Makefile post-patch { system "rm -rf \"${worksrcpath}/beecrypt\"" system "rm -rf \"${worksrcpath}/neon\"" system "rm -rf \"${worksrcpath}/sqlite\"" system "rm -rf \"${worksrcpath}/elfutils\"" # # we want to use the internal zlib later, when it works... # system "rm -rf \"${worksrcpath}/zlib\"" } # use_autoconf yes # use_automake yes pre-configure { system "mkdir -p ${workpath}/librt" system "ln -sf /usr/lib/libSystem.B.dylib \ ${workpath}/librt/librt.dylib" # system "touch ${worksrcpath}/aclocal.m4" # system "touch ${worksrcpath}/config.h.in" } post-configure { # system "find ${worksrcpath} -name Makefile.in | xargs touch" # system "find ${worksrcpath} -name Makefile | xargs touch" } configure.args-append --disable-optimized --disable-aio \ --with-python=auto --with-lua --with-glob \ --enable-broken-chown --disable-rpath # requires doxygen: #configure.args-append --with-apidocs configure.args-append \ LDFLAGS="-L${prefix}/lib -L${workpath}/librt" \ CFLAGS="-I${prefix}/include" CPPFLAGS="-I${prefix}/include" post-destroot { # Delete overlapping files. file delete ${destroot}${prefix}/include/popt.h system "rm -f ${destroot}${prefix}/share/man/man3/popt.3*" system "rm -rf ${destroot}${prefix}/lib/libpopt.*" # where the RPM database lives destroot.keepdirs "${destroot}${prefix}/var/lib/rpm" destroot.keepdirs-append "${destroot}${prefix}/src/apple/BUILD" destroot.keepdirs-append "${destroot}${prefix}/src/apple/RPMS" destroot.keepdirs-append "${destroot}${prefix}/src/apple/SOURCES" destroot.keepdirs-append "${destroot}${prefix}/src/apple/SPECS" destroot.keepdirs-append "${destroot}${prefix}/src/apple/SRPMS" } }