1 |
# $Id: LPRng.spec,v 1.6 2008/04/09 13:51:41 slords Exp $ |
2 |
|
3 |
Summary: The LPRng print spooler. |
4 |
Name: LPRng |
5 |
Version: 3.8.32 |
6 |
Release: 2%{?dist} |
7 |
License: GPL and Artistic |
8 |
Group: System Environment/Daemons |
9 |
Source0: ftp://ftp.lprng.com/pub/LPRng/LPRng/%{name}-%{version}.tgz |
10 |
Source1: lpd.init |
11 |
Patch1: LPRng-3.8.32-makefile.patch |
12 |
URL: http://www.lprng.com |
13 |
Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root |
14 |
Obsoletes: lpr |
15 |
Provides: lpr |
16 |
Prereq: /sbin/chkconfig, /etc/rc.d/init.d, mktemp, fileutils, textutils, gawk |
17 |
Prereq: /usr/sbin/alternatives |
18 |
BuildPreReq: gettext ed autoconf |
19 |
BuildRequires: /usr/bin/g77 elfutils-libelf-devel ncurses-devel libtermcap-devel |
20 |
BuildRequires: openssl-devel gettext-devel |
21 |
%{!?nokerberos:BuildPrereq: krb5-devel} |
22 |
%{!?nokerberos:Requires: krb5-libs} |
23 |
|
24 |
# We don't ship these files, but create symlinks to them. Other |
25 |
# packages aren't to know though. |
26 |
Provides: %{_bindir}/lp |
27 |
Provides: %{_bindir}/lpq |
28 |
Provides: %{_bindir}/lpr |
29 |
Provides: %{_bindir}/lprm |
30 |
Provides: %{_bindir}/lpstat |
31 |
Provides: %{_bindir}/cancel |
32 |
Provides: %{_sbindir}/lpc |
33 |
|
34 |
%description |
35 |
LPRng is an enhanced, extended, and portable implementation of the |
36 |
Berkeley LPR print spooler functionality. LPRng provides the same |
37 |
interface and meeting RFC1179 requirements, but the implementation is |
38 |
completely new and provides support for the following features: |
39 |
lightweight (no databases needed) lpr, lpc, and lprm programs; dynamic |
40 |
redirection of print queues; automatic job holding; highly verbose |
41 |
diagnostics; multiple printers serving a single queue; client programs |
42 |
do not need to run SUID root; greatly enhanced security checks; and a |
43 |
greatly improved permission and authorization mechanism. |
44 |
|
45 |
LPRng is compatible with other print spoolers and network printers |
46 |
that use the LPR interface and meet RFC1179 requirements. LPRng |
47 |
provides emulation packages for the SVR4 lp and lpstat programs, |
48 |
eliminating the need for another print spooler package. These |
49 |
emulation packages can be modified according to local requirements, in |
50 |
order to support vintage printing systems. |
51 |
|
52 |
For users who require secure and/or authenticated printing support, |
53 |
LPRng supports Kerberos V, MIT Kerberos IV Print Support, and PGP |
54 |
authentication. Additional authentication support is extremely simple |
55 |
to add. |
56 |
|
57 |
%prep |
58 |
|
59 |
%setup -q |
60 |
%patch1 -p1 |
61 |
|
62 |
# pick up configure.in changes |
63 |
|
64 |
# set up gettext |
65 |
( |
66 |
cd po |
67 |
rm Makefile.in.in |
68 |
ln -s /usr/share/gettext/po/Makefile.in.in . |
69 |
) |
70 |
|
71 |
#sh CREATE_CONFIGURE |
72 |
|
73 |
%build |
74 |
test -f /usr/share/libtool/config.guess && cp /usr/share/libtool/config.guess . |
75 |
test -f /usr/share/libtool/config.sub && cp /usr/share/libtool/config.sub . |
76 |
#PSHOWALL="-ax" ; export PSHOWALL # So that we don't need /proc mounted |
77 |
CFLAGS="$RPM_OPT_FLAGS" ; export CFLAGS |
78 |
%configure --enable-nls \ |
79 |
--with-userid=lp \ |
80 |
--with-groupid=lp \ |
81 |
--disable-werror \ |
82 |
%{!?nokerberos:--enable-kerberos LDFLAGS="-L/usr/kerberos/lib" CPPFLAGS="-I/usr/kerberos/include" } |
83 |
make MAKEPACKAGE=YES |
84 |
|
85 |
%install |
86 |
rm -rf %{buildroot} |
87 |
|
88 |
# Installation of locales is broken... Work around it! |
89 |
|
90 |
make SUID_ROOT_PERMS=" 04755" DESTDIR=${RPM_BUILD_ROOT} MAKEPACKAGE=YES mandir=%{_mandir} install |
91 |
|
92 |
# Remove files we don't ship |
93 |
rm -f %{buildroot}/usr/share/LPRng/*.sample |
94 |
rm -f %{buildroot}%{_sysconfdir}/*.sample |
95 |
rm -f %{buildroot}%{_sysconfdir}/lpd/*.sample |
96 |
rm -f %{buildroot}%{_sysconfdir}/rc.d/init.d/*.sample |
97 |
rm -f %{buildroot}%{_sysconfdir}/lpd/lpd |
98 |
rm -f %{buildroot}%{_sysconfdir}/printcap |
99 |
rm -f %{buildroot}%{_libdir}/liblpr.*a |
100 |
rm -f %{buildroot}%{_sbindir}/lprng_{index_,}certs |
101 |
|
102 |
# install init script |
103 |
mkdir -p %{buildroot}%{_sysconfdir}/rc.d/init.d |
104 |
install -m755 %{SOURCE1} %{buildroot}%{_sysconfdir}/rc.d/init.d/lpd |
105 |
|
106 |
# Alternatives, to avoid conflicting with cups. |
107 |
for f in %{_bindir}/{cancel,lp,lp{q,r,rm,stat}} %{_sbindir}/lpc |
108 |
do |
109 |
mv %{buildroot}${f} %{buildroot}${f}.LPRng |
110 |
done |
111 |
for f in cancel lp lpq lpr lprm lpstat |
112 |
do |
113 |
mv %{buildroot}%{_mandir}/man1/${f}.1 %{buildroot}%{_mandir}/man1/${f}-LPRng.1 |
114 |
done |
115 |
mv %{buildroot}%{_mandir}/man8/lpc.8 %{buildroot}%{_mandir}/man8/lpc-LPRng.8 |
116 |
|
117 |
%clean |
118 |
rm -rf %{buildroot} |
119 |
|
120 |
%post |
121 |
/sbin/ldconfig |
122 |
/sbin/chkconfig --add lpd |
123 |
if [ -w /etc/printcap ] ; then |
124 |
TMP1=`mktemp /etc/printcap.XXXXXX` |
125 |
gawk ' |
126 |
BEGIN { first = 1; cont = 0; last = "" } |
127 |
/^[:space:]*#/ { if(cont) sub("\\\\$", "", last)} |
128 |
{ if(first == 0) print last } |
129 |
{ first = 0 } |
130 |
{ last = $0 } |
131 |
{ cont = 0 } |
132 |
/\\$/ { cont = 1 } |
133 |
END {sub("\\\\$", "", last); print last} |
134 |
' /etc/printcap > ${TMP1} && cat ${TMP1} > /etc/printcap && rm -f ${TMP1} |
135 |
fi |
136 |
|
137 |
# Alternatives |
138 |
/usr/sbin/alternatives --install %{_bindir}/lpr print %{_bindir}/lpr.LPRng 41 \ |
139 |
--slave %{_bindir}/lp print-lp %{_bindir}/lp.LPRng \ |
140 |
--slave %{_bindir}/lpq print-lpq %{_bindir}/lpq.LPRng \ |
141 |
--slave %{_bindir}/lprm print-lprm %{_bindir}/lprm.LPRng \ |
142 |
--slave %{_bindir}/lpstat print-lpstat %{_bindir}/lpstat.LPRng \ |
143 |
--slave %{_bindir}/cancel print-cancel %{_bindir}/cancel.LPRng \ |
144 |
--slave %{_sbindir}/lpc print-lpc %{_sbindir}/lpc.LPRng \ |
145 |
--slave %{_mandir}/man1/cancel.1.gz print-cancelman %{_mandir}/man1/cancel-LPRng.1.gz \ |
146 |
--slave %{_mandir}/man1/lp.1.gz print-lpman %{_mandir}/man1/lp-LPRng.1.gz \ |
147 |
--slave %{_mandir}/man8/lpc.8.gz print-lpcman %{_mandir}/man8/lpc-LPRng.8.gz \ |
148 |
--slave %{_mandir}/man1/lpq.1.gz print-lpqman %{_mandir}/man1/lpq-LPRng.1.gz \ |
149 |
--slave %{_mandir}/man1/lpr.1.gz print-lprman %{_mandir}/man1/lpr-LPRng.1.gz \ |
150 |
--slave %{_mandir}/man1/lprm.1.gz print-lprmman %{_mandir}/man1/lprm-LPRng.1.gz \ |
151 |
--slave %{_mandir}/man1/lpstat.1.gz print-lpstatman %{_mandir}/man1/lpstat-LPRng.1.gz \ |
152 |
--initscript lpd |
153 |
|
154 |
%preun |
155 |
if [ "$1" = 0 ]; then |
156 |
/sbin/service lpd stop >/dev/null 2>&1 |
157 |
/sbin/chkconfig --del lpd |
158 |
/usr/sbin/alternatives --remove print %{_bindir}/lpr.LPRng |
159 |
fi |
160 |
|
161 |
%postun |
162 |
/sbin/ldconfig |
163 |
if [ "$1" -ge "1" ]; then |
164 |
/sbin/service lpd condrestart >/dev/null 2>&1 |
165 |
fi |
166 |
|
167 |
%triggerpostun -- LPRng < 3.8.5-2 |
168 |
# Deal with pre-alternatives packages |
169 |
/usr/sbin/alternatives --auto print |
170 |
|
171 |
%files |
172 |
%defattr(-,root,root) |
173 |
%config %{_sysconfdir}/lpd/lpd.conf |
174 |
%config %{_sysconfdir}/lpd/lpd.perms |
175 |
%config %{_sysconfdir}/rc.d/init.d/lpd |
176 |
%attr(755,lp,lp) %{_bindir}/lpq.LPRng |
177 |
%attr(755,lp,lp) %{_bindir}/lprm.LPRng |
178 |
%attr(755,lp,lp) %{_bindir}/lpr.LPRng |
179 |
%attr(755,lp,lp) %{_bindir}/lpstat.LPRng |
180 |
%{_bindir}/lp.LPRng |
181 |
%{_bindir}/cancel.LPRng |
182 |
%attr(755,lp,lp) %{_sbindir}/lpc.LPRng |
183 |
%attr(755,root,root) %{_sbindir}/lpd |
184 |
%attr(755,root,root) %{_sbindir}/checkpc |
185 |
%attr(755,root,root) /usr/libexec/filters/* |
186 |
%dir /usr/libexec/filters |
187 |
%{_mandir}/*/* |
188 |
%attr(755,root,root) %{_prefix}/share/locale/* |
189 |
%doc CHANGES CONTRIBUTORS COPYRIGHT INSTALL LICENSE |
190 |
%doc README* VERSION Y2KCompliance |
191 |
%doc DOCS |
192 |
|
193 |
%changelog |
194 |
* Fri Jan 11 2008 Shad L. Lords <slords@mail.com> 3.8.32-2.sme |
195 |
- Fix package to use alternatives |
196 |
- Patch Makefile to work correctly |
197 |
|
198 |
* Thu Nov 13 2003 Patrick Powell <papowell@astart.com> 3.8.32-1 |
199 |
- updated everything to fit the new sysconfdir standards |
200 |
- the startup script is copied to sysconfdir/lpd/lpd.init as part of the |
201 |
- normal install now |
202 |
|
203 |
* Tue Aug 21 2001 Patrick Powell <papowell@astart.com> 3.7.5-1 |
204 |
- new release for 3.7.5 |
205 |
- Note the aclocal, autoconf, etc. stuff added to make the various |
206 |
- versions of gettext and libtool compatible with the RedHat version. |
207 |
|
208 |
* Fri Aug 10 2001 Crutcher Dunnavant <crutcher@redhat.com> 3.7.4-28 |
209 |
- disabled gdbm support, changed CFLAGS; #41652 |
210 |
|
211 |
* Thu Aug 9 2001 Crutcher Dunnavant <crutcher@redhat.com> 3.7.4-27 |
212 |
- ownz /usr/libexec/filters; #51158 |
213 |
- make checkpc nonblocking on its tests; #37995 |
214 |
|
215 |
* Thu Aug 2 2001 Crutcher Dunnavant <crutcher@redhat.com> 3.7.4-26 |
216 |
- added gdbm-devel dep; #44885 |
217 |
|
218 |
* Fri Jun 29 2001 Bernhard Rosenkraenzer <bero@redhat.com> |
219 |
- Fix build on s390 |
220 |
|
221 |
* Sun Jun 24 2001 Elliot Lee <sopwith@redhat.com> |
222 |
- Bump release + rebuild. |
223 |
|
224 |
* Thu Jun 07 2001 Crutcher Dunnavant <crutcher@redhat.com> |
225 |
- setgroups droping patch |
226 |
|
227 |
* Thu Mar 29 2001 Crutcher Dunnavant <crutcher@redhat.com> |
228 |
- told checkpc to only Check_file() job files. (keeping it from zapping the master-filter) |
229 |
|
230 |
* Fri Mar 9 2001 Crutcher Dunnavant <crutcher@redhat.com> |
231 |
- applied elliot's patch (which i got idependently from the lprng list as well) |
232 |
- that fixes a thinko that killed LPRng on 64 arches. |
233 |
|
234 |
* Fri Mar 9 2001 Crutcher Dunnavant <crutcher@redhat.com> |
235 |
- fixed the URLs for the LPRng project |
236 |
|
237 |
* Thu Mar 8 2001 Crutcher Dunnavant <crutcher@redhat.com> |
238 |
- reverted the shutdown call in Local_job to make device filters work. |
239 |
- all your base are belong to us |
240 |
|
241 |
* Wed Mar 07 2001 Philipp Knirsch <pknirsch@redhat.de> |
242 |
- Removed the shutdown patch for common/linksupport:Link_close() as ii |
243 |
generated a deadlock between lpr and lpd for none existing printers. |
244 |
|
245 |
* Sun Feb 25 2001 Crutcher Dunnavant <crutcher@redhat.com> |
246 |
- hacked out the shutdown(sock, 1) calls that killed stupid network printers. |
247 |
|
248 |
* Wed Feb 15 2001 Crutcher Dunnavant <crutcher@redhat.com> |
249 |
- tweak to ldp.init's display messages |
250 |
|
251 |
* Fri Feb 9 2001 Crutcher Dunnavant <crutcher@redhat.com> |
252 |
- man page tweak |
253 |
|
254 |
* Thu Feb 8 2001 Crutcher Dunnavant <crutcher@redhat.com> |
255 |
- (yet) further tweaks to lpd.init's display format. |
256 |
|
257 |
* Tue Feb 6 2001 Crutcher Dunnavant <crutcher@redhat.com> |
258 |
- further tweaks to lpd.init's display format. |
259 |
|
260 |
* Tue Feb 6 2001 Crutcher Dunnavant <crutcher@redhat.com> |
261 |
- cleaned up lpd.init to do translations correctly, and stop screwing up |
262 |
- result values. |
263 |
|
264 |
* Thu Feb 1 2001 Crutcher Dunnavant <crutcher@redhat.com> |
265 |
- added lpd init back (ick!) |
266 |
|
267 |
* Wed Jan 24 2001 Crutcher Dunnavant <crutcher@redhat.com> |
268 |
- removed req for printconf (It should go the other way) |
269 |
|
270 |
* Thu Jan 18 2001 Crutcher Dunnavant <crutcher@redhat.com> |
271 |
- fixed file list |
272 |
|
273 |
* Thu Jan 18 2001 Crutcher Dunnavant <crutcher@redhat.com> |
274 |
- removed lpd.init, set requirement of printconf |
275 |
|
276 |
* Thu Jan 11 2001 Crutcher Dunnavant <crutcher@redhat.com> |
277 |
- upgraded to LPRng-3.7.4 |
278 |
|
279 |
* Tue Dec 12 2000 Crutcher Dunnavant <crutcher@redhat.com> |
280 |
- rebuild for kerb |
281 |
|
282 |
* Mon Oct 23 2000 Crutcher Dunnavant <crutcher@redhat.com> |
283 |
- Upgraded to LPRng-3.6.26 |
284 |
- Removed syslog patch, as .24 fixes the problem |
285 |
|
286 |
* Mon Sep 25 2000 Crutcher Dunnavant <crutcher@redhat.com> |
287 |
- Patched use_syslog to avoid a format string exploit. |
288 |
- Resolves bug #17756 |
289 |
|
290 |
* Mon Sep 18 2000 Crutcher Dunnavant <crutcher@redhat.com> |
291 |
- Upgraded to LPRng-3.6.24 |
292 |
|
293 |
* Mon Sep 11 2000 Crutcher Dunnavant <crutcher@redhat.com> |
294 |
- Added gettext to the BuildPreReq list |
295 |
|
296 |
* Mon Sep 11 2000 Crutcher Dunnavant <crutcher@redhat.com> |
297 |
- Fixed lpd.init to use /etc/rc.d/init.d/, instead of /etc/init.d |
298 |
|
299 |
* Mon Sep 11 2000 Crutcher Dunnavant <crutcher@redhat.com> |
300 |
- changed the prereq: /etc/init.d to: /etc/rc.d/init.d |
301 |
- we are not changing that over (yet?) |
302 |
|
303 |
* Mon Aug 14 2000 Crutcher Dunnavant <crutcher@redhat.com> |
304 |
- removed the sticky bit from lpc |
305 |
|
306 |
* Mon Aug 14 2000 Crutcher Dunnavant <crutcher@redhat.com> |
307 |
- removed the sticky bit from the client programs (LPRng doesn't need them) |
308 |
|
309 |
* Sat Aug 05 2000 Bill Nottingham <notting@redhat.com> |
310 |
- condrestart fixes |
311 |
|
312 |
* Fri Aug 4 2000 Bill Nottingham <notting@redhat.com> |
313 |
- triggerpostun on lpr |
314 |
|
315 |
* Sun Jul 30 2000 Bernhard Rosenkraenzer <bero@redhat.com> |
316 |
- 3.6.22 (some fixes) |
317 |
|
318 |
* Tue Jul 25 2000 Bill Nottingham <notting@redhat.com> |
319 |
- fix prereq |
320 |
|
321 |
* Sat Jul 22 2000 Nalin Dahyabhai <nalin@redhat.com> |
322 |
- fix bogus checkpc error messages when the lockfile doesn't exist because |
323 |
init scripts clear /var/run (#14472) |
324 |
|
325 |
* Tue Jul 18 2000 Nalin Dahyabhai <nalin@redhat.com> |
326 |
- fix chkconfig comments in the init script |
327 |
|
328 |
* Mon Jul 17 2000 Nalin Dahyabhai <nalin@redhat.com> |
329 |
- move the init script to /etc/rc.d/init.d |
330 |
- fix perms on setuid binaries |
331 |
|
332 |
* Fri Jul 14 2000 Nalin Dahyabhai <nalin@redhat.com> |
333 |
- patch checkpc to not complain when filter is executable and in the |
334 |
spool directory |
335 |
- remove --disable-force_localhost from configure invocation for better |
336 |
compatibility with BSD LPR and rhs-printfilters |
337 |
- change group back to lp, which is what printtool expects |
338 |
|
339 |
* Thu Jul 13 2000 Nalin Dahyabhai <nalin@redhat.com> |
340 |
- change default group to 'daemon' to match 6.2 |
341 |
- enable NLS support |
342 |
- remove Prefix: tag |
343 |
- break init script out into a separate file |
344 |
- fix up broken printcaps in post-install |
345 |
- run checkpc -f at start-time |
346 |
|
347 |
* Wed Jul 12 2000 Prospector <bugzilla@redhat.com> |
348 |
- automatic rebuild |
349 |
|
350 |
* Tue Jul 11 2000 Bernhard Rosenkraenzer <bero@redhat.com> |
351 |
- 3.6.21 |
352 |
- get rid of the notypedef patch - gcc has been fixed at last. |
353 |
|
354 |
* Mon Jun 26 2000 Preston Brown <pbrown@redhat.com> |
355 |
- sample config files removed from /etc. |
356 |
- initscript moved to /etc/init.d |
357 |
|
358 |
* Wed Jun 21 2000 Bernhard Rosenkraenzer <bero@redhat.com> |
359 |
- 3.6.18 |
360 |
|
361 |
* Sat Jun 17 2000 Bernhard Rosenkraenzer <bero@redhat.com> |
362 |
- 3.6.16 |
363 |
- adapt Kerberos and fixmake patches |
364 |
- get rid of CFLAGS="-O"; gcc has been fixed |
365 |
- fix build with glibc 2.2 |
366 |
|
367 |
* Mon Jun 05 2000 Preston Brown <pbrown@redhat.com> |
368 |
- ifdef 0 is illegal, changed to if 0. |
369 |
- work around compiler typdef bug. |
370 |
|
371 |
* Thu Jun 01 2000 Preston Brown <pbrown@redhat.com> |
372 |
- start, stop, and restart are functions not switch statements now. |
373 |
reduces overhead. |
374 |
- patch to allow autoconf to choose which user/group to run as |
375 |
|
376 |
* Wed May 31 2000 Preston Brown <pbrown@redhat.com> |
377 |
- remove init.d symbolic links. |
378 |
- remove txt/ps/info versions of the HOWTO from the pkg |
379 |
- use new fhs paths |
380 |
|
381 |
* Thu May 25 2000 Nalin Dahyabhai <nalin@redhat.com> |
382 |
- change free() to krb5_free_data_contents() when patching for Kerberos 5 |
383 |
- detect libcrypto or libk5crypto when looking for Kerberos 5 |
384 |
|
385 |
* Tue May 16 2000 Nalin Dahyabhai <nalin@redhat.com> |
386 |
- enable Kerberos support |
387 |
- remove extra defattr in files list |
388 |
- add --disable-force_localhost to configure invocation |
389 |
- remove "-o root" at install-time |
390 |
|
391 |
* Tue May 16 2000 Matt Wilson <msw@redhat.com> |
392 |
- add Prereq of /sbin/chkconfig |
393 |
- fix broken conflicting declaration on alpha |
394 |
|
395 |
* Tue Apr 18 2000 Bernhard Rosenkraenzer <bero@redhat.com> |
396 |
- initial Red Hat packaging, fix up the spec file |
397 |
|
398 |
* Mon Sep 13 1999 Patrick Powell <papowell@astart.com> |
399 |
- resolved problems with symbolic links to /etc/init.d |
400 |
files - used the chkconfig facility |
401 |
|
402 |
* Sat Sep 4 1999 Patrick Powell <papowell@astart.com> |
403 |
- did ugly things to put the script in the spec file |
404 |
|
405 |
* Sat Aug 28 1999 Giulio Orsero <giulioo@tiscalinet.it> |
406 |
- 3.6.8 |
407 |
|
408 |
* Fri Aug 27 1999 Giulio Orsero <giulioo@tiscalinet.it> |
409 |
- 3.6.7 First RPM build. |