summaryrefslogtreecommitdiffstats
path: root/abs/extra/cups/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'abs/extra/cups/PKGBUILD')
-rw-r--r--abs/extra/cups/PKGBUILD138
1 files changed, 102 insertions, 36 deletions
diff --git a/abs/extra/cups/PKGBUILD b/abs/extra/cups/PKGBUILD
index 730bed3..9a55d2f 100644
--- a/abs/extra/cups/PKGBUILD
+++ b/abs/extra/cups/PKGBUILD
@@ -1,74 +1,133 @@
-# $Id: PKGBUILD 98719 2010-11-12 22:23:13Z andyrtr $
+# $Id: PKGBUILD 161774 2012-06-13 17:38:37Z andyrtr $
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
pkgbase="cups"
pkgname=('libcups' 'cups')
-pkgver=1.4.5
-pkgrel=1
+pkgver=1.5.3
+pkgrel=5
arch=('i686' 'x86_64')
license=('GPL')
url="http://www.cups.org/"
-makedepends=('libtiff>=3.9.2-2' 'libpng>=1.4.0' 'acl' 'openslp' 'pam' 'xdg-utils' 'heimdal>=1.3.1' 'gnutls>=2.8.3' 'poppler>=0.12.3'
- 'xinetd' 'gzip' 'autoconf' 'php' 'libusb' 'dbus-core' 'avahi' 'hicolor-icon-theme')
+makedepends=('libtiff>=4.0.0' 'libpng>=1.5.7' 'acl' 'openslp' 'pam' 'xdg-utils' 'krb5' 'gnutls>=2.8.3' 'cups-filters' 'bc'
+ 'xinetd' 'gzip' 'autoconf' 'libusb' 'dbus-core' 'avahi' 'hicolor-icon-theme' 'systemd')
source=(ftp://ftp.easysw.com/pub/cups/${pkgver}/cups-${pkgver}-source.tar.bz2
- cups-avahi.patch
+ cups-avahi-1-config.patch
+ cups-avahi-2-backend.patch
+ cups-avahi-3-timeouts.patch
+ cups-avahi-4-poll.patch
+ cups-avahi-5-services.patch
+ cups-no-export-ssllibs.patch
+ cups-no-gcrypt.patch
+ cups-no-gzip-man.patch
+ cups-systemd-socket.patch
cups cups.logrotate cups.pam)
#options=('!emptydirs')
-md5sums=('50729f6fc46ba54223e0eaf5009f3419'
- '8ebd390197501ffd709f0ee546937fd5'
- '5c85b7d8d2ddd02c2c64955cebbf55ea'
+md5sums=('e1ad15257aa6f162414ea3beae0c5df8'
+ '12c8af5bcd3b8f84240280b3dfaf9e89'
+ 'cdc1322c8014297ae349e2db78a03c5a'
+ '1a5112f63958643f2888abc9418dbcac'
+ 'c37d1bf1bb76acc3fe93362c80d91b7c'
+ '5d302860559960042f3b47a91b97c5fe'
+ '9b8467a1e51d360096b70e2c3c081e6c'
+ '3733c23e77eb503bd94cc368e02830dc'
+ 'c9159ba1233902ba6ddbbe6885a46b72'
+ '4505b8b2c57a7c28ea79e08388bbbbb9'
+ '9657daa21760bb0b5fa3d8b51d5e01a1'
'f861b18f4446c43918c8643dcbbd7f6d'
'96f82c38f3f540b53f3e5144900acf17')
build() {
cd ${srcdir}/${pkgbase}-${pkgver}
- # Avahi support in the dnssd backend. patch from Fedora
- patch -Np1 -i ${srcdir}/cups-avahi.patch || return 1
+ # http://www.cups.org/str.php?L3066
+ # Avahi support in the dnssd backend. patches from upstream/FC RawHide
+ patch -Np1 -i ${srcdir}/cups-avahi-1-config.patch
+ patch -Np1 -i ${srcdir}/cups-avahi-2-backend.patch
+ patch -Np1 -i ${srcdir}/cups-avahi-3-timeouts.patch
+ patch -Np1 -i ${srcdir}/cups-avahi-4-poll.patch
+ patch -Np1 -i ${srcdir}/cups-avahi-5-services.patch
+
+ # add systemd socket support - Fedora patch, also used in Gentoo
+ patch -Np1 -i ${srcdir}/cups-systemd-socket.patch
+
+ # Do not export SSL libs in cups-config
+ patch -Np1 -i "${srcdir}/cups-no-export-ssllibs.patch"
+
+ patch -Np1 -i "${srcdir}/cups-no-gcrypt.patch"
+ # don't zip man pages in make install, let makepkg do that / Fedora
+ patch -Np1 -i ${srcdir}/cups-no-gzip-man.patch
# Rebuild configure script for --enable-avahi.
aclocal -I config-scripts
autoconf -I config-scripts
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
- --with-logdir=/var/log/cups -with-docdir=/usr/share/cups/doc \
- --with-cups-user=daemon --with-cups-group=lp --enable-pam=yes \
- --disable-ldap --libdir=/usr/lib --enable-raw-printing \
- --enable-dbus --with-dbusdir=/etc/dbus-1 --enable-ssl=yes --enable-gnutls --disable-threads --enable-avahi\
- --with-php=/usr/bin/php-cgi --with-pdftops=pdftops --with-optim="$CFLAGS"
- make || return 1
+ --libdir=/usr/lib \
+ --with-systemdsystemunitdir=/usr/lib/systemd/system \
+ --with-logdir=/var/log/cups \
+ --with-docdir=/usr/share/cups/doc \
+ --with-cups-user=daemon \
+ --with-cups-group=lp \
+ --enable-pam=yes \
+ --disable-ldap \
+ --enable-raw-printing \
+ --enable-dbus --with-dbusdir=/etc/dbus-1 \
+ --enable-ssl=yes --enable-gnutls \
+ --enable-threads \
+ --enable-avahi\
+ --with-php=/usr/bin/php-cgi \
+ --with-pdftops=pdftops \
+ --with-optim="$CFLAGS"
+ make
+}
+
+check() {
+ cd "$srcdir/$pkgbase-$pkgver"
+ #httpAddrGetList(workstation64): FAIL
+ #1 TESTS FAILED!
+ #make[1]: *** [testhttp] Error 1
+ make -k check || /bin/true
}
package_libcups() {
pkgdesc="The CUPS Printing System - client libraries and headers"
-depends=('gnutls>=2.8.3' 'libtiff>=3.9.2-2' 'libpng>=1.4.0' 'heimdal>=1.3.1' 'avahi')
+depends=('gnutls>=2.8.3' 'libtiff>=4.0.0' 'libpng>=1.5.7' 'krb5' 'avahi')
+backup=(etc/cups/client.conf)
cd ${srcdir}/${pkgbase}-${pkgver}
- make BUILDROOT=${pkgdir} install-headers install-libs || return 1
+ make BUILDROOT=${pkgdir} install-headers install-libs
# put this into the libs pkg to make other software find the libs(no pkg-config file included)
- mkdir -p ${pkgdir}/usr/bin
+ mkdir -p ${pkgdir}/usr/bin
install -m755 ${srcdir}/${pkgbase}-${pkgver}/cups-config ${pkgdir}/usr/bin/cups-config
+
+ # install client.conf man page and config file
+ install -dm755 ${pkgdir}/usr/share/man/man5
+ #install -Dm644 ${srcdir}/${pkgbase}-${pkgver}/man/client.conf.5.gz ${pkgdir}/usr/share/man/man5/
+ install -Dm644 ${srcdir}/${pkgbase}-${pkgver}/man/client.conf.5 ${pkgdir}/usr/share/man/man5/
+ install -dm755 ${pkgdir}/etc/cups
+ touch ${pkgdir}/etc/cups/client.conf
+ echo "# see 'man client.conf'" >> ${pkgdir}/etc/cups/client.conf
+ echo "ServerName /var/run/cups/cups.sock # alternative: ServerName hostname-or-ip-address[:port] of a remote server" >> ${pkgdir}/etc/cups/client.conf
+ chgrp lp ${pkgdir}/etc/cups/client.conf
}
package_cups() {
-pkgdesc="The CUPS Printing System - deamon package"
+pkgdesc="The CUPS Printing System - daemon package"
install=cups.install
backup=(etc/cups/cupsd.conf
- etc/cups/mime.convs
- etc/cups/mime.types
etc/cups/snmp.conf
etc/cups/printers.conf
etc/cups/classes.conf
- etc/cups/client.conf
etc/cups/subscriptions.conf
etc/dbus-1/system.d/cups.conf
etc/logrotate.d/cups
etc/pam.d/cups
etc/xinetd.d/cups-lpd)
-depends=('acl' 'openslp' 'pam' "libcups>=${pkgver}" 'xdg-utils' 'poppler>=0.12.3' 'libusb' 'dbus-core' 'hicolor-icon-theme')
-optdepends=('php: for included phpcups.so module')
+depends=('acl' 'openslp' 'pam' "libcups>=${pkgver}" 'cups-filters' 'bc' 'libusb' 'dbus-core' 'libsystemd' 'hicolor-icon-theme')
+optdepends=('php: for included phpcups.so module'
+ 'xdg-utils: xdg .desktop file support')
cd ${srcdir}/${pkgbase}-${pkgver}
- make BUILDROOT=${pkgdir} install-data install-exec || return 1
+ make BUILDROOT=${pkgdir} install-data install-exec
# this one we ship in the libcups pkg
rm -f ${pkgdir}/usr/bin/cups-config
@@ -76,7 +135,7 @@ optdepends=('php: for included phpcups.so module')
# kill the sysv stuff
rm -rf ${pkgdir}/etc/rc*.d
rm -rf ${pkgdir}/etc/init.d
- install -D -m755 ../cups ${pkgdir}/etc/rc.d/cups
+ install -D -m755 ../cups ${pkgdir}/etc/rc.d/cupsd
install -D -m644 ../cups.logrotate ${pkgdir}/etc/logrotate.d/cups
install -D -m644 ../cups.pam ${pkgdir}/etc/pam.d/cups
@@ -84,25 +143,32 @@ optdepends=('php: for included phpcups.so module')
chmod 755 ${pkgdir}/var/spool
chmod 755 ${pkgdir}/etc
- # serial backend needs to run as root (http://bugs.archlinux.org/task/20396)
- chmod 700 ${pkgdir}/usr/lib/cups/backend/serial
-
# install ssl directory where to store the certs, solves some samba issues
install -dm700 -g lp ${pkgdir}/etc/cups/ssl
- install -dm511 -g lp ${pkgdir}/var/run/cups/certs
+ # remove directory from package, we create it in cups rc.d file
+ rm -rf ${pkgdir}/var/run
# install some more configuration files that will get filled by cupsd
touch ${pkgdir}/etc/cups/printers.conf
touch ${pkgdir}/etc/cups/classes.conf
- touch ${pkgdir}/etc/cups/client.conf
- echo "# see 'man client.conf'" >> ${pkgdir}/etc/cups/client.conf
- echo "ServerName /var/run/cups/cups.sock # alternative: ServerName hostname-or-ip-address[:port] of a remote server" >> ${pkgdir}/etc/cups/client.conf
touch ${pkgdir}/etc/cups/subscriptions.conf
- chgrp lp ${pkgdir}/etc/cups/{printers.conf,classes.conf,client.conf,subscriptions.conf}
+ chgrp lp ${pkgdir}/etc/cups/{printers.conf,classes.conf,subscriptions.conf}
# fix .desktop file
sed -i 's|^Exec=htmlview http://localhost:631/|Exec=xdg-open http://localhost:631/|g' ${pkgdir}/usr/share/applications/cups.desktop
# compress some driver files, adopted from Fedora
find ${pkgdir}/usr/share/cups/model -name "*.ppd" | xargs gzip -n9f
+
+ # remove client.conf man page
+ rm -f ${pkgdir}/usr/share/man/man5/client.conf.5
+
+ # remove files now part of cups-filters - check cups-filters INSTALL for packagers instructions
+ rm -v ${pkgdir}/usr/lib/cups/backend/{parallel,serial}
+ rm -v ${pkgdir}/usr/lib/cups/filter/{bannertops,commandtoescpx,commandtopclx,imagetops,imagetoraster,pdftops,rastertoescpx,rastertopclx,texttops}
+ rm -v ${pkgdir}/usr/share/cups/banners/*
+ rm -v ${pkgdir}/usr/share/cups/data/{testprint,psglyphs}
+ rm -v ${pkgdir}/usr/share/cups/fonts/*
+ # comment out all conversion rules which use any of the removed filters
+ perl -p -i -e 's:^(.*\s+(pdftops|texttops|imagetops|bannertops|imagetoraster)\s*)$:#\1:' ${pkgdir}/usr/share/cups/mime/mime.convs
}