Add cups-1.3.6.ebuild, version bump. Also remove bindnow to solve the portage QA...
authorTimo Gurr <tgurr@gentoo.org>
Fri, 22 Feb 2008 18:13:58 +0000 (18:13 +0000)
committerTimo Gurr <tgurr@gentoo.org>
Fri, 22 Feb 2008 18:13:58 +0000 (18:13 +0000)
Package-Manager: portage-2.1.4.4

net-print/cups/ChangeLog
net-print/cups/Manifest
net-print/cups/cups-1.2.10-r1.ebuild
net-print/cups/cups-1.2.12-r2.ebuild [deleted file]
net-print/cups/cups-1.3.6.ebuild [moved from net-print/cups/cups-1.2.12-r3.ebuild with 56% similarity]

index 02db9cf052aa0197d2b54679c4c862530720ee9e..0f1d73b7720c6acec3a5ebd09271a32f72dba15b 100644 (file)
@@ -1,6 +1,13 @@
 # ChangeLog for net-print/cups
-# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-print/cups/ChangeLog,v 1.280 2007/12/26 16:55:59 cardoe Exp $
+# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/net-print/cups/ChangeLog,v 1.281 2008/02/22 18:13:58 tgurr Exp $
+
+*cups-1.3.6 (22 Feb 2008)
+
+  22 Feb 2008; Timo Gurr <tgurr@gentoo.org> cups-1.2.10-r1.ebuild,
+  -cups-1.2.12-r2.ebuild, -cups-1.2.12-r3.ebuild, +cups-1.3.6.ebuild:
+  Add cups-1.3.6.ebuild, version bump. Also remove bindnow to solve the
+  portage QA warning. Clean up old ebuilds and fix some quoting.
 
   26 Dec 2007; Doug Klima <cardoe@gentoo.org> cups-1.2.12-r2.ebuild,
   cups-1.2.12-r3.ebuild, cups-1.2.12-r4.ebuild, cups-1.3.5.ebuild:
index b72affdf2a1787577da39fd5700ef80bb78ee1a0..6eed1e86955b6e623d8152048b3cd11de17b530d 100644 (file)
@@ -12,10 +12,10 @@ AUX pdftops.pl 5552 RMD160 8c73e4a5bb5ae5a7eafb59b25ec483279dad90d4 SHA1 9c57044
 DIST cups-1.2.10-source.tar.bz2 3618084 RMD160 85b3bbd46a6fc097891c571ffad8e5e46693743f SHA1 241d7a3c52370fb08ed2ffc3fd8f59673d158299 SHA256 601b3b9256c55361477427c3e8db56c9ee4e141762814aea590bcf110a95bb36
 DIST cups-1.2.12-source.tar.bz2 3788301 RMD160 598270e37ff8a9b9ff1e667066d6f7e120493e32 SHA1 11a540f76a1d3164b6636bf8ba47928803ad9356 SHA256 b4ff8e934da7db32d5654360ea9068faa0ed5a00fde02161ae53c2052510d00f
 DIST cups-1.3.5-source.tar.bz2 4082098 RMD160 c6157e552e833447e623175a4e90146ceb9d9ba4 SHA1 f0f7674b46e00582f327765acd4133a6035d393e SHA256 3a8ef866ffe2d5aac6a601770d27cfefec3ba40e19b1550ca4c1eb1ab27f19d1
-EBUILD cups-1.2.10-r1.ebuild 6316 RMD160 396839aec0fe91130450f8c4bdc5df0598a5ae29 SHA1 cd93dc57e11bea80747b9984929f06bd81542ab7 SHA256 b7dc3e71cd9fa05d9f51274e6c9158ccaf4ad5558de57dbf2b34f1c5cc0de95b
-EBUILD cups-1.2.12-r2.ebuild 7039 RMD160 f0d1af533533b78c54535112070ca37051a5c13c SHA1 94004755c636507f29884313977dd76fbb9d28bb SHA256 ce4b5237bf65daafdf408030570a28953897d8703be63b59c472888b5fa58322
-EBUILD cups-1.2.12-r3.ebuild 7139 RMD160 fe595c70df5dac05849838f23b98ce4544ca4c0e SHA1 3b030bd31f8024d4550d43096efe8cfe2c7c9adf SHA256 8624c31486d64428a3bc2c14e5e6436f8f20301e32d7c4488ff8037556914e49
+DIST cups-1.3.6-source.tar.bz2 4079258 RMD160 1da6420f473562eba27e1e997e13d60e0ea101a8 SHA1 4f7ed1c2b16db46f945ab113beab8aeaecbca0b9 SHA256 b4003862daffd6887a52cf66a67a21854c1ecda15698bf44b2fe1fc12a833695
+EBUILD cups-1.2.10-r1.ebuild 6348 RMD160 5de50c4fc60398e9c5d15564e11da91b04eeb8dd SHA1 14fe4110363be2772b0088dc341aafae2a2d9568 SHA256 bb463b251d9a6131dfc2d926de59abccc18a1b04dcacef401ea616d1ea23ff61
 EBUILD cups-1.2.12-r4.ebuild 7107 RMD160 c3441cae5322936b013eec7d931babcdfe93a725 SHA1 94b6a1f27a566cb1213f6f69a8c08b3e2bfb5b11 SHA256 beac8389a1798ead8be7e2594842a95181961e641948cdc426ef544a5e691d8a
 EBUILD cups-1.3.5.ebuild 8180 RMD160 c29eccb692f4b9064ff275c310526c7574eea17f SHA1 b2e3481cc0a74c53ede976ed96c06f5cfa9d5dcb SHA256 7693bbafa966b8ad342be1201328f567836ed6a7222574ff2fba9c54978d6986
