# $Id: Portfile,v 1.3 2004/04/18 15:00:05 landonf Exp $ # Thanks to the Fink Project for their work on porting apt PortSystem 1.0 name apt version 0.5.24 revision 2 platforms darwin categories sysutils maintainers landonf@opendarwin.org description Advanced front-end for dpkg long_description Apt is Debian's next generation front-end for the \ dpkg package manager. It provides the apt-get utility \ and APT dselect method that provides a simpler, safer \ way to install and upgrade packages. homepage http://www.debian.org/ master_sites http://ftp.debian.org/debian/pool/main/a/apt/ checksums md5 06f385f2317b633fd454b17a63290c1a platforms darwin distname ${portname}_${portversion} worksrcdir ${portname}-${portversion} patchfiles ostable.diff \ soname-magic.diff \ autoconf.diff \ paths.diff # Work around case insensitive file system issues configure.cmd ../configure configure.dir ${worksrcpath}/build pre-configure { file mkdir ${worksrcpath}/build } configure.env CPPFLAGS="-I${prefix}/include -no-cpp-precomp" \ CFLAGS="-L${prefix}/lib" LDFLAGS="-L${prefix}/lib" \ CXXFLAGS="-D__USE_MISC" configure.args --without-sgml-doc --disable-rpath build.dir ${configure.dir} ### Target Overrides ### post-patch { reinplace s|@PREFIX@|${prefix}|g \ ${worksrcpath}/buildlib/environment.mak.in \ ${worksrcpath}/apt-pkg/deb/debsystem.cc \ ${worksrcpath}/apt-pkg/init.cc \ ${worksrcpath}/dselect/install \ ${worksrcpath}/dselect/setup \ ${worksrcpath}/dselect/update } # apt's makefiles do not have an install target destroot { set build ${build.dir} # Install binaries set bindest ${destroot}${prefix}/bin/ file mkdir ${bindest} xinstall -m 755 ${build}/bin/apt-cache ${bindest} xinstall -m 755 ${build}/bin/apt-cdrom ${bindest} xinstall -m 755 ${build}/bin/apt-config ${bindest} xinstall -m 755 ${build}/bin/apt-extracttemplates ${bindest} xinstall -m 755 ${build}/bin/apt-get ${bindest} xinstall -m 755 ${build}/bin/apt-sortpkgs ${bindest} # Install libraries set libdest ${destroot}${prefix}/lib/ file mkdir ${libdest} xinstall -m 644 ${build}/bin/libapt-pkg.3.3.0.dylib ${libdest} system "cd ${libdest} && \ ln -sf libapt-pkg.3.3.0.dylib libapt-pkg.3.dylib && \ ln -sf libapt-pkg.3.dylib libapt-pkg.dylib" xinstall -m 644 ${build}/bin/libapt-inst.1.0.0.dylib ${libdest} system "cd ${libdest} && \ ln -sf libapt-inst.1.0.0.dylib libapt-inst.1.dylib && \ ln -sf libapt-inst.1.dylib libapt-inst.dylib" # Install methods set methdest ${destroot}${prefix}/libexec/apt/methods/ file mkdir ${methdest} xinstall -m 755 ${build}/bin/methods/cdrom ${methdest} xinstall -m 755 ${build}/bin/methods/copy ${methdest} xinstall -m 755 ${build}/bin/methods/file ${methdest} xinstall -m 755 ${build}/bin/methods/ftp ${methdest} xinstall -m 755 ${build}/bin/methods/gzip ${methdest} xinstall -m 755 ${build}/bin/methods/http ${methdest} xinstall -m 755 ${build}/bin/methods/rsh ${methdest} system "cd ${methdest} && \ ln -sf rsh ssh" file mkdir ${methdest}/apt xinstall -m 644 ${build}/scripts/dselect/desc.apt ${methdest}/apt/ xinstall -m 755 ${build}/scripts/dselect/install ${methdest}/apt/ xinstall -m 644 ${build}/scripts/dselect/names ${methdest}/apt/ xinstall -m 755 ${build}/scripts/dselect/setup ${methdest}/apt/ xinstall -m 755 ${build}/scripts/dselect/update ${methdest}/apt/ # Install includes set incdest ${destroot}${prefix}/include/apt-pkg/ file mkdir ${incdest} foreach file [readdir ${build}/include/apt-pkg/] { if {"$file" == "." || "$file" == ".."} { continue } xinstall -m 644 ${build}/include/apt-pkg/${file} \ ${incdest} } # Install man pages set mandest ${destroot}${prefix}/man file mkdir ${mandest} file mkdir ${mandest}/man1 file mkdir ${mandest}/man5 file mkdir ${mandest}/man8 xinstall -m 644 ${build}/docs/apt-cache.8 \ ${build}/docs/apt-cdrom.8 \ ${build}/docs/apt-config.8 \ ${build}/docs/apt-get.8 \ ${mandest}/man8/ xinstall -m 644 ${build}/docs/apt-extracttemplates.1 \ ${build}/docs/apt-ftparchive.1 \ ${build}/docs/apt-sortpkgs.1 \ ${mandest}/man1/ xinstall -m 644 ${build}/docs/apt.conf.5 \ ${build}/docs/apt_preferences.5 \ ${build}/docs/sources.list.5 \ ${build}/docs/vendors.list.5 \ ${mandest}/man5/ # Install configuration files set confdest ${destroot}/etc/apt/apt.conf.d file mkdir ${confdest} #xinstall -m 644 sources.list.opendarwin ${destroot}/${prefix}/etc/apt/sources.list # Create var directories file mkdir ${destroot}${prefix}/var/db/apt/archives/partial file mkdir ${destroot}${prefix}/var/db/apt/lists/partial } ### Operating System Variants ### variant darwin { depends_lib lib:libintl.3:gettext # c++pragma.diff generated with the following, provided by # Peter O'Gorman: # for i in `grep -rl '#ifdef __GNUG__' .` ; do perl -pi -e 's/#ifdef # __GNUG__/#if defined(__GNUG__) && !defined(__APPLE_CC__)/' $i; done patchfiles-append sig_t.diff \ c++pragma.diff \ darwinshlibs-hack.diff \ use-libintl.diff } variant freebsd { depends_lib lib:libintl.3:gettext patchfiles-append sig_t.diff \ use-libintl.diff }