Contents of /trunk/extras/cups/cups-2.2.6-r1.smage2
Parent Directory | Revision Log
Revision 30849 -
(show annotations)
(download)
Wed Apr 25 08:12:10 2018 UTC (6 years, 5 months ago) by niro
File size: 6281 byte(s)
Wed Apr 25 08:12:10 2018 UTC (6 years, 5 months ago) by niro
File size: 6281 byte(s)
auto added: ver bump to 2.2.7-r1
1 | # $Id$ |
2 | |
3 | PNAME="cups" |
4 | PVER="2.2.6" |
5 | PBUILD="r1" |
6 | |
7 | SPLIT_PACKAGES="libcups cups" |
8 | |
9 | PCAT="net-print" |
10 | HOMEPAGE="http://www.cups.org/" |
11 | |
12 | LIB_DEPEND=">= virtual/glibc |
13 | >= app-crypt/gnutls-3.6 |
14 | >= media-libs/libpng-1.5 |
15 | >= media-libs/libtiff-4 |
16 | >= virtual/libjpeg |
17 | >= net-dns/avahi-0.7 |
18 | >= sys-libs/zlib-1.2.5 |
19 | >= sys-libs/libstdc++-6.3 |
20 | >= sys-apps/systemd-230" |
21 | |
22 | CUPS_DEPEND=">= sys-libs/pam-1.1 |
23 | >= sys-apps/acl-2.2 |
24 | >= sys-apps/dbus-1.10 |
25 | >= dev-libs/libusb-compat-0.1.3 |
26 | >= dev-libs/dbus-glib-0.108 |
27 | >= app-text/libpaper-1.1.24 |
28 | >= app-text/poppler-0.60" |
29 | |
30 | SDEPEND="${LIB_DEPEND} |
31 | ${CUPS_DEPEND} |
32 | >= sys-dev/automake-9 |
33 | >= sys-dev/autoconf-10" |
34 | |
35 | SRCFILE="${PNAME}-${PVER}-source.tar.gz" |
36 | SRCDIR="${BUILDDIR}/${PNAME}-${PVER}" |
37 | |
38 | sminclude mtools multilib mbuild systemd |
39 | msetfeature "!check" |
40 | |
41 | SRC_URI=( |
42 | https://github.com/apple/${PNAME}/releases/download/v${PVER}/${SRCFILE} |
43 | mirror://${PNAME}/${SRCFILE} |
44 | mirror://${PNAME}/cups.conf.tmpd |
45 | mirror://${PNAME}/cups.logrotate |
46 | mirror://${PNAME}/cups.pam-systemauth |
47 | mirror://${PNAME}/${PNAME}-1.2.11-multilib.patch |
48 | mirror://${PNAME}/${PNAME}-2.2.3-systemd-socket.patch |
49 | mirror://${PNAME}/${PNAME}-1.5.0-build-fix.patch |
50 | mirror://${PNAME}/${PNAME}-2.1.4-dnssd-deviceid.patch |
51 | mirror://${PNAME}/${PNAME}-2.0.3-no-export-ssllibs.patch |
52 | mirror://${PNAME}/${PNAME}-2.2.3-no-gzip-man.patch |
53 | mirror://${PNAME}/${PNAME}-2.0.3-statedir.patch |
54 | mirror://${PNAME}/${PNAME}-2.2.5-perms.patch |
55 | |
56 | ) |
57 | |
58 | # exclude beta versions |
59 | UP2EXCLUDE="b[0-9]" |
60 | UP2DATE="updatecmd https://github.com/apple/cups/releases | grep ${PNAME}- | sed 's:-source::g' | highesttarball gz" |
61 | |
62 | split_info_libcups() |
63 | { |
64 | DESCRIPTION="cups: common unix printing system - client libraries and headers" |
65 | DEPEND="${LIB_DEPEND}" |
66 | } |
67 | |
68 | split_info_cups() |
69 | { |
70 | DESCRIPTION="cups: common unix printing system - service daemons." |
71 | DEPEND="== net-print/libcups-${PVER} |
72 | ${CUPS_DEPEND}" |
73 | } |
74 | |
75 | pkg_setup() |
76 | { |
77 | preinstall_cups |
78 | } |
79 | |
80 | src_prepare() |
81 | { |
82 | munpack ${SRCFILE} || die |
83 | |
84 | # fix hardcoded /usr/lib in cups-directories.m4 to respect 64bit arches |
85 | mpatch ${PNAME}-1.2.11-multilib.patch || die |
86 | |
87 | # adds systemd socket activation support |
88 | mpatch ${PNAME}-2.2.3-systemd-socket.patch || die |
89 | |
90 | # fix build, adds missing -lrt |
91 | mpatch ${PNAME}-1.5.0-build-fix.patch || die |
92 | |
93 | # mark DNSSD device-ids that have been guessed at with "FZY:1;" |
94 | mpatch ${PNAME}-2.1.4-dnssd-deviceid.patch || die |
95 | |
96 | # do not export SSL libs in cups-config |
97 | mpatch ${PNAME}-2.0.3-no-export-ssllibs.patch || die |
98 | |
99 | # do not compress man pages |
100 | mpatch ${PNAME}-2.2.3-no-gzip-man.patch || die |
101 | |
102 | # move /var/run -> /run |
103 | mpatch ${PNAME}-2.0.3-statedir.patch || die |
104 | |
105 | # fix broken install permissions |
106 | mpatch ${PNAME}-2.2.5-perms.patch || die |
107 | |
108 | # set MaxLogSize to 0 to prevent using cups internal log rotation |
109 | sed -i -e '5i\ ' conf/cupsd.conf.in |
110 | sed -i -e '6i# Disable cups internal logging - use logrotate instead' conf/cupsd.conf.in |
111 | sed -i -e '7iMaxLogSize 0' conf/cupsd.conf.in |
112 | |
113 | # non standard configure |
114 | all-abis aclocal -I config-scripts --force || die |
115 | all-abis autoconf --force || die |
116 | } |
117 | |
118 | src_compile() |
119 | { |
120 | mconfigure \ |
121 | --localstatedir=/var \ |
122 | --with-docdir=/usr/share/cups/html \ |
123 | --with-systemdsystemunitdir=$(mget-systemd-unit-dir) \ |
124 | --with-cups-user=lp \ |
125 | --with-cups-group=lp \ |
126 | --with-system-groups=lpadmin \ |
127 | --enable-threads \ |
128 | --enable-pam \ |
129 | --enable-nls \ |
130 | --enable-dbus \ |
131 | --enable-png \ |
132 | --enable-jpeg \ |
133 | --enable-tiff \ |
134 | --enable-libpaper \ |
135 | --enable-avahi \ |
136 | --enable-ssl=yes \ |
137 | --enable-gnutls \ |
138 | --enable-raw-printing \ |
139 | --disable-slp \ |
140 | --disable-php \ |
141 | --disable-ldap \ |
142 | || die |
143 | |
144 | mmake || die |
145 | } |
146 | |
147 | src_install_libcups() |
148 | { |
149 | mmake BUILDROOT=${BINDIR} install-headers || die |
150 | mmake BUILDROOT=${BINDIR} install-libs || die |
151 | # install config utiliy so other packages can find the libs |
152 | # because there a no pkgconfig files |
153 | minstallexec cups-config || die |
154 | } |
155 | |
156 | src_install_cups() |
157 | { |
158 | mmake BUILDROOT=${BINDIR} install-data || die |
159 | mmake BUILDROOT=${BINDIR} install-exec || die |
160 | |
161 | # provided by libcups |
162 | mdelete /usr/bin/cups-config || die |
163 | |
164 | # gzip *all* ppd's not just few |
165 | find ${BINDIR}/usr/share/cups/model -name "*.ppd" | xargs gzip -n9f || die |
166 | |
167 | # remove 32bit serverbins and co on 64bit multilib systems |
168 | if [[ ${ARCH} = x86_64 ]] |
169 | then |
170 | if [[ -d ${BINDIR}/usr/lib/cups ]] |
171 | then |
172 | mdelete -r /usr/lib/cups || die |
173 | fi |
174 | fi |
175 | |
176 | # remove possible installed backup configs |
177 | find ${BINDIR}/etc -name "*.O" | xargs rm -f || die |
178 | find ${BINDIR}/etc -name "*.N" | xargs rm -f || die |
179 | |
180 | # tempfile creation |
181 | minstalltmp cups.conf.tmpd cups.conf || die |
182 | |
183 | # install logrotate config |
184 | minstalllog cups.logrotate cups || die |
185 | |
186 | # install pam config |
187 | minstallpam cups.pam-systemauth cups || die |
188 | |
189 | # ship some config files to keep many apps happy (javapps nxnode etc) |
190 | memptyfile /etc/cups/printers.conf || die |
191 | memptyfile /etc/cups/classes.conf || die |
192 | memptyfile /etc/cups/client.conf || die |
193 | memptyfile /etc/cups/subscriptions.conf || die |
194 | |
195 | # prevents uninstall from prior versions |
196 | mkeepdir /usr/share/cups/profiles || die |
197 | mkeepdir /usr/$(mlibdir)/cups/driver || die |
198 | mkeepdir /var/log/cups || die |
199 | mkeepdir /var/run/cups/certs || die |
200 | mkeepdir /var/spool/cups || die |
201 | mkeepdir /var/spool/cups/tmp || die |
202 | |
203 | # create a rss feed directory |
204 | mkeepdir /var/cache/cups/rss || die |
205 | mchown lp.lp /var/cache/cups/rss || die |
206 | mchmod 0740 /var/cache/cups/rss || die |
207 | |
208 | # create a ssl directory to store cacerts and to fix some samba issues |
209 | mkeepdir /etc/cups/ssl || die |
210 | mchown root:lp /etc/cups/ssl || die |
211 | mchmod 0700 /etc/cups/ssl || die |
212 | |
213 | # fix cupsd permisions |
214 | mchmod 0755 /usr/sbin/cupsd || die |
215 | |
216 | # install missing docs |
217 | minstalldocs CHANGES* CREDITS* LICENSE* README* || die |
218 | } |
219 | |
220 | preinstall_cups() |
221 | { |
222 | mgroupadd -o "-g 106" lpadmin |
223 | mgroupadd -o "-g 9" lp |
224 | museradd -o "-u 9 -g lp -d /var/spool/lpd -s /bin/false" lp |
225 | } |
226 | |
227 | postinstall_cups() |
228 | { |
229 | # renamed cups services |
230 | if systemctl is-enabled cups.service &> /dev/null |
231 | then |
232 | systemctl disable cups.service |
233 | fi |
234 | if systemctl is-enabled cups.socket &> /dev/null |
235 | then |
236 | systemctl disable cups.socket |
237 | fi |
238 | if systemctl is-enabled cups.path &> /dev/null |
239 | then |
240 | systemctl disable cups.path |
241 | fi |
242 | |
243 | mstartunit org.cups.cupsd.service cupsd |
244 | mstartunit org.cups.cupsd.socket cupsd |
245 | } |
246 | |
247 | postremove_cups() |
248 | { |
249 | mstopunit org.cups.cupsd.service cupsd |
250 | mstopunit org.cups.cupsd.socket cupsd |
251 | } |