# $Id$ PNAME="cups" PVER="1.3.10" PBUILD="r1" PCATEGORIE="net-print" STATE="unstable" DESCRIPTION="cups: common unix printing system." HOMEPAGE="http://www.cups.org/" DEPEND=">= virtual/glibc >= dev-libs/openssl-0.9.8 >= media-libs/libpng-1.2.35 >= media-libs/libtiff-3.8 >= media-libs/libjpeg-6b >= sys-libs/pam-0.99 >= sys-apps/dbus-1.2 >= app-text/libpaper-1.1.23 >= app-text/poppler-0.10 >= net-dns/avahi-0.6.25" SDEPEND=">= sys-dev/automake-3 >= sys-dev/autoconf-4" SRCFILE="${PNAME}-${PVER}-source.tar.bz2" SRCDIR="${BUILDDIR}/${PNAME}-${PVER}" sminclude mbuild mtools multilib SRC_URI=( http://ftp.rz.tu-bs.de/pub/mirror/ftp.easysw.com/ftp/pub/${PNAME}/${PVER}/${SRCFILE} mirror://${PNAME}/${SRCFILE} mirror://${PNAME}/cups.rc mirror://${PNAME}/cups.logrotate mirror://${PNAME}/${PNAME}-1.2.11-multilib.patch mirror://${PNAME}/${PNAME}-1.3.7-backend-https.patch mirror://${PNAME}/${PNAME}-1.3.7-CVE-2008-1722.patch ) UP2DATE="updatecmd ${HOMEPAGE} | grep 'Download CUPS' | grep v[0-9] | sed 's/.*v\([0-9].*\)\ (.*/\1/'" src_prepare() { munpack ${SRCFILE} || die # fix hardcoded /usr/lib in cups-directories.m4 to respect 64bit arches mpatch ${PNAME}-1.2.11-multilib.patch || die # create a missing symlink to allow https printing via IPP, bug #217293 mpatch ${PNAME}-1.3.7-backend-https.patch || die # security fix for CVE-2008-1722 mpatch ${PNAME}-1.3.8-CVE-2008-1722.patch || die # non standard configure all-abis aclocal -I config-scripts || die all-abis autoconf || die } src_compile() { cd ${SRCDIR} mconfigure \ --localstatedir=/var \ --with-docdir=/usr/share/cups/html \ --with-cups-user=lp \ --with-cups-group=lp \ --with-system-groups=lpadmin \ --enable-threads \ --enable-pam \ --enable-nls \ --enable-dbus \ --enable-png \ --enable-jpeg \ --enable-tiff \ --enable-libpaper \ --enable-dnssd \ --disable-slp \ --disable-php \ --disable-ldap \ || die mmake || die } src_install() { cd ${SRCDIR} mmake BUILDROOT=${BINDIR} install || die # gzip *all* ppd's not just few find ${BINDIR}/usr/share/cups/model -name "*.ppd" | xargs gzip -n9f || die # remove 32bit serverbins and co on 64bit multilib systems if [[ ${ARCH} = x86_64 ]] then [[ -d ${BINDIR}/usr/lib/cups ]] && ( rm -rf ${BINDIR}/usr/lib/cups || die; ) fi # remove possible installed backup configs find ${BINDIR}/etc -name "*.O" | xargs rm -f || die find ${BINDIR}/etc -name "*.N" | xargs rm -f || die # removing cups created init-scripts rm -rf ${BINDIR}/etc/rc*.d || die # remove /etc/init.d too rm -rf ${BINDIR}/etc/init.d || die # install our initscript minstallrc cups.rc cups || die # install logrotate config minstalllog cups.logrotate cups || die # ship some config files to keep many apps happy (javapps nxnode etc) memptyfile /etc/cups/printers.conf || die memptyfile /etc/cups/classes.conf || die memptyfile /etc/cups/client.conf || die memptyfile /etc/cups/subscriptions.conf || die # prevents uninstall from prior versions mkeepdir /usr/share/cups/profiles || die mkeepdir /usr/$(mlibdir)/cups/driver || die mkeepdir /var/log/cups || die mkeepdir /var/run/cups/certs || die mkeepdir /var/spool/cups || die mkeepdir /var/spool/cups/tmp || die # create a rss feed directory mkeepdir /var/cache/cups/rss || die mchown lp.lp /var/cache/cups/rss || die mchmod 0740 /var/cache/cups/rss || die # install missing docs minstalldocs CHANGES* CREDITS* LICENSE* README* || die } preinstall() { ${MLIBDIR}/mgroupadd -o "-g 106" lpadmin ${MLIBDIR}/mgroupadd -o "-g 9" lp ${MLIBDIR}/museradd -o "-u 9 -g lp -d /var/spool/lpd -s /bin/false" lp }