-MISC ChangeLog 40100 RMD160 1938fca29b8c663995e3ae5fd229fb741614dfd1 SHA1 6d64b7799e02fdb36c7e48989002c6b1c2b2c8aa SHA256 d1683e52c7db6bedb2f15e2bff65e4db2fd2c51ab71b775bf126b0c01caef925
+EBUILD cups-1.3.6.ebuild 8048 RMD160 f38cba97edf437fc75106f1725e879b6594a047b SHA1 859fd6c5c941508a8266ce1e45c9180d6c6e0ee4 SHA256 6daf0906d04a497d1eb874b631c3d699907ebd92d8e2557d075745bf510cd7ce
+MISC ChangeLog 40401 RMD160 2479c4557068c0532d350bb163bc2ee3792cbb8e SHA1 b4575051e8e2847df8d6310c8e15bd6dc74981e8 SHA256 bb46b6dc3da4b2dbe026db5a9c6dcea8ed9fa392fc08780df574053d395da87e
 MISC metadata.xml 161 RMD160 1e5b1e42553c8869b93c4a5448e9a2a2ed9fe525 SHA1 209c6a46e4cdd891980115e42ba419e3799f8088 SHA256 7c85e6739a71f5bb23e8de36c88677d772946e61f7285892f7554e37bd2bca76
index a49b8c1e75659557c28dc2a7b45b3a22c5abbf30..1a26e80e402f3db78714b6a79d2b1cf5e5cf5e43 100644 (file)
@@ -1,6 +1,6 @@
-# Copyright 1999-2007 Gentoo Foundation
+# Copyright 1999-2008 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-print/cups/cups-1.2.10-r1.ebuild,v 1.12 2007/08/07 11:59:35 armin76 Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-print/cups/cups-1.2.10-r1.ebuild,v 1.13 2008/02/22 18:13:58 tgurr Exp $
 
 WANT_AUTOMAKE=latest
 
@@ -60,7 +60,7 @@ PROVIDE="virtual/lpr"
 # we just leave it out, even if FEATURES=test
 RESTRICT="test"
 
