Files
2024-06-14 18:36:49 +03:00

100 lines
3.5 KiB
Python

#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/licenses/gpl.txt
from pisi.actionsapi import get
from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import shelltools
Libdir = "/usr/lib32" if get.buildTYPE() == "emul32" else "/usr/lib"
def setup():
#pisitools.flags.add("-fstack-protector-all", "-DLDAP_DEPRECATED=1")
pisitools.dosed("config-scripts/cups-sharedlibs.m4", "( -shared )", " -Wl,--as-needed\\1")
# For --enable-avahi
autotools.aclocal("-I config-scripts")
autotools.autoconf("-f -I config-scripts")
options = '--with-cups-user=daemon \
--with-cups-group=lp \
--with-system-groups=lpadmin \
--with-docdir=/usr/share/cups/html \
--with-dbusdir=/etc/dbus-1 \
--with-optim="%s" \
--with-php=/usr/bin/php-cgi \
--with-cupsd-file-perm=0755 \
--with-log-file-perm=0600 \
--enable-acl \
--enable-libpaper \
--enable-debug \
--enable-gssapi \
--enable-dbus \
--enable-pam=yes \
--enable-relro \
--enable-browsing \
--enable-raw-printing \
--with-tls=gnutls \
--disable-libusb \
--with-rcdir=no \
--libdir=%s \
--disable-systemd \
--with-pkgconfpath=%s/pkgconfig \
--with-logdir=/var/log/cups \
KRB5CONFIG=/usr/bin/krb5-config \
--localstatedir=/var \
--with-rundir=/run/cups \
--with-xinetd=/etc/xinetd.d \
' % (get.CFLAGS(), Libdir, Libdir)
if get.buildTYPE() == "emul32":
options += ' \
--prefix=/usr \
--enable-libusb=no \
--with-dnssd=no \
--disable-gssapi \
--disable-systemd \
--disable-dbus \
--bindir=/usr/bin32 \
--sbindir=/usr/sbin32'
else:
options += " --with-dnssd=yes"
autotools.configure(options)
def build():
autotools.make()
#def check():
#autotools.make("check")
def install():
if get.buildTYPE() == "emul32":
# SERVERBIN is hardcoded to /usr/lib/cups, thus it overwrites 64 bit libraries
autotools.rawInstall("BUILDROOT=%s SERVERBIN=%s/usr/serverbin32 install-libs" % (get.installDIR(), get.installDIR()))
pisitools.domove("/usr/bin32/cups-config", "/usr/bin", "cups-config-32bit")
pisitools.removeDir("/usr/bin32")
pisitools.removeDir("/usr/sbin32")
pisitools.removeDir("/usr/serverbin32")
# remove files now part of cups-filters
#pisitools.remove("/usr/share/cups/data/testprint")
pisitools.removeDir("/usr/share/cups/banners")
pisitools.dodir("/usr/share/cups/banners")
pisitools.dosed("%s/usr/bin/cups-config-32bit" % get.installDIR(), "bin32", "bin")
return
autotools.rawInstall("BUILDROOT=%s install-headers install-libs install-data install-exec" % get.installDIR())
shelltools.chmod("%s/run/cups/certs" % get.installDIR(), 0755)
pisitools.dodir("/usr/share/cups/profiles")
# Serial backend needs to run as root
#shelltools.chmod("%s/usr/lib/cups/backend/serial" % get.installDIR(), 0700)
pisitools.dodoc("LICENSE", "README*", "CHANGES*")