]> git.pld-linux.org Git - packages/LPRng.git/blobdiff - LPRng.spec
- rediff patches, rel 5
[packages/LPRng.git] / LPRng.spec
index 9e8d85d7aa1619de517fade63eb10bf41e694684..5fdd05d0c8022fbaa0e85d58a2c7096dd70c452e 100644 (file)
@@ -1,34 +1,54 @@
+# NOTE: a bit newer fork is hosted at lprng.sourceforge.net (latest release 3.8.C from 2012)
+#
+# Conditional build:
+%bcond_with    kerberos5       # build with kerberos5 support
+#
 Summary:       A next-generation printing system for UNIX
-Summary(pl):   System drukowania nowej generacji
+Summary(pl.UTF-8):     System drukowania nowej generacji
+Summary(pt_BR.UTF-8):  Gerenciador de impressão para UNIX e NT
+Summary(ru.UTF-8):     Спулер печати LPRng
+Summary(uk.UTF-8):     Спулер друку LPRng
+Summary(zh_CN.UTF-8):  LPRng--打印程序
 Name:          LPRng
-Version:       3.7.5
-Release:       1
-License:       GPL
+Version:       3.8.35
+Release:       5
+License:       GPL v2 with OpenSSL exception or Artistic
 Group:         Applications/System
-Group(de):     Applikationen/System
-Group(pl):     Aplikacje/System
-Source0:       ftp://ftp.astart.com/pub/LPRng/LPRng/%{name}-%{version}.tgz
-Source1:       %{name}.init
-Source2:       %{name}.conf
-Patch0:                %{name}-jobfilescan.patch
-Patch1:                %{name}-ac_fixes.patch
-Patch2:                %{name}-inet_ntop.patch
-Patch3:                %{name}-direct.patch
-Patch4:                %{name}-manpage.patch
-Patch5:                %{name}-shutdown.patch
-Patch6:                %{name}-lockfile.patch
-Patch7:                %{name}-setgroups.patch
-URL:           http://www.astart.com/lprng/LPRng.html
+Source0:       http://www.lprng.com/DISTRIB/LPRng/%{name}-%{version}.tgz
+# Source0-md5: aaf76e4a94300352514d23bdfa66f0e7
+Source1:       http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-pl-man-pages.tar.bz2
+# Source1-md5: 4771b1c3598677a8201a9e203235dff3
+Source2:       %{name}.init
+Patch0:                %{name}-ac_fixes.patch
+Patch1:                %{name}-lpd-perms.patch
+Patch2:                %{name}-ngettext.patch
+Patch3:                %{name}-missing-nls.patch
+Patch4:                %{name}-pl.po.patch
+Patch5:                %{name}-types.patch
+Patch6:                %{name}-shell.patch
+Patch7:                %{name}-as-needed.patch
+Patch8:                %{name}-lpd.conf.patch
+Patch9:                %{name}-format.patch
+Patch10:       %{name}-openssl1.1.patch
+URL:           http://www.lprng.com/
 BuildRequires: autoconf
 BuildRequires: automake
-BuildRequires: gettext-devel
-BuildRequires: ncurses-devel >= 5.0
-Prereq:                /sbin/chkconfig
-Prereq:                rc-scripts >= 0.2.0
-Provides:      lpr
-Obsoletes:     lpr
+BuildRequires: gettext-tools
+%{?with_kerberos5:BuildRequires:       heimdal-devel}
+BuildRequires: libtool
+BuildRequires: libwrap-devel
+BuildRequires: openssl-devel >= 0.9.7d
+BuildRequires: rpmbuild(macros) >= 1.315
+Requires(post):        /sbin/ldconfig
+Requires(post,preun):  /sbin/chkconfig
+Requires:      rc-scripts >= 0.2.0
+Provides:      printingclient
+Provides:      printingdaemon
+Obsoletes:     printingclient
+Obsoletes:     printingdaemon
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
+%define                lpfiltersdir    %{_libexecdir}/lpfilters
 
 %description
 The LPRng software is an enhanced, extended, and portable
@@ -58,12 +78,96 @@ extremely simple to add. LPRng is Open Source Software, and the
 current public distribution is available from the listed FTP and Web
 Sites.
 
