X-Git-Url: https://git.pld-linux.org/?a=blobdiff_plain;f=cups.spec;h=a552196684a9f231c1dc4b61c3904234ca7a1f0a;hb=3c0838c849a0ffa27df35bdb0855cb67663affaa;hp=6c13e7918ad53830008ed56df7680e2bd89e097f;hpb=de9b99ab9a15b9be48b3901dcadd3da78bfdb0bd;p=packages%2Fcups.git diff --git a/cups.spec b/cups.spec index 6c13e79..a552196 100644 --- a/cups.spec +++ b/cups.spec @@ -1,51 +1,53 @@ -# TODO: -# - kill CFLAGS from `cups-config --libs` -# - build/install java ext ? -# - perl BRs -# - remove obsolete /etc/cups/certs (trigger?) -# -# warning: Installed (but unpackaged) file(s) found: -# /usr/share/applications/cups.desktop -# /usr/share/icons/hicolor/128x128/apps/cups.png -# /usr/share/icons/hicolor/16x16/apps/cups.png -# /usr/share/icons/hicolor/32x32/apps/cups.png -# /usr/share/icons/hicolor/64x64/apps/cups.png # # Conditional build: %bcond_with gnutls # use GNU TLS for SSL/TLS support (instead of OpenSSL) %bcond_without dnssd -%bcond_without php # don't build PHP extension -%bcond_without perl # don't build Perl extension -%bcond_without java -%bcond_without python +%bcond_without php # don't build PHP extension/support in web interface +%bcond_without perl # don't build Perl extension/support in web interface +%bcond_without java # don't build Java extension/support in web interface +%bcond_without python # don't build Python support in web interface %bcond_without static_libs # don't build static library # %include /usr/lib/rpm/macros.perl +%include /usr/lib/rpm/macros.java %define pdir CUPS + +%ifarch i386 i486 ppc +%undefine with_java +%endif + Summary: Common Unix Printing System Summary(pl.UTF-8): Ogólny system druku dla Uniksa Summary(pt_BR.UTF-8): Sistema Unix de Impressão Name: cups -Version: 1.3.4 +Version: 1.3.10 Release: 1 Epoch: 1 -License: GPL/LGPL +License: LGPL v2 (libraries), GPL v2 (the rest) + openssl exception Group: Applications/Printing Source0: http://ftp.easysw.com/pub/cups/%{version}/%{name}-%{version}-source.tar.bz2 -# Source0-md5: 4bd20d69bb083b42632346a383b6aefb +# Source0-md5: 84fffe96b8537c81a463faccead80026 Source1: %{name}.init Source2: %{name}.pamd Source3: %{name}.logrotate Source4: %{name}.mailto.conf +Source5: %{name}-lpd.inetd Patch0: %{name}-config.patch Patch1: %{name}-lp-lpr.patch Patch2: %{name}-options.patch Patch3: %{name}-man_pages_linking.patch Patch4: %{name}-nostrip.patch -Patch5: %{name}-templates.patch -Patch6: %{name}-certs_FHS.patch -Patch7: %{name}-direct_usb.patch +Patch5: %{name}-certs_FHS.patch +Patch6: %{name}-direct_usb.patch +Patch7: %{name}-no-polluted-krb5config.patch +Patch8: %{name}-java-fix.patch +Patch9: %{name}-verbose-compilation.patch +Patch10: %{name}-peercred.patch +Patch11: %{name}-translate.patch URL: http://www.cups.org/ +# http://www.cups.org/str.php?L2974 +# Upgrade to 1.3.10 or patch: http://www.cups.org/strfiles/2974/str2974.patch +BuildRequires: security(CVE-2008-5183) BuildRequires: acl-devel BuildRequires: autoconf BuildRequires: automake @@ -53,27 +55,40 @@ BuildRequires: automake BuildRequires: dbus-devel BuildRequires: glibc-headers %{?with_gnutls:BuildRequires: gnutls-devel} +%{?with_java:BuildRequires: jar} +%{?with_java:BuildRequires: jdk} +%{?with_java:BuildRequires: jpackage-utils} BuildRequires: krb5-devel BuildRequires: libjpeg-devel BuildRequires: libpng-devel BuildRequires: libstdc++-devel BuildRequires: libtiff-devel -BuildRequires: openldap-devel >= 2.4.6 +BuildRequires: openldap-devel BuildRequires: openslp-devel %{!?with_gnutls:BuildRequires: openssl-devel} BuildRequires: pam-devel %{?with_php:BuildRequires: php-devel >= 4:5.0.0} BuildRequires: pkgconfig +%{?with_java:BuildRequires: rpm-javaprov} BuildRequires: rpm-perlprov BuildRequires: rpmbuild(macros) >= 1.344 Requires(post,preun): /sbin/chkconfig Requires: %{name}-libs = %{epoch}:%{version}-%{release} +Requires: openssl-tools Requires: pam >= 0.77.3 Requires: rc-scripts -Obsoletes: printingdaemon Provides: printingdaemon +Obsoletes: printingdaemon Conflicts: ghostscript < 7.05.4 Conflicts: logrotate < 3.7-4 +# pstoraster: +Suggests: cups-filter-pstoraster +# Contains imagetops...: +Suggests: kdelibs +# pdftops: +Suggests: poppler-progs +# pstops: +Suggests: psutils BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define _ulibdir %{_prefix}/lib @@ -108,6 +123,7 @@ portável para os sistemas operacionais baseados no UNIX®. Summary: Common Unix Printing System Libraries Summary(pl.UTF-8): Biblioteki dla CUPS Summary(pt_BR.UTF-8): Sistema Unix de Impressão - bibliotecas para uso em clientes cups +License: LGPL v2 + openssl exception Group: Libraries Provides: %{name}-libs = %{epoch}:%{version}-%{release} Obsoletes: cups-libs @@ -125,10 +141,11 @@ Bibliotecas CUPS requeridas pelos clientes CUPS. %package clients Summary: Common Unix Printing System Clients Summary(pl.UTF-8): Aplikacje klienckie dla CUPS +License: GPL v2 + openssl exception Group: Applications/Printing Requires: %{name}-libs = %{epoch}:%{version}-%{release} -Obsoletes: printingclient Provides: printingclient +Obsoletes: printingclient %description clients Common Unix Printing System Clients. @@ -140,6 +157,7 @@ Aplikacje klienckie dla CUPS. Summary: Common Unix Printing System Libraries - images manipulation Summary(pl.UTF-8): Biblioteki dla CUPS - obsługa formatów graficznych Summary(pt_BR.UTF-8): Sistema Unix de Impressão - bibliotecas para uso em clientes cups +License: LGPL v2 + openssl exception Group: Libraries Requires: %{name}-lib = %{epoch}:%{version}-%{release} Obsoletes: libcups1 @@ -157,6 +175,7 @@ Bibliotecas CUPS requeridas pelos clientes CUPS. Summary: Common Unix Printing System development files Summary(pl.UTF-8): Ogólny system druku dla Uniksa - pliki nagłówkowe Summary(pt_BR.UTF-8): Sistema Unix de Impressão - ambiente de desenvolvimento +License: LGPL v2 + openssl exception Group: Development/Libraries Requires: %{name}-image-lib = %{epoch}:%{version}-%{release} Requires: %{name}-lib = %{epoch}:%{version}-%{release} @@ -186,6 +205,7 @@ CUPS. Summary: Common Unix Printing System static libraries Summary(pl.UTF-8): Ogólny system druku dla Uniksa - biblioteki statyczne Summary(pt_BR.UTF-8): Common Unix Printing System - bibliotecas estáticas +License: LGPL v2 + openssl exception Group: Development/Libraries Requires: %{name}-devel = %{epoch}:%{version}-%{release} @@ -202,6 +222,7 @@ bibliotecas do CUPS. %package -n perl-cups Summary: Perl module for CUPS Summary(pl.UTF-8): Moduł Perla CUPS +License: GPL v2 + openssl exception Group: Development/Languages/Perl Requires: %{name}-lib = %{epoch}:%{version}-%{release} @@ -214,6 +235,7 @@ Moduł Perla do ogólnego systemu druku dla Uniksa. %package -n php-cups Summary: PHP module for CUPS Summary(pl.UTF-8): Moduł PHP CUPS +License: GPL v2 + openssl exception Group: Development/Languages/PHP Requires: %{name}-lib = %{epoch}:%{version}-%{release} %{?requires_php_extension} @@ -226,9 +248,39 @@ PHP module for Common Unix Printing System. %description -n php-cups -l pl.UTF-8 Moduł PHP do ogólnego systemu druku dla Uniksa. +%package -n java-cups +Summary: CUPS java classes +Summary(pl.UTF-8): Klasy javy CUPS +License: GPL v2 + openssl exception +Group: Libraries/Java +Requires: jpackage-utils + +%description -n java-cups +Common Unix Printing System Java classes. + +%description -n java-cups -l pl.UTF-8 +Klasy javy do ogólnego systemu druku dla Uniksa. + +%package -n java-cups-javadoc +Summary: Online manual for %{name} +Summary(pl.UTF-8): Dokumentacja online do %{name} +License: GPL v2 + openssl exception +Group: Documentation +Requires: jpackage-utils + +%description -n java-cups-javadoc +Documentation for %{name}. + +%description -n java-cups-javadoc -l pl.UTF-8 +Dokumentacja do %{name}. + +%description -n java-cups-javadoc -l fr.UTF-8 +Javadoc pour %{name}. + %package backend-usb Summary: USB backend for CUPS Summary(pl.UTF-8): Backend USB dla CUPS-a +License: GPL v2 + openssl exception Group: Applications/Printing Requires: %{name} = %{epoch}:%{version}-%{release} @@ -241,6 +293,7 @@ Ten pakiet umożliwia drukowanie z poziomu CUPS-a na drukarkach USB. %package backend-serial Summary: Serial port backend for CUPS Summary(pl.UTF-8): Backend obsługujący porty szeregowe dla CUPS-a +License: GPL v2 + openssl exception Group: Applications/Printing Requires: %{name} = %{epoch}:%{version}-%{release} @@ -255,6 +308,7 @@ podłączonych do portów szeregowych. %package backend-parallel Summary: Parallel port backend for CUPS Summary(pl.UTF-8): Backend obsługujący porty równoległe dla CUPS-a +License: GPL v2 + openssl exception Group: Applications/Printing Requires: %{name} = %{epoch}:%{version}-%{release} @@ -266,6 +320,20 @@ ports. Ten pakiet umożliwia drukowanie z poziomu CUPS-a na drukarkach podłączonych do portów równoległych. +%package lpd +Summary: LPD compatibility support for CUPS print server +Summary(pl.UTF-8): Wsparcie dla LPD w serwerze wydruków CUPS +License: GPL v2 + openssl exception +Group: Applications/Printing +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: rc-inetd + +%description lpd +LPD compatibility support for CUPS print server. + +%description lpd -l pl.UTF-8 +Wsparcie dla LPD w serwerze wydruków CUPS. + %prep %setup -q %patch0 -p1 @@ -276,34 +344,40 @@ podłączonych do portów równoległych. %patch5 -p1 %patch6 -p1 %patch7 -p1 +%patch8 -p1 +%patch9 -p1 +%patch10 -p1 +%patch11 -p1 %build %{__aclocal} -I config-scripts %{__autoconf} %configure \ --libdir=%{_ulibdir} \ + --disable-cdsassl \ + --enable-dbus \ --enable-shared \ + --enable-ssl \ + %{?debug:--enable-debug} \ + --%{!?with_dnssd:dis}%{?with_dnssd:en}able-dnssd \ + --%{!?with_gnutls:dis}%{?with_gnutls:en}able-gnutls \ + --%{?with_gnutls:dis}%{!?with_gnutls:en}able-openssl \ + %{?with_static_libs:--enable-static} \ --with-cups-user=lp \ - --with-cups-group=sys \ + --with-cups-group=lp \ --with-system-groups=sys \ --with-printcap=/etc/printcap \ - %{?with_static_libs:--enable-static} \ - --enable-ssl \ - --%{?with_gnutls:dis}%{!?with_gnutls:en}able-openssl \ - --%{!?with_gnutls:dis}%{?with_gnutls:en}able-gnutls \ - --%{!?with_dnssd:dis}%{?with_dnssd:en}able-dnssd \ - --disable-cdsassl \ - --enable-dbus \ - %{?debug:--enable-debug} \ + --with-dbusdir=/etc/dbus-1 \ --with-docdir=%{_ulibdir}/%{name}/cgi-bin \ --with-config-file-perm=0640 \ --with-log-file-perm=0640 \ + --with-optim=-Wno-format-y2k \ %{?with_dnssd:--with-dnssd-libs=x} \ %{?with_dnssd:--with-dnssd-includes=x} \ - %{?with_php:--with-php} \ - %{?with_perl:--with-perl} \ %{?with_java:--with-java} \ - %{?with_php:--with-python} + %{?with_perl:--with-perl} \ + %{?with_php:--with-php} \ + %{?with_python:--with-python} %{__make} @@ -323,9 +397,18 @@ cd scripting/perl cd ../.. %endif +%if %{with java} +cd scripting/java +rm -rf classes/* cups.jar +%javac -d classes src/com/easysw/cups/*.java +cd classes +%jar cvf ../cups.jar com/easysw/cups +cd ../../.. +%endif + %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,pam.d,logrotate.d,security} \ +install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,pam.d,logrotate.d,security,sysconfig/rc-inetd} \ $RPM_BUILD_ROOT/var/run/cups \ $RPM_BUILD_ROOT/var/log/{,archive/}cups @@ -344,7 +427,7 @@ fi %{__make} -C scripting/php install \ PHPDIR=$RPM_BUILD_ROOT%{php_extensiondir} install -d $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d -cat > $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/phpcups.ini << EOF +cat > $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/phpcups.ini << 'EOF' ; Enable phpcups extension module extension=phpcups.so EOF @@ -355,10 +438,24 @@ EOF DESTDIR=$RPM_BUILD_ROOT %endif +%if %{with java} +install -d $RPM_BUILD_ROOT{%{_datadir}/java,%{_examplesdir}/java-cups-%{version}} +# jars +cp -a scripting/java/cups.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar +ln -s %{name}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}.jar +# examples +cp -a scripting/java/{CUPSPrinter.java,example} $RPM_BUILD_ROOT%{_examplesdir}/java-cups-%{version} +# javadoc +install -d $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} +cp -a scripting/java/docs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} +ln -s %{name}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name} # ghost symlink +%endif + install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name} install %{SOURCE2} $RPM_BUILD_ROOT/etc/pam.d/%{name} install %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/%{name} -install %{SOURCE4} $RPM_BUILD_ROOT/etc/cups/mailto.conf +install %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/cups/mailto.conf +sed -e 's|__ULIBDIR__|%{_ulibdir}|g' %{SOURCE5} > $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/cups-lpd gzip -9nf $RPM_BUILD_ROOT%{_datadir}/%{name}/model/*.ppd @@ -417,6 +514,17 @@ if [ "$1" = 0 ]; then %php_webserver_restart fi +%post -n java-cups-javadoc +ln -nfs %{name}-%{version} %{_javadocdir}/%{name} + +%post lpd +%service -q rc-inetd reload + +%postun lpd +if [ "$1" = 0 ]; then + %service -q rc-inetd reload +fi + %files %defattr(644,root,root,755) #%doc *.gz doc/*.html doc/*.css doc/images @@ -457,6 +565,7 @@ fi %lang(et) %{_ulibdir}/cups/cgi-bin/et %lang(fr) %{_ulibdir}/cups/cgi-bin/fr %lang(he) %{_ulibdir}/cups/cgi-bin/he +%lang(id) %{_ulibdir}/cups/cgi-bin/id %lang(it) %{_ulibdir}/cups/cgi-bin/it %lang(ja) %{_ulibdir}/cups/cgi-bin/ja %lang(pl) %{_ulibdir}/cups/cgi-bin/pl @@ -467,7 +576,9 @@ fi %exclude %{_ulibdir}/cups/backend/serial %exclude %{_ulibdir}/cups/backend/parallel %attr(755,root,root) %{_ulibdir}/cups/backend/* -%attr(755,root,root) %{_ulibdir}/cups/daemon/* +%attr(755,root,root) %{_ulibdir}/cups/daemon/cups-deviced +%attr(755,root,root) %{_ulibdir}/cups/daemon/cups-driverd +%attr(755,root,root) %{_ulibdir}/cups/daemon/cups-polld %attr(755,root,root) %{_ulibdir}/cups/filter/* %attr(755,root,root) %{_ulibdir}/cups/monitor/* %attr(755,root,root) %{_ulibdir}/cups/notifier/* @@ -495,6 +606,7 @@ fi %lang(et) %{_datadir}/cups/templates/et %lang(fr) %{_datadir}/cups/templates/fr %lang(he) %{_datadir}/cups/templates/he +%lang(id) %{_datadir}/cups/templates/id %lang(it) %{_datadir}/cups/templates/it %lang(ja) %{_datadir}/cups/templates/ja %lang(pl) %{_datadir}/cups/templates/pl @@ -505,7 +617,17 @@ fi %{_mandir}/man1/lppasswd.1* %{_mandir}/man7/backend.7* %{_mandir}/man7/filter.7* -%{_mandir}/man[58]/* +%{_mandir}/man5/* +%{_mandir}/man8/accept.8* +%{_mandir}/man8/cups-deviced.8* +%{_mandir}/man8/cups-driverd.8* +%{_mandir}/man8/cups-polld.8* +%{_mandir}/man8/cupsaddsmb.8* +%{_mandir}/man8/cupsctl.8* +%{_mandir}/man8/cupsd.8* +%{_mandir}/man8/cupsenable.8* +%{_mandir}/man8/cupsfilter.8* +%{_mandir}/man8/lp* %dir %attr(775,root,lp) /var/cache/cups %dir %attr(755,root,lp) /var/lib/cups @@ -536,6 +658,7 @@ fi %lang(fi) %{_datadir}/locale/fi/cups_fi.po %lang(fr) %{_datadir}/locale/fr/cups_fr.po %lang(he) %{_datadir}/locale/he/cups_he.po +%lang(id) %{_datadir}/locale/id/cups_id.po %lang(it) %{_datadir}/locale/it/cups_it.po %lang(ko) %{_datadir}/locale/ko/cups_ko.po %lang(ja) %{_datadir}/locale/ja/cups_ja.po @@ -570,6 +693,8 @@ fi %attr(755,root,root) %{_sbindir}/lpinfo %attr(755,root,root) %{_sbindir}/lpmove %attr(755,root,root) %{_sbindir}/reject +%{_desktopdir}/cups.desktop +%{_iconsdir}/hicolor/*/apps/cups.png %{_mandir}/man1/cancel.1* %{_mandir}/man1/lp.1* %{_mandir}/man1/lpoptions.1* @@ -631,6 +756,18 @@ fi %config(noreplace) %verify(not md5 mtime size) %{php_sysconfdir}/conf.d/phpcups.ini %endif +%if %{with java} +%files -n java-cups +%defattr(644,root,root,755) +%{_javadir}/*.jar +%{_examplesdir}/java-cups-%{version} + +%files -n java-cups-javadoc +%defattr(644,root,root,755) +%{_javadocdir}/%{name}-%{version} +%ghost %{_javadocdir}/%{name} +%endif + %files backend-usb %defattr(644,root,root,755) %attr(755,root,root) %{_ulibdir}/cups/backend/usb @@ -642,3 +779,9 @@ fi %files backend-parallel %defattr(644,root,root,755) %attr(755,root,root) %{_ulibdir}/cups/backend/parallel + +%files lpd +%defattr(644,root,root,755) +%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/* +%attr(755,root,root) %{_ulibdir}/cups/daemon/cups-lpd +%{_mandir}/man8/cups-lpd.8*