-S=${WORKDIR}/${MY_P}
+S="${WORKDIR}/${MY_P}"
 
 pkg_setup() {
        enewgroup lp
@@ -71,10 +71,10 @@ pkg_setup() {
 
 src_unpack() {
        unpack ${A}
-       cd ${S}
+       cd "${S}"
 
        # upstream does not acknowledge bindnow as a solution
-       epatch ${FILESDIR}/cups-1.2.0-bindnow.patch
+       epatch "${FILESDIR}"/cups-1.2.0-bindnow.patch
 
        # cups does not use autotools "the usual way" and ship a static config.h.in
        eaclocal
@@ -117,29 +117,29 @@ src_compile() {
 }
 
 src_install() {
-       emake BUILDROOT=${D} install || die "emake install failed"
+       emake BUILDROOT="${D}" install || die "emake install failed"
        dodoc {CHANGES{,-1.{0,1}},CREDITS,LICENSE,README}.txt
 
        # clean out cups init scripts
-       rm -rf ${D}/etc/{init.d/cups,rc*,pam.d/cups}
+       rm -rf "${D}"/etc/{init.d/cups,rc*,pam.d/cups}
        # install our init scripts
-       newinitd ${FILESDIR}/cupsd.init cupsd
+       newinitd "${FILESDIR}"/cupsd.init cupsd
        # install our pam script
        pamd_mimic_system cups auth account
 
        # correct path
-       sed -i -e "s:server = .*:server = /usr/libexec/cups/daemon/cups-lpd:" ${D}/etc/xinetd.d/cups-lpd
+       sed -i -e "s:server = .*:server = /usr/libexec/cups/daemon/cups-lpd:" "${D}"/etc/xinetd.d/cups-lpd
        # it is safer to disable this by default, bug 137130
-       grep -w 'disable' ${D}/etc/xinetd.d/cups-lpd || \
-               sed -i -e "s:}:\tdisable = yes\n}:" ${D}/etc/xinetd.d/cups-lpd
+       grep -w 'disable' "${D}"/etc/xinetd.d/cups-lpd || \
+               sed -i -e "s:}:\tdisable = yes\n}:" "${D}"/etc/xinetd.d/cups-lpd
 
        # install pdftops filter
        exeinto /usr/libexec/cups/filter/
-       newexe ${FILESDIR}/pdftops.pl pdftops
+       newexe "${FILESDIR}"/pdftops.pl pdftops
 
        # only for gs-esp this is correct, see bug 163897
        if has_version app-text/ghostscript-gpl || has_version app-text/ghostscript-gnu; then
-               sed -i -e "s:#application/vnd.cups-postscript:application/vnd.cups-postscript:" ${D}/etc/cups/mime.convs
+               sed -i -e "s:#application/vnd.cups-postscript:application/vnd.cups-postscript:" "${D}"/etc/cups/mime.convs
        fi
 
        keepdir /usr/share/cups/profiles /usr/libexec/cups/driver /var/log/cups \
@@ -147,9 +147,9 @@ src_install() {
 
        # .desktop handling. X useflag. xdg-open from freedesktop is preferred
        if use X; then
-               sed -i -e "s:htmlview:xdg-open:" ${D}/usr/share/applications/cups.desktop
+               sed -i -e "s:htmlview:xdg-open:" "${D}"/usr/share/applications/cups.desktop
        else
-               rm -r ${D}/usr/share/applications
+               rm -r "${D}"/usr/share/applications
        fi
 
        # Fix a symlink collision, see bug #172341
@@ -159,7 +159,7 @@ src_install() {
 
 pkg_preinst() {
        # cleanups
-       [ -n "${PN}" ] && rm -fR ${ROOT}/usr/share/doc/${PN}-*
+       [ -n "${PN}" ] && rm -fR "${ROOT}"/usr/share/doc/"${PN}"-*
 }
 
 pkg_postinst() {
@@ -191,7 +191,7 @@ pkg_postinst() {
                ewarn
                ewarn "You need to rebuild kdelibs for kdeprinter to work with cups-1.2"
        fi
-       if [ -e ${ROOT}/usr/lib/cups ]; then
+       if [ -e "${ROOT}"/usr/lib/cups ]; then
                ewarn
                ewarn "/usr/lib/cups exists - You need to remerge every ebuild that"
                ewarn "installed into /usr/lib/cups and /etc/cups, qfile is in portage-utils:"
@@ -202,7 +202,7 @@ pkg_postinst() {
                ewarn "You should also run revdep-rebuild"
 
                # place symlinks to make the update smoothless
-               for i in ${ROOT}/usr/lib/cups/{backend,filter}/*; do
+               for i in "${ROOT}"/usr/lib/cups/{backend,filter}/*; do
                        if [ "${i/\*}" == "${i}" ] && ! [ -e ${i/lib/libexec} ]; then
                                ln -s ${i} ${i/lib/libexec}
                        fi
diff --git a/net-print/cups/cups-1.2.12-r2.ebuild b/net-print/cups/cups-1.2.12-r2.ebuild
deleted file mode 100644 (file)
index 496c708..0000000
+++ /dev/null
@@ -1,229 +0,0 @@
-# Copyright 1999-2008 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-print/cups/cups-1.2.12-r2.ebuild,v 1.11 2008/01/10 09:04:24 vapier Exp $
-
-WANT_AUTOMAKE=latest
-
-inherit autotools eutils flag-o-matic multilib pam
-
-MY_P=${P/_}
-
-DESCRIPTION="The Common Unix Printing System"
-HOMEPAGE="http://www.cups.org/"
-SRC_URI="mirror://sourceforge/cups/${MY_P}-source.tar.bz2"
-#http://ftp.funet.fi/pub/mirrors/ftp.easysw.com/pub/cups/${PV}/${MY_P}-source.tar.bz2"
-#ESVN_REPO_URI="http://svn.easysw.com/public/cups/trunk"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 arm hppa ia64 m68k mips ppc ppc64 s390 sh sparc ~sparc-fbsd x86 ~x86-fbsd"
-IUSE="ldap ssl slp pam php samba nls dbus tiff png ppds jpeg X"
-
-DEP="pam? ( virtual/pam )
-       ssl? ( net-libs/gnutls )
-       slp? ( >=net-libs/openslp-1.0.4 )
-       ldap? ( net-nds/openldap )
-       dbus? ( sys-apps/dbus )
-       png? ( >=media-libs/libpng-1.2.1 )
-       tiff? ( >=media-libs/tiff-3.5.5 )
-       jpeg? ( >=media-libs/jpeg-6b )
-       php? ( dev-lang/php )
-       app-text/libpaper"
-DEPEND="${DEP}
-       !<net-print/foomatic-filters-ppds-20070501
-       !<net-print/hplip-1.7.4a-r1
-       nls? ( sys-devel/gettext )"
-RDEPEND="${DEP}
-       nls? ( virtual/libintl )
-       !virtual/lpr
-       >=app-text/poppler-0.4.3-r1
-       X? ( x11-misc/xdg-utils )"
-
-PDEPEND="
-       ppds? ( || (
-               (
-                       net-print/foomatic-filters-ppds
-                       net-print/foomatic-db-ppds
-               )
-               net-print/foomatic-filters-ppds
-               net-print/foomatic-db-ppds
-               net-print/hplip
-               media-gfx/gimp-print
-               net-print/foo2zjs
-               net-print/cups-pdf
-       ) )
-       samba? ( >=net-fs/samba-3.0.8 )
-       virtual/ghostscript"
-PROVIDE="virtual/lpr"
-
-# upstream includes an interactive test which is a nono for gentoo.
-# therefore, since the printing herd has bigger fish to fry, for now,
-# we just leave it out, even if FEATURES=test
-RESTRICT="test"
-
-S=${WORKDIR}/${MY_P}
-
-pkg_setup() {
-       if use x86 && [ -d "/usr/lib64" ]
-       then
-               eerror "You are running an x86 system, but /usr/lib64 exists, cups will install all library objects into this directory!"
-               eerror "You should remove /usr/lib64, but before you do, you should check for existing objects, and re-compile all affected packages."
-               eerror "You can use qfile (emerge portage-utils to install qfile) to get a list of the affected ebuilds:"
-               eerror "# qfile -qC /usr/lib64"
-               die "lib64 on x86 detected"
-       fi
-
-       enewgroup lp
-       enewuser lp -1 -1 -1 lp
-
-       enewgroup lpadmin 106
-}
-
-src_unpack() {
-       unpack ${A}
-       cd "${S}"
-
-       # upstream does not acknowledge bindnow as a solution
-       epatch "${FILESDIR}"/cups-1.2.0-bindnow.patch
-
-       # CVE-2007-4351 security patch, bug #196736
-       epatch "${FILESDIR}"/${PN}-1.2-str2561-v2.patch
-
-       # cups does not use autotools "the usual way" and ship a static config.h.in
-       eaclocal
-       eautoconf
-}
-
-src_compile() {
-       export DSOFLAGS="${LDFLAGS}"
-
-       if use ldap; then
-               append-flags -DLDAP_DEPRECATED
-       fi
-
-       econf \
-               --with-cups-user=lp \
-               --with-cups-group=lp \
-               --with-system-groups=lpadmin \
-               --localstatedir=/var \
-               --with-docdir=/usr/share/cups/html \
-               --with-bindnow=$(bindnow-flags) \
-               $(use_enable pam) \
-               $(use_enable ssl) \
-               --enable-gnutls \
-               $(use_enable slp) \
-               $(use_enable nls) \
-               $(use_enable dbus) \
-               $(use_enable png) \
-               $(use_enable jpeg) \
-               $(use_enable tiff) \
-               $(use_with php) \
-               $(use_enable ldap) \
-               --enable-libpaper \
-               --enable-threads \
-               --enable-static \
-               --disable-pdftops \
-               || die "econf failed"
-
-       # Install in /usr/libexec always, instead of using /usr/lib/cups, as that
-       # makes more sense when facing multilib support.
-       sed -i -e 's:SERVERBIN.*:SERVERBIN = $(BUILDROOT)/usr/libexec/cups:' Makedefs
-       sed -i -e 's:#define CUPS_SERVERBIN.*:#define CUPS_SERVERBIN "/usr/libexec/cups":' config.h
-       sed -i -e 's:cups_serverbin=.*:cups_serverbin=/usr/libexec/cups:' cups-config
-
-       emake || die "emake failed"
-}
-
-src_install() {
-       emake BUILDROOT="${D}" install || die "emake install failed"
-       dodoc {CHANGES{,-1.{0,1}},CREDITS,LICENSE,README}.txt
-
-       # clean out cups init scripts
-       rm -rf "${D}"/etc/{init.d/cups,rc*,pam.d/cups}
-       # install our init scripts
-       newinitd "${FILESDIR}"/cupsd.init cupsd
-       # install our pam script
-       pamd_mimic_system cups auth account
-
-       # correct path
-       sed -i -e "s:server = .*:server = /usr/libexec/cups/daemon/cups-lpd:" "${D}"/etc/xinetd.d/cups-lpd
-       # it is safer to disable this by default, bug 137130
-       grep -w 'disable' "${D}"/etc/xinetd.d/cups-lpd || \
-               sed -i -e "s:}:\tdisable = yes\n}:" "${D}"/etc/xinetd.d/cups-lpd
-
-       # install pdftops filter
-       exeinto /usr/libexec/cups/filter/
-       newexe "${FILESDIR}"/pdftops.pl pdftops
-
-       # only for gs-esp this is correct, see bug 163897
-       if has_version app-text/ghostscript-gpl || has_version app-text/ghostscript-gnu; then
-               sed -i -e "s:#application/vnd.cups-postscript:application/vnd.cups-postscript:" "${D}"/etc/cups/mime.convs
-       fi
-
-       keepdir /usr/share/cups/profiles /usr/libexec/cups/driver /var/log/cups \
-               /var/run/cups/certs /var/cache/cups /var/spool/cups/tmp /etc/cups/ssl
-
-       # .desktop handling. X useflag. xdg-open from freedesktop is preferred
-       if use X; then
-               sed -i -e "s:htmlview:xdg-open:" "${D}"/usr/share/applications/cups.desktop
-       else
-               rm -r "${D}"/usr/share/applications
-       fi
-
-       # Fix a symlink collision, see bug #172341
-       dodir /usr/share/ppd
-       dosym /usr/share/ppd /usr/share/cups/model/foomatic-ppds
-}
-
-pkg_preinst() {
-       # cleanups
-       [ -n "${PN}" ] && rm -fR "${ROOT}"/usr/share/doc/${PN}-*
-}
-
-pkg_postinst() {
-       einfo "Remote printing: change "
-       einfo "Listen localhost:631"
-       einfo "to"
-       einfo "Listen *:631"
-       einfo "in /etc/cups/cupsd.conf"
-       einfo
-       einfo "For more information about installing a printer take a look at:"
-       einfo "http://www.gentoo.org/doc/en/printing-howto.xml."
-
-       local good_gs=false
-       for x in app-text/ghostscript-gpl app-text/ghostscript-gnu app-text/ghostscript-esp; do
-               if has_version ${x} && built_with_use ${x} cups; then
-                       good_gs=true
-                       break
-               fi
-       done;
-       if ! ${good_gs}; then
-               ewarn
-               ewarn "You need to emerge ghostscript with the \"cups\" USE flag turned on"
-       fi
-       if has_version =net-print/cups-1.1*; then
-               ewarn
-               ewarn "The configuration changed with cups-1.2, you may want to save the old"
-               ewarn "one and start from scratch:"
-               ewarn "# mv /etc/cups /etc/cups.orig; emerge -va1 cups"
-               ewarn
-               ewarn "You need to rebuild kdelibs for kdeprinter to work with cups-1.2"
-       fi
-       if [ -e "${ROOT}"/usr/lib/cups ]; then
-               ewarn
-               ewarn "/usr/lib/cups exists - You need to remerge every ebuild that"
-               ewarn "installed into /usr/lib/cups and /etc/cups, qfile is in portage-utils:"
-               ewarn "# FEATURES=-collision-protect emerge -va1 \$(qfile -qC /usr/lib/cups /etc/cups | sed \"s:net-print/cups$::\")"
-               ewarn
-               ewarn "FEATURES=-collision-protect is needed to overwrite the compatibility"
-               ewarn "symlinks installed by this package, it wont be needed on later merges."
-               ewarn "You should also run revdep-rebuild"
-
-               # place symlinks to make the update smoothless
-               for i in "${ROOT}"/usr/lib/cups/{backend,filter}/*; do
-                       if [ "${i/\*}" == "${i}" ] && ! [ -e ${i/lib/libexec} ]; then
-                               ln -s ${i} ${i/lib/libexec}
-                       fi
-               done
-       fi
-}
similarity index 56%
rename from net-print/cups/cups-1.2.12-r3.ebuild
rename to net-print/cups/cups-1.3.6.ebuild
index f9a69ced16ff359cf082950523b7b2866b5987a5..ce8da7d51c5deaf1ae02f73886d44900514764ad 100644 (file)
@@ -1,8 +1,6 @@
 # Copyright 1999-2008 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-print/cups/cups-1.2.12-r3.ebuild,v 1.10 2008/01/10 09:04:24 vapier Exp $
-
-WANT_AUTOMAKE=latest
+# $Header: /var/cvsroot/gentoo-x86/net-print/cups/cups-1.3.6.ebuild,v 1.1 2008/02/22 18:13:58 tgurr Exp $
 
 inherit autotools eutils flag-o-matic multilib pam
 
@@ -11,33 +9,41 @@ MY_P=${P/_}
 DESCRIPTION="The Common Unix Printing System"
 HOMEPAGE="http://www.cups.org/"
 SRC_URI="mirror://sourceforge/cups/${MY_P}-source.tar.bz2"
-#http://ftp.funet.fi/pub/mirrors/ftp.easysw.com/pub/cups/${PV}/${MY_P}-source.tar.bz2"
-#ESVN_REPO_URI="http://svn.easysw.com/public/cups/trunk"
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc ~sparc-fbsd x86 ~x86-fbsd"
-IUSE="ldap ssl slp pam php samba nls dbus tiff png ppds jpeg X"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd"
+IUSE="acl avahi dbus java jpeg kerberos ldap nls pam perl php png ppds python samba slp ssl static tiff X zeroconf"
 
-DEP="pam? ( virtual/pam )
-       ssl? ( net-libs/gnutls )
-       slp? ( >=net-libs/openslp-1.0.4 )
-       ldap? ( net-nds/openldap )
+COMMON_DEPEND="acl? ( kernel_linux? ( sys-apps/acl sys-apps/attr ) )
+       avahi? ( net-dns/avahi )
        dbus? ( sys-apps/dbus )
-       png? ( >=media-libs/libpng-1.2.1 )
-       tiff? ( >=media-libs/tiff-3.5.5 )
+       java? ( >=virtual/jre-1.4 )
        jpeg? ( >=media-libs/jpeg-6b )
+       kerberos? ( virtual/krb5 )
+       ldap? ( net-nds/openldap )
+       pam? ( virtual/pam )
+       perl? ( dev-lang/perl )
        php? ( dev-lang/php )
-       app-text/libpaper"
-DEPEND="${DEP}
+       png? ( >=media-libs/libpng-1.2.1 )
+       python? ( dev-lang/python )
+       slp? ( >=net-libs/openslp-1.0.4 )
+       ssl? ( net-libs/gnutls )
+       tiff? ( >=media-libs/tiff-3.5.5 )
+       zeroconf? ( !avahi? ( net-misc/mDNSResponder ) )
+       app-text/libpaper
+       dev-libs/libgcrypt"
+
+DEPEND="${COMMON_DEPEND}
        !<net-print/foomatic-filters-ppds-20070501
        !<net-print/hplip-1.7.4a-r1
        nls? ( sys-devel/gettext )"
-RDEPEND="${DEP}
-       nls? ( virtual/libintl )
+
+RDEPEND="${COMMON_DEPEND}
        !virtual/lpr
-       >=app-text/poppler-0.4.3-r1
-       X? ( x11-misc/xdg-utils )"
+       nls? ( virtual/libintl )
+       X? ( x11-misc/xdg-utils )
+       >=app-text/poppler-0.4.3-r1"
 
 PDEPEND="
        ppds? ( || (
@@ -54,6 +60,7 @@ PDEPEND="
        ) )
        samba? ( >=net-fs/samba-3.0.8 )
        virtual/ghostscript"
+
 PROVIDE="virtual/lpr"
 
 # upstream includes an interactive test which is a nono for gentoo.
@@ -61,16 +68,20 @@ PROVIDE="virtual/lpr"
 # we just leave it out, even if FEATURES=test
 RESTRICT="test"
 
-S=${WORKDIR}/${MY_P}
+S="${WORKDIR}/${MY_P}"
+
+LANGS="de en es et fr he it ja pl sv zh_TW"
+for X in ${LANGS} ; do
+       IUSE="${IUSE} linguas_${X}"
+done
 
 pkg_setup() {
-       if use x86 && [ -d "/usr/lib64" ]
-       then
-               eerror "You are running an x86 system, but /usr/lib64 exists, cups will install all library objects into this directory!"
-               eerror "You should remove /usr/lib64, but before you do, you should check for existing objects, and re-compile all affected packages."
-               eerror "You can use qfile (emerge portage-utils to install qfile) to get a list of the affected ebuilds:"
-               eerror "# qfile -qC /usr/lib64"
-               die "lib64 on x86 detected"
+       if use avahi && ! built_with_use net-dns/avahi mdnsresponder-compat ; then
+               echo
+               eerror "In order to have cups working with avahi zeroconf support, you need"
+               eerror "to have net-dns/avahi emerged with 'mdnsresponder-compat' in your USE"
+               eerror "flag. Please add that flag, re-emerge avahi, and then emerge cups again."
+               die "net-dns/avahi is missing the mdnsresponder-compat feature."
        fi
 
        enewgroup lp
@@ -83,13 +94,11 @@ src_unpack() {
        unpack ${A}
        cd "${S}"
 
-       # upstream does not acknowledge bindnow as a solution
-       epatch "${FILESDIR}"/cups-1.2.0-bindnow.patch
+       # disable configure automagic for acl/attr
+       epatch "${FILESDIR}/${PN}-1.3.0-configure.patch"
 
-       # CVE-2007-4351 security patch, bug #196736
-       epatch "${FILESDIR}"/${PN}-1.2-str2561-v2.patch
        # CVE-2007-4045 security patch, bug #199195
-       epatch "${FILESDIR}"/${PN}-1.2.4-CVE-2007-4045.patch
+       epatch "${FILESDIR}/${PN}-1.3.4-CVE-2007-4045.patch"
 
        # cups does not use autotools "the usual way" and ship a static config.h.in
        eaclocal
@@ -97,39 +106,62 @@ src_unpack() {
 }
 
 src_compile() {
+
+       # locale support
+       strip-linguas ${LANGS}
+
+       if [ -z "${LINGUAS}" ] ; then
+               export LINGUAS=all
+       fi
+
        export DSOFLAGS="${LDFLAGS}"
 
-       if use ldap; then
+       if use ldap ; then
                append-flags -DLDAP_DEPRECATED
        fi
 
+       local myconf
+
+       if use avahi || use zeroconf ; then
+               myconf="${myconf} --enable-dnssd"
+       else
+               myconf="${myconf} --disable-dnssd"
+       fi
+
        econf \
+               --libdir=/usr/$(get_libdir) \
+               --localstatedir=/var \
                --with-cups-user=lp \
                --with-cups-group=lp \
-               --with-system-groups=lpadmin \
-               --localstatedir=/var \
                --with-docdir=/usr/share/cups/html \
-               --with-bindnow=$(bindnow-flags) \
-               $(use_enable pam) \
-               $(use_enable ssl) \
-               --enable-gnutls \
-               $(use_enable slp) \
-               $(use_enable nls) \
+               --with-languages=${LINGUAS} \
+               --with-system-groups=lpadmin \
+               $(use_enable acl) \
                $(use_enable dbus) \
-               $(use_enable png) \
                $(use_enable jpeg) \
+               $(use_enable kerberos gssapi) \
+               $(use_enable ldap) \
+               $(use_enable nls) \
+               $(use_enable pam) \
+               $(use_enable png) \
+               $(use_enable slp) \
+               $(use_enable ssl) \
+               $(use_enable static) \
                $(use_enable tiff) \
+               $(use_with java) \
+               $(use_with perl) \
                $(use_with php) \
-               $(use_enable ldap) \
+               $(use_with python) \
+               --enable-gnutls \
                --enable-libpaper \
                --enable-threads \
-               --enable-static \
                --disable-pdftops \
+               ${myconf} \
                || die "econf failed"
 
-       # Install in /usr/libexec always, instead of using /usr/lib/cups, as that
+       # install in /usr/libexec always, instead of using /usr/lib/cups, as that
        # makes more sense when facing multilib support.
-       sed -i -e 's:SERVERBIN.*:SERVERBIN = $(BUILDROOT)/usr/libexec/cups:' Makedefs
+       sed -i -e 's:SERVERBIN.*:SERVERBIN = "$(BUILDROOT)"/usr/libexec/cups:' Makedefs
        sed -i -e 's:#define CUPS_SERVERBIN.*:#define CUPS_SERVERBIN "/usr/libexec/cups":' config.h
        sed -i -e 's:cups_serverbin=.*:cups_serverbin=/usr/libexec/cups:' cups-config
 
@@ -138,12 +170,20 @@ src_compile() {
 
 src_install() {
        emake BUILDROOT="${D}" install || die "emake install failed"
-       dodoc {CHANGES{,-1.{0,1}},CREDITS,LICENSE,README}.txt
+       dodoc {CHANGES{,-1.{0,1}},CREDITS,README}.txt || die "dodoc install failed"
 
        # clean out cups init scripts
        rm -rf "${D}"/etc/{init.d/cups,rc*,pam.d/cups}
-       # install our init scripts
-       newinitd "${FILESDIR}"/cupsd.init cupsd
+
+       # install our init script
+       local neededservices
+       use avahi && neededservices="$neededservices avahi-daemon"
+       use dbus && neededservices="$neededservices dbus"
+       use zeroconf && ! use avahi && neededservices="$neededservices mDNSResponderPosix"
+       [[ -n ${neededservices} ]] && neededservices="need${neededservices}"
+       sed -e "s/@neededservices@/$neededservices/" "${FILESDIR}"/cupsd.init.d > "${T}"/cupsd
+       doinitd "${T}"/cupsd
+
        # install our pam script
        pamd_mimic_system cups auth account
 
@@ -155,10 +195,10 @@ src_install() {
 
        # install pdftops filter
        exeinto /usr/libexec/cups/filter/
-       newexe "${FILESDIR}"/pdftops.pl pdftops
+       newexe "${FILESDIR}"/pdftops-1.20.gentoo pdftops
 
        # only for gs-esp this is correct, see bug 163897
-       if has_version app-text/ghostscript-gpl || has_version app-text/ghostscript-gnu; then
+       if has_version app-text/ghostscript-gpl || has_version app-text/ghostscript-gnu ; then
                sed -i -e "s:#application/vnd.cups-postscript:application/vnd.cups-postscript:" "${D}"/etc/cups/mime.convs
        fi
 
@@ -166,64 +206,69 @@ src_install() {
                /var/run/cups/certs /var/cache/cups /var/spool/cups/tmp /etc/cups/ssl
 
        # .desktop handling. X useflag. xdg-open from freedesktop is preferred
-       if use X; then
+       if use X ; then
                sed -i -e "s:htmlview:xdg-open:" "${D}"/usr/share/applications/cups.desktop
        else
                rm -r "${D}"/usr/share/applications
        fi
 
-       # Fix a symlink collision, see bug #172341
+       # fix a symlink collision, see bug #172341
        dodir /usr/share/ppd
        dosym /usr/share/ppd /usr/share/cups/model/foomatic-ppds
+
+       # create RSS feed directory
+       diropts -m 0740 -o lp -g lp
+       dodir /var/cache/cups/rss
 }
 
 pkg_preinst() {
        # cleanups
-       [ -n "${PN}" ] && rm -fR "${ROOT}"/usr/share/doc/${PN}-*
+       [ -n "${PN}" ] && rm -fR "${ROOT}"/usr/share/doc/"${PN}"-*
 }
 
 pkg_postinst() {
-       einfo "Remote printing: change "
-       einfo "Listen localhost:631"
-       einfo "to"
-       einfo "Listen *:631"
-       einfo "in /etc/cups/cupsd.conf"
-       einfo
-       einfo "For more information about installing a printer take a look at:"
-       einfo "http://www.gentoo.org/doc/en/printing-howto.xml."
+       echo
+       elog "For information about installing a printer and general cups setup"
+       elog "take a look at: http://www.gentoo.org/doc/en/printing-howto.xml"
+       echo
 
        local good_gs=false
-       for x in app-text/ghostscript-gpl app-text/ghostscript-gnu app-text/ghostscript-esp; do
-               if has_version ${x} && built_with_use ${x} cups; then
+       for x in app-text/ghostscript-gpl app-text/ghostscript-gnu app-text/ghostscript-esp ; do
+               if has_version ${x} && built_with_use ${x} cups ; then
                        good_gs=true
                        break
                fi
        done;
        if ! ${good_gs}; then
-               ewarn
+               echo
                ewarn "You need to emerge ghostscript with the \"cups\" USE flag turned on"
+               echo
        fi
-       if has_version =net-print/cups-1.1*; then
-               ewarn
-               ewarn "The configuration changed with cups-1.2, you may want to save the old"
+
+       if has_version =net-print/cups-1.1* ; then
+               echo
+               ewarn "The configuration changed with cups-1.3, you may want to save the old"
                ewarn "one and start from scratch:"
                ewarn "# mv /etc/cups /etc/cups.orig; emerge -va1 cups"
-               ewarn
-               ewarn "You need to rebuild kdelibs for kdeprinter to work with cups-1.2"
+               echo
+               ewarn "You need to rebuild kdelibs for kdeprinter to work with cups-1.3"
+               echo
        fi
-       if [ -e "${ROOT}"/usr/lib/cups ]; then
-               ewarn
+
+       if [ -e "${ROOT}"/usr/lib/cups ] ; then
+               echo
                ewarn "/usr/lib/cups exists - You need to remerge every ebuild that"
                ewarn "installed into /usr/lib/cups and /etc/cups, qfile is in portage-utils:"
                ewarn "# FEATURES=-collision-protect emerge -va1 \$(qfile -qC /usr/lib/cups /etc/cups | sed \"s:net-print/cups$::\")"
-               ewarn
+               echo
                ewarn "FEATURES=-collision-protect is needed to overwrite the compatibility"
-               ewarn "symlinks installed by this package, it wont be needed on later merges."
+               ewarn "symlinks installed by this package, it won't be needed on later merges."
                ewarn "You should also run revdep-rebuild"
+               echo
 
                # place symlinks to make the update smoothless
-               for i in "${ROOT}"/usr/lib/cups/{backend,filter}/*; do
-                       if [ "${i/\*}" == "${i}" ] && ! [ -e ${i/lib/libexec} ]; then
+               for i in "${ROOT}"/usr/lib/cups/{backend,filter}/* ; do
+                       if [ "${i/\*}" == "${i}" ] && ! [ -e ${i/lib/libexec} ] ; then
                                ln -s ${i} ${i/lib/libexec}
                        fi
                done