-%description -l pl
-LPRng jest systemem drukowania nowej generacji zwiêkszaj±cym
-niezawodno¶æ i bezpieczeñstwo.
+%description -l pl.UTF-8
+LPRng jest rozszerzoną, ulepszoną i portowalną implementacją
+Berkeleyowskiego LPR, czyli spoolera wydruków. Dostarcza ten sam
+interfejs oraz jest zgodny z wymaganiami RFC1179. Jednocześnie
+wykonanie jest całkowicie nowe i dostarcza następujące rzeczy:
+- programy - "lekki" lpr (nie są potrzebne żadne bazy danych), lpc,
+  oraz lprm;
+- dynamiczna redyrekcja do kolejek;
+- automatyczne wstrzymywanie zadań;
+- "gadatliwa" diagnostyka;
+- obsługę wielu drukarek na jednej kolejce;
+- programy klienckie nie muszą być SUID root;
+- mocno rozszerzona kontrola bezpieczeństwa;
+- mocno rozszerzone mechanizmy bezpieczeństwa i kontroli uprawnień.
+
+Oprogramowanie to kompiluje się i działa na wielu systemach uniksowych
+i jest kompatybilne z innymi print spoolami oraz drukarkami
+sieciowymi, które używają interfejsu LPR oraz spełniają wymagania
+RFC1179. LPRng dostarcza pakiety emulacyjne dla programów SVR4 lp oraz
+lpstat, eliminując w ten sposób konieczność posiadania jeszcze jednego
+pakietu print spoola. Te pakiety mogą być modyfikowane zgodnie z
+lokalnymi wymaganiami.
+
+Dla użytkowników, którzy potrzebują bezpiecznej i uwierzytelnianej
+obsługi drukowania LPRng wspiera Kerberos V, MIT Kerberos IV Print
+Support oraz PGP.
+
+%description -l pt_BR.UTF-8
+LPRng é uma versão melhorada, estendida e mais segura do gerenciador
+de impressão LPR. Entre as melhorias se destacam: redirecionamento
+dinâmico de filas de impressão, suspensão automática de trabalhos de
+impressão, diagnóstico detalhado, várias impressoras por fila,
+programas cliente não precisam ser SUID root e um mecanismo bastante
+melhorado de permissões e autorizações.
+
+%description -l ru.UTF-8
+LPRng - это улучшенная, расширенная и портируемая реализация
+функциональности спулера печати Berkeley LPR. Предоставляя тот же
+интерфейс и отвечая всем требованиям RFC1179, эта реализация
+совершенно новая и предоставляет поддержку следующих возможностей:
+компактный (не требующий базы данных) lpr, программы lpc и lprm;
+динамическая переадресация очередей печати; автоматическая
+приостановка заданий; очень детальная диагностика; обслуживание одной
+очереди несколькими принтерами; клиентские программы не должны быть
+SUID root; сильно улучшенная система безопасности; сильно улучшенные
+механизмы авторизации и прав доступа.
+
+Программное обеспечение компиллируется и работает на большом
+количестве UNIX-систем и совместимо с другими спулерами печати и
+сетевыми принтерами, которые используют интерфейс LPR и отвечают
+требованиям RFC1179. LPRng также предоставляет пакеты эмуляции для
+программ SVR4 lp и lpstat, исключая потребность в другом пакете
+спулера печати. Эти пакеты эмуляции могут быть модифицированы в
+соответствии с локальными требованиями для поддержки антикварных
+систем печати.
+
+Для пользователей, которым нужна безопасная и/или аутентицируемая
+поддержка печати, LPRng поддерживает Kerberos V, MIT Kerberos IV Print
+Support и аутентикацию PGP. LPRng принят за стандарт в MIT для
+использования в качестве системы поддержки печати в их кампусе.
+Дополнительная поддержка аутентикации может быть добавлена без особых
+усилий.
+
+%description -l uk.UTF-8
+LPRng - це покращена, розширена та портована реалізація функційності
+спулеру друку Berkeley LPR. Надаючи той же інтерфейс та відповідаючи
+усім вимогам RFC1179, ця реалізація абсолютно нова і надає підтримку
+таких можливостей: компактний (не вимагаючий бази даних) lpr, програми
+lpc та lprm; динамічна переадресація черг друку; автоматичне
+призупинення завдань; дуже детальна діагностика; обслуговування одної
+черги кількома прінтерами; клієнтські програми не повинні бути SUID
+root; сильно покращена система безпеки; сильно покращені механізми
+авторизації та прав доступу.
+
+Програмне забезпечення компілюється та працює на великій кількості
+UNIX-систем і сумісне з іншими спулерами друку та мережевими
+прінтерами, котрі використовують інтерфейс LPR та відповідають вимогам
+RFC1179. LPRng також надає пакети емуляції для програм SVR4 lp та
+lpstat, виключаючи потребу в іншому пакеті спулера друку. Ці пакети
+емуляции можуть бути модифіковані у відповідності з локальними
+вимогами для підтримки антикварних систем друку.
+
+Для користувачів, яким потрібна безпечна та/або аутентифікована
+підтримка друку, LPRng підтримує Kerberos V, MIT Kerberos IV Print
+Support та аутентикацію PGP. LPRng прийнято за стандарт в MIT для
+використання в якості системи підтримки друку в їх кампусі. Додаткова
+підтримка аутентикації може бути додана без особливих зусиль.
 
 %prep
