#
# Conditional build:
%bcond_with gnutls # use GNU TLS for SSL/TLS support (instead of OpenSSL)
-%bcond_without dnssd # DNS Service Discovery support
+%bcond_without dnssd # DNS Service Discovery support (obsoleted by Avahi patch)
+%bcond_with avahi # DNS Service Discovery support via Avahi
%bcond_without ldap # do not include LDAP support
%bcond_without gssapi # do not include GSSAPI support
-%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 python # don't build Python support in web interface
%bcond_without slp # do not include SLP support
%bcond_without static_libs # don't build static library
-#
-%include /usr/lib/rpm/macros.perl
-%define pdir CUPS
+%define pdir CUPS
Summary(pl.UTF-8): Ogólny system druku dla Uniksa
Summary(pt_BR.UTF-8): Sistema Unix de Impressão
Name: cups
-Version: 1.5.0
-Release: 2
+Version: 1.5.1
+Release: 0.1
Epoch: 1
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: e54ed09ede2340fc3014913333520fe4
+# Source0-md5: 7e7026f5b6392deae46f889129b196a7
Source1: %{name}.init
Source2: %{name}.pamd
Source3: %{name}.logrotate
Source4: %{name}.mailto.conf
Source5: %{name}-lpd.inetd
Source6: %{name}-modprobe.conf
+Source7: %{name}.tmpfiles
# svn diff http://svn.easysw.com/public/cups/tags/release-1.4.3/ http://svn.easysw.com/public/cups/branches/branch-1.4/ > cups-branch.diff
# + drop config-scripts/cups-common.m4 change
Patch0: %{name}-config.patch
Patch10: %{name}-peercred.patch
Patch11: %{name}-usb.patch
Patch12: %{name}-desktop.patch
-Patch13: %{name}-ssl-segfault.patch
+# avahi patches from fedora
+Patch100: %{name}-avahi-1-config.patch
+Patch101: %{name}-avahi-2-backend.patch
+Patch102: %{name}-avahi-3-timeouts.patch
+Patch103: %{name}-avahi-4-poll.patch
+Patch104: %{name}-avahi-5-services.patch
URL: http://www.cups.org/
BuildRequires: acl-devel
BuildRequires: autoconf >= 2.60
BuildRequires: automake
-%{?with_dnssd:BuildRequires: avahi-compat-libdns_sd-devel}
+%{?with_dnssd:BuildRequires: avahi-compat-libdns_sd-devel}
+%{?with_avahi:BuildRequires: avahi-devel}
BuildRequires: dbus-devel
BuildRequires: glibc-headers
%{?with_gnutls:BuildRequires: gnutls-devel}
%{?with_slp:BuildRequires: openslp-devel}
%{!?with_gnutls:BuildRequires: openssl-devel}
BuildRequires: pam-devel
-%{?with_php:BuildRequires: php-devel >= 4:5.0.0}
BuildRequires: pkgconfig
-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: perl-modules
Requires: rc-scripts
Suggests: ImageMagick-coder-pdf
Suggests: cups-filter-pstoraster
Bibliotecas estáticas para desenvolvimento de programas que usam as
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}
-
-%description -n perl-cups
-Perl module for Common Unix Printing System.
-
-%description -n perl-cups -l pl.UTF-8
-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}
-Requires: /etc/php/conf.d
-Requires: php-common >= 4:5.0.0
-
-%description -n php-cups
-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 backend-usb
Summary: USB backend for CUPS
Summary(pl.UTF-8): Backend USB dla CUPS-a
# why it hasn't been merged for so long (and why no other distro uses it)
#%patch11 -p1
%patch12 -p1
-%patch13 -p1
+
+%if %{with avahi}
+%patch100 -p1
+%patch101 -p1
+%patch102 -p1
+%patch103 -p1
+%patch104 -p1
+%endif
%build
%{__aclocal} -I config-scripts
--enable-shared \
--enable-ssl \
%{?debug:--enable-debug} \
+ --%{!?with_avahi:dis}%{?with_avahi:en}able-avahi \
--%{!?with_dnssd:dis}%{?with_dnssd:en}able-dnssd \
--%{!?with_ldap:dis}%{?with_ldap:en}able-ldap \
--%{!?with_gssapi:dis}%{?with_gssapi:en}able-gssapi \
--with-optim=-Wno-format-y2k \
%{?with_dnssd:--with-dnssd-libs=x} \
%{?with_dnssd:--with-dnssd-includes=x} \
- %{?with_perl:--with-perl=%{_bindir}/perl} \
- %{?with_php:--with-php=%{_bindir}/php} \
%{?with_python:--with-python=%{_bindir}/python}
-%{__make}
-
-%{__perl} -pi -e 's#-I\.\.\/\.\.#-I../.. -I../../cups#g' scripting/php/Makefile
-%{?with_php:%{__make} -C scripting/php PHPCONFIG=%{_bindir}/php-config}
-
-%if %{with perl}
-cd scripting/perl
-%{__perl} -pi -e 's@-lcups@-L../../cups $1@' Makefile.PL
-%{__perl} Makefile.PL \
- INSTALLDIRS=vendor \
- OPTIMIZE="%{rpmcflags} -I../.."
-# avoid rpaths generated by MakeMaker
-%{__perl} -pi -e 's@LD_RUN_PATH="\$\(LD_RUN_PATH\)" @@' Makefile
-
-%{__make}
-cd ../..
-%endif
+%{__make} %{?debug:OPTIONS="-DDEBUG"}
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,pam.d,logrotate.d,modprobe.d,security,sysconfig/rc-inetd} \
$RPM_BUILD_ROOT/var/run/cups \
- $RPM_BUILD_ROOT/var/log/{,archive/}cups
+ $RPM_BUILD_ROOT/var/log/{,archive/}cups \
+ $RPM_BUILD_ROOT/usr/lib/tmpfiles.d
%{__make} install \
BUILDROOT=$RPM_BUILD_ROOT \
%endif
fi
-%if %{with php}
-%{__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'
-; Enable phpcups extension module
-extension=phpcups.so
-EOF
-%endif
-
-%if %{with perl}
-%{__make} -C scripting/perl install \
- DESTDIR=$RPM_BUILD_ROOT
-%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 %{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%{_sysconfdir}/cups/mailto.conf
sed -e 's|__ULIBDIR__|%{_ulibdir}|g' %{SOURCE5} > $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/cups-lpd
-install %{SOURCE6} $RPM_BUILD_ROOT/etc/modprobe.d/cups.conf
+install %{SOURCE6} $RPM_BUILD_ROOT/etc/modprobe.d/cups.conf
+install %{SOURCE7} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/%{name}.conf
touch $RPM_BUILD_ROOT/var/log/cups/{access_log,error_log,page_log}
touch $RPM_BUILD_ROOT/etc/security/blacklist.cups
%post image-lib -p /sbin/ldconfig
%postun image-lib -p /sbin/ldconfig
-%post -n php-cups
-%php_webserver_restart
-
-%postun -n php-cups
-if [ "$1" = 0 ]; then
- %php_webserver_restart
-fi
-
%post lpd
%service -q rc-inetd reload
%lang(pl) %{_ulibdir}/cups/cgi-bin/pl
%lang(ru) %{_ulibdir}/cups/cgi-bin/ru
-%exclude %{_ulibdir}/cups/backend/usb
-%exclude %{_ulibdir}/cups/backend/serial
-%exclude %{_ulibdir}/cups/backend/parallel
-%attr(755,root,root) %{_ulibdir}/cups/backend/*
+%attr(755,root,root) %{_ulibdir}/cups/backend/dnssd
+%attr(755,root,root) %{_ulibdir}/cups/backend/http
+%attr(755,root,root) %{_ulibdir}/cups/backend/https
+%attr(755,root,root) %{_ulibdir}/cups/backend/ipp
+%attr(755,root,root) %{_ulibdir}/cups/backend/ipps
+%attr(755,root,root) %{_ulibdir}/cups/backend/lpd
+%attr(755,root,root) %{_ulibdir}/cups/backend/mdns
+%attr(755,root,root) %{_ulibdir}/cups/backend/snmp
+%attr(755,root,root) %{_ulibdir}/cups/backend/socket
%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-exec
%{_mandir}/man8/cupsfilter.8*
%{_mandir}/man8/lp*
+/usr/lib/tmpfiles.d/%{name}.conf
%dir %attr(775,root,lp) /var/cache/cups
%dir %attr(755,root,lp) /var/lib/cups
%dir %attr(511,lp,sys) /var/lib/cups/certs
%{_libdir}/libcupsppdc.a
%endif
-%if %{with perl}
-%files -n perl-cups
-%defattr(644,root,root,755)
-%{perl_vendorarch}/CUPS.pm
-%dir %{perl_vendorarch}/auto/CUPS
-%{perl_vendorarch}/auto/CUPS/CUPS.bs
-%{perl_vendorarch}/auto/CUPS/autosplit.ix
-%attr(755,root,root) %{perl_vendorarch}/auto/CUPS/CUPS.so
-%{_mandir}/man3/CUPS.3pm*
-%endif
-
-%if %{with php}
-%files -n php-cups
-%defattr(644,root,root,755)
-%doc scripting/php/README
-%attr(755,root,root) %{php_extensiondir}/phpcups.so
-%config(noreplace) %verify(not md5 mtime size) %{php_sysconfdir}/conf.d/phpcups.ini
-%endif
-
%files backend-usb
%defattr(644,root,root,755)
%attr(755,root,root) %{_ulibdir}/cups/backend/usb