-%setup  -q
+%setup -q
 %patch0 -p1
 %patch1 -p1
 %patch2 -p1
@@ -72,42 +176,51 @@ niezawodno
 %patch5 -p1
 %patch6 -p1
 %patch7 -p1
+%patch8 -p1
+%patch9 -p1
+%patch10 -p1
+
+%{__mv} PrintingCookbook/{HTML,PrintingCookbook}
+%{__rm} po/stamp-po
 
 %build
-rm -f missing
-gettextize --copy --force
-aclocal
-autoconf
-(cd gdbm-1.8.0 ; aclocal ; autoconf )
+%{__autoconf}
+# now it wants to use /etc/lpd/lpd.{conf,perms} - stick to old values?
 %configure \
+       OPENSSL=/usr/bin/openssl \
+       PSHOWALL="ax" \
        --disable-setuid \
+       --enable-shared \
        --with-userid=lp \
        --with-groupid=lp \
-       --with-filterdir=%{_libdir}/lpfilters \
-       --with-lockfile=%{_var}/spool/lpd/lpd
+       --with-filterdir=%{lpfiltersdir} \
+       --with-lockfile=%{_var}/spool/lpd/lpd \
+       --with-lpd_conf_path=%{_sysconfdir}/lpd.conf \
+       --with-lpd_perms_path=%{_sysconfdir}/lpd.perms \
+       --with-done_jobs=0 \
+       --disable-static \
+       --disable-werror \
+       %{?with_kerberos5:--enable-kerberos} \
+       %{!?with_kerberos5:--disable-kerberos} \
+       --enable-tcpwrappers \
+       --enable-ssl
 
-%{__make}
+%{__make} -j1
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d  $RPM_BUILD_ROOT{/etc/rc.d/init.d,%{_var}/spool/lpd}
+install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,%{_var}/spool/lpd/lp} \
+       $RPM_BUILD_ROOT%{_sysconfdir}/lpd/ssl.{ca,crl,server}
 
-%{__make} install \
-       DESTDIR=$RPM_BUILD_ROOT
+%{__make} -j1 install \
+       DESTDIR=$RPM_BUILD_ROOT \
+       POSTINSTALL="NO"
 
-install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/lpd
-# yes, overwrite distribution lpd.conf
-install %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/lpd.conf
-echo "default_printer = lp" >>$RPM_BUILD_ROOT%{_sysconfdir}/lpd.conf
-install printcap.in $RPM_BUILD_ROOT%{_sysconfdir}/printcap
-install lpd.perms $RPM_BUILD_ROOT%{_sysconfdir}/
-# default spool
-install -d $RPM_BUILD_ROOT%{_var}/spool/lpd/lp
+install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/lpd
 
-rm -fr TESTSUPPORT/{Makefile*,LPD}
-mv -f lpd.conf TESTSUPPORT/lpd.conf.distrib
+bzip2 -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
 
-gzip -9nf CHANGES CONTRIBUTORS README* TESTSUPPORT/*
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/liblpr.{so,la}
 
 %find_lang %{name}
 
@@ -115,32 +228,69 @@ gzip -9nf CHANGES CONTRIBUTORS README* TESTSUPPORT/*
 rm -rf $RPM_BUILD_ROOT
 
 %post
+/sbin/ldconfig
 /sbin/chkconfig --add lpd
-if [ -f /var/lock/subsys/lpd ]; then
-       /etc/rc.d/init.d/lpd restart 1>&2
-else
-       echo "Run \"/etc/rc.d/init.d/lpd start\" to start LPRng lpd daemon."
-fi
+%service lpd restart "LPRng lpd daemon"
 
 %preun
 if [ "$1" = "0" ]; then
-       if [ -f /var/lock/subsys/lpd ]; then
-               /etc/rc.d/init.d/lpd stop 1>&2
-       fi
        /sbin/chkconfig --del lpd
+       %service lpd stop
 fi
 
+%postun -p /sbin/ldconfig
+
 %files -f %{name}.lang
 %defattr(644,root,root,755)
-%doc *.gz TESTSUPPORT HOWTO/LPRng-HOWTO.html
-%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/lpd.conf
-%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/lpd.perms
-%config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/printcap
+%doc CHANGES CONTRIBUTORS COPYRIGHT README README.SSL* TODO
+%doc DOCS/LPRng-Reference.{html,pdf} DOCS/*.jpg DOCS/*.png
+%doc PrintingCookbook/PrintingCookbook PrintingCookbook/PDF/*.pdf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lpd.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lpd.perms
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/printcap
+%dir %{_sysconfdir}/lpd
+# what perms?
+%attr(750,root,lp) %dir %{_sysconfdir}/lpd/ssl.ca
+%attr(750,root,lp) %dir %{_sysconfdir}/lpd/ssl.crl
+%attr(750,root,lp) %dir %{_sysconfdir}/lpd/ssl.server
 %attr(754,root,root) /etc/rc.d/init.d/lpd
-%attr(755,root,root) %{_bindir}/*
-%attr(755,root,root) %{_sbindir}/*
-%dir %{_libdir}/lpfilters
-%attr(755,root,root) %{_libdir}/lpfilters/*
+%attr(755,root,root) %{_bindir}/cancel
+%attr(755,root,root) %{_bindir}/lp
+%attr(755,root,root) %{_bindir}/lpq
+%attr(755,root,root) %{_bindir}/lpr
+%attr(755,root,root) %{_bindir}/lprm
+%attr(755,root,root) %{_bindir}/lpstat
+%attr(755,root,root) %{_sbindir}/checkpc
+%attr(755,root,root) %{_sbindir}/lpc
+%attr(755,root,root) %{_sbindir}/lpd
+%attr(755,root,root) %{_sbindir}/lprng_certs
+%attr(755,root,root) %{_sbindir}/lprng_index_certs
+%attr(755,root,root) %{_libdir}/liblpr.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/liblpr.so.0
+%dir %{lpfiltersdir}
+%attr(755,root,root) %{lpfiltersdir}/lpbanner
+%attr(755,root,root) %{lpfiltersdir}/lpf
+%attr(755,root,root) %{lpfiltersdir}/pclbanner
+%attr(755,root,root) %{lpfiltersdir}/psbanner
 %dir %attr(750,root,lp) %{_var}/spool/lpd
 %dir %attr(770,root,lp) %{_var}/spool/lpd/lp
-%{_mandir}/man[158]/*
+%{_mandir}/man1/cancel.1*
+%{_mandir}/man1/lp.1*
+%{_mandir}/man1/lpbanner.1*
+%{_mandir}/man1/lpf.1*
+%{_mandir}/man1/lpq.1*
+%{_mandir}/man1/lpr.1*
+%{_mandir}/man1/lprm.1*
+%{_mandir}/man1/lprng_certs.1*
+%{_mandir}/man1/lprng_index_certs.1*
+%{_mandir}/man1/lpstat.1*
+%{_mandir}/man1/monitor.1*
+%{_mandir}/man1/pclbanner.1*
+%{_mandir}/man1/psbanner.1*
+%{_mandir}/man5/lpd.conf.5*
+%{_mandir}/man5/lpd.perms.5*
+%{_mandir}/man5/printcap.5*
+%{_mandir}/man8/checkpc.8*
+%{_mandir}/man8/lpc.8*
+%{_mandir}/man8/lpd.8*
+%lang(pl) %{_mandir}/pl/man[158]/*
This page took 0.086074 seconds and 4 git commands to generate.