b91c6c3
# we build CUPS also with relro
b91c6c3
%global _hardened_build 1
b91c6c3
b91c6c3
Summary: OpenPrinting CUPS filters and backends
b91c6c3
Name:    cups-filters
99db87d
Version: 1.0.32
99db87d
Release: 1%{?dist}
b91c6c3
b91c6c3
# For a breakdown of the licensing, see COPYING file
b91c6c3
# GPLv2:   filters: commandto*, imagetoraster, pdftops, rasterto*,
b91c6c3
#                   imagetopdf, pstopdf, texttopdf
b91c6c3
#         backends: parallel, serial
b91c6c3
# GPLv2+:  filters: textonly, texttops, imagetops
b91c6c3
# GPLv3:   filters: bannertopdf
8b72b84
# GPLv3+:  filters: urftopdf
8f8fc52
# LGPLv2+:   utils: cups-browsed
b91c6c3
# MIT:     filters: pdftoijs, pdftoopvp, pdftopdf, pdftoraster
8f8fc52
License: GPLv2 and GPLv2+ and GPLv3 and GPLv3+ and LGPLv2+ and MIT
b91c6c3
b91c6c3
Group:   System Environment/Base
8f8fc52
Url:     http://www.linuxfoundation.org/collaborate/workgroups/openprinting/pdf_as_standard_print_job_format
8f8fc52
Source0: http://www.openprinting.org/download/cups-filters/cups-filters-%{version}.tar.xz
8f8fc52
Source1: cups-browsed.service
b91c6c3
b91c6c3
Requires: cups-filters-libs%{?_isa} = %{version}-%{release}
b91c6c3
b91c6c3
BuildRequires: cups-devel
16e6482
# pdftopdf
060dfd6
BuildRequires: qpdf-devel
16e6482
# pdftops
16e6482
BuildRequires: poppler-utils
16e6482
# pdftoijs, pdftoopvp, pdftoraster
16e6482
BuildRequires: poppler-devel poppler-cpp-devel
b91c6c3
BuildRequires: libjpeg-devel
b91c6c3
BuildRequires: libpng-devel
b91c6c3
BuildRequires: libtiff-devel
b91c6c3
BuildRequires: zlib-devel
b91c6c3
# libijs
b91c6c3
BuildRequires: ghostscript-devel
b91c6c3
BuildRequires: freetype-devel
b91c6c3
BuildRequires: fontconfig-devel
b91c6c3
BuildRequires: lcms2-devel
8f8fc52
# cups-browsed
16c7d32
BuildRequires: avahi-devel avahi-glib-devel
8f8fc52
BuildRequires: systemd
b91c6c3
b91c6c3
# Make sure we get postscriptdriver tags.
b91c6c3
BuildRequires: python-cups
b91c6c3
060dfd6
# autogen.sh
b91c6c3
BuildRequires: autoconf
b91c6c3
BuildRequires: automake
b91c6c3
BuildRequires: libtool
b91c6c3
b91c6c3
Requires: cups-filesystem
b91c6c3
Requires: poppler-utils
b91c6c3
8f8fc52
# cups-browsed
8f8fc52
Requires(post): systemd
8f8fc52
Requires(preun): systemd
8f8fc52
Requires(postun): systemd
8f8fc52
b91c6c3
%package libs
b91c6c3
Summary: OpenPrinting CUPS filters and backends - cupsfilters and fontembed libraries
b91c6c3
Group:   System Environment/Libraries
b91c6c3
# LGPLv2: libcupsfilters
b91c6c3
# MIT:    libfontembed
b91c6c3
License: LGPLv2 and MIT
b91c6c3
b91c6c3
%package devel
b91c6c3
Summary: OpenPrinting CUPS filters and backends - development environment
b91c6c3
Group:   Development/Libraries
b91c6c3
License: LGPLv2 and MIT
b91c6c3
Requires: cups-filters-libs%{?_isa} = %{version}-%{release}
b91c6c3
b91c6c3
%description
b91c6c3
Contains backends, filters, and other software that was
b91c6c3
once part of the core CUPS distribution but is no longer maintained by
b91c6c3
Apple Inc. In addition it contains additional filters developed
b91c6c3
independently of Apple, especially filters for the PDF-centric printing
b91c6c3
workflow introduced by OpenPrinting.
b91c6c3
b91c6c3
%description libs
b91c6c3
This package provides cupsfilters and fontembed libraries.
b91c6c3
b91c6c3
%description devel
b91c6c3
This is the development package for OpenPrinting CUPS filters and backends.
b91c6c3
b91c6c3
%prep
b91c6c3
%setup -q
b91c6c3
b91c6c3
%build
060dfd6
# work-around Rpath
b91c6c3
./autogen.sh
b91c6c3
b91c6c3
# --with-pdftops=pdftops - use Poppler instead of Ghostscript (see README)
8f8fc52
# --with-rcdir=no - don't install SysV init script
b91c6c3
%configure --disable-static \
b91c6c3
           --disable-silent-rules \
8f8fc52
           --with-pdftops=pdftops \
16c7d32
           --with-browseremoteprotocols=DNSSD,CUPS \
8f8fc52
           --with-rcdir=no
b91c6c3
b91c6c3
make %{?_smp_mflags}
b91c6c3
b91c6c3
%install
b91c6c3
make install DESTDIR=%{buildroot}
b91c6c3
b91c6c3
# https://fedoraproject.org/wiki/Packaging_tricks#With_.25doc
b91c6c3
mkdir __doc
b91c6c3
mv  %{buildroot}%{_datadir}/doc/cups-filters/* __doc
b91c6c3
rm -rf %{buildroot}%{_datadir}/doc/cups-filters
b91c6c3
b91c6c3
# Don't ship libtool la files.
b91c6c3
rm -f %{buildroot}%{_libdir}/lib*.la
b91c6c3
b91c6c3
# Not sure what is this good for.
b91c6c3
rm -f %{buildroot}%{_bindir}/ttfread
b91c6c3
8f8fc52
# systemd unit file
8f8fc52
mkdir -p %{buildroot}%{_unitdir}
8f8fc52
install -p -m 644 %{SOURCE1} %{buildroot}%{_unitdir}
8f8fc52
8f8fc52
%post
8f8fc52
%systemd_post cups-browsed.service
8f8fc52
09fdb61
# Initial installation
09fdb61
if [ $1 -eq 1 ] ; then
09fdb61
    IN=%{_sysconfdir}/cups/cupsd.conf
09fdb61
    OUT=%{_sysconfdir}/cups/cups-browsed.conf
09fdb61
    keyword=BrowsePoll
09fdb61
5d19066
    # We can remove this after few releases, it's just for the introduction of cups-browsed.
5d19066
    if [ -f "$OUT" ]; then
5d19066
        echo -e "\nNOTE: This file is not part of CUPS. You need to start&enable cups-browsed service." >> "$OUT"
5d19066
    fi
5d19066
5d19066
    # move BrowsePoll from cupsd.conf to cups-browsed.conf
285a043
    if [ -f "$IN" ] && grep -iq ^$keyword "$IN"; then
09fdb61
        if ! grep -iq ^$keyword "$OUT"; then
09fdb61
            (cat >> "$OUT" <
09fdb61
09fdb61
# Settings automatically moved from cupsd.conf by RPM package:
09fdb61
EOF
09fdb61
            ) || :
09fdb61
            (grep -i ^$keyword "$IN" >> "$OUT") || :
09fdb61
            #systemctl enable cups-browsed.service >/dev/null 2>&1 || :
09fdb61
        fi
09fdb61
        sed -i -e "s,^$keyword,#$keyword directive moved to cups-browsed.conf\n#$keyword,i" "$IN" || :
09fdb61
    fi
09fdb61
fi
09fdb61
8f8fc52
%preun
8f8fc52
%systemd_preun cups-browsed.service
8f8fc52
8f8fc52
%postun
8f8fc52
%systemd_postun_with_restart cups-browsed.service 
8f8fc52
b91c6c3
%post libs -p /sbin/ldconfig
b91c6c3
b91c6c3
%postun libs -p /sbin/ldconfig
b91c6c3
8f8fc52
b91c6c3
%files
b91c6c3
%doc __doc/README __doc/AUTHORS __doc/NEWS
16c7d32
%config(noreplace) %{_sysconfdir}/cups/cups-browsed.conf
b91c6c3
%config(noreplace) %{_sysconfdir}/fonts/conf.d/99pdftoopvp.conf
b91c6c3
%attr(0755,root,root) %{_cups_serverbin}/filter/*
b91c6c3
%attr(0755,root,root) %{_cups_serverbin}/backend/parallel
dc9ba04
# Serial backend needs to run as root (bug #212577#c4).
b91c6c3
%attr(0700,root,root) %{_cups_serverbin}/backend/serial
6eadbb2
%{_datadir}/cups/banners
b91c6c3
%{_datadir}/cups/charsets
b91c6c3
%{_datadir}/cups/data/*
b91c6c3
%{_datadir}/cups/drv/cupsfilters.drv
b91c6c3
%{_datadir}/cups/mime/cupsfilters.types
b91c6c3
%{_datadir}/cups/mime/cupsfilters.convs
b91c6c3
%{_datadir}/ppd/cupsfilters
8f8fc52
%{_sbindir}/cups-browsed
8f8fc52
%{_unitdir}/cups-browsed.service
b91c6c3
b91c6c3
%files libs
b91c6c3
%doc __doc/COPYING fontembed/README
b91c6c3
%attr(0755,root,root) %{_libdir}/libcupsfilters.so.*
b91c6c3
%attr(0755,root,root) %{_libdir}/libfontembed.so.*
b91c6c3
b91c6c3
%files devel
b91c6c3
%{_includedir}/cupsfilters
b91c6c3
%{_includedir}/fontembed
b91c6c3
%{_libdir}/pkgconfig/libcupsfilters.pc
b91c6c3
%{_libdir}/pkgconfig/libfontembed.pc
b91c6c3
%{_libdir}/libcupsfilters.so
b91c6c3
%{_libdir}/libfontembed.so
b91c6c3
b91c6c3
%changelog
99db87d
* Thu Apr 04 2013 Fridolin Pokorny <fpokorny@redhat.com> - 1.0.32-1
99db87d
- 1.0.32
99db87d
5d19066
* Fri Mar 29 2013 Jiri Popelka <jpopelka@redhat.com> - 1.0.31-3
5d19066
- add note to cups-browsed.conf
5d19066
285a043
* Thu Mar 28 2013 Jiri Popelka <jpopelka@redhat.com> - 1.0.31-2
285a043
- check cupsd.conf existence prior to grepping it (#928816)
285a043
f4a5fb7
* Fri Mar 22 2013 Jiri Popelka <jpopelka@redhat.com> - 1.0.31-1
f4a5fb7
- 1.0.31
f4a5fb7
6eadbb2
* Tue Mar 19 2013 Jiri Popelka <jpopelka@redhat.com> - 1.0.30-4
6eadbb2
- revert previous change
6eadbb2
e955a6c
* Wed Mar 13 2013 Jiri Popelka <jpopelka@redhat.com> - 1.0.30-3
e955a6c
- don't ship banners for now (#919489)
e955a6c
09fdb61
* Tue Mar 12 2013 Jiri Popelka <jpopelka@redhat.com> - 1.0.30-2
09fdb61
- move BrowsePoll from cupsd.conf to cups-browsed.conf in %%post
09fdb61
16c7d32
* Fri Mar 08 2013 Jiri Popelka <jpopelka@redhat.com> - 1.0.30-1
16c7d32
- 1.0.30: CUPS browsing and broadcasting in cups-browsed
16c7d32
12f499f
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.29-4
12f499f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
12f499f
Rex Dieter 9261356
* Sat Jan 19 2013 Rex Dieter <rdieter@fedoraproject.org> 1.0.29-3
Rex Dieter 9261356
- backport upstream buildfix for poppler-0.22.x
Rex Dieter 9261356
Adam Tkac c9807df
* Fri Jan 18 2013 Adam Tkac <atkac redhat com> - 1.0.29-2
Adam Tkac c9807df
- rebuild due to "jpeg8-ABI" feature drop
Adam Tkac c9807df
961ee94
* Thu Jan 03 2013 Jiri Popelka <jpopelka@redhat.com> 1.0.29-1
961ee94
- 1.0.29
961ee94
8f8fc52
* Wed Jan 02 2013 Jiri Popelka <jpopelka@redhat.com> 1.0.28-1
8f8fc52
- 1.0.28: cups-browsed daemon and service
8f8fc52
8b72b84
* Thu Nov 29 2012 Jiri Popelka <jpopelka@redhat.com> 1.0.25-1
8b72b84
- 1.0.25
8b72b84
682426e
* Fri Sep 07 2012 Jiri Popelka <jpopelka@redhat.com> 1.0.24-1
682426e
- 1.0.24
682426e
16e6482
* Wed Aug 22 2012 Jiri Popelka <jpopelka@redhat.com> 1.0.23-1
16e6482
- 1.0.23: old pdftopdf removed
16e6482
060dfd6
* Tue Aug 21 2012 Jiri Popelka <jpopelka@redhat.com> 1.0.22-1
060dfd6
- 1.0.22: new pdftopdf (uses qpdf instead of poppler)
060dfd6
dc9ba04
* Wed Aug 08 2012 Jiri Popelka <jpopelka@redhat.com> 1.0.20-4
dc9ba04
- rebuild
dc9ba04
b91c6c3
* Thu Aug 02 2012 Jiri Popelka <jpopelka@redhat.com> 1.0.20-3
b91c6c3
- commented multiple licensing breakdown (#832130)
b91c6c3
- verbose build output
b91c6c3
b91c6c3
* Thu Aug 02 2012 Jiri Popelka <jpopelka@redhat.com> 1.0.20-2
b91c6c3
- BuildRequires: poppler-cpp-devel (to build against poppler-0.20)
b91c6c3
b91c6c3
* Mon Jul 23 2012 Jiri Popelka <jpopelka@redhat.com> 1.0.20-1
b91c6c3
- 1.0.20
b91c6c3
b91c6c3
* Tue Jul 17 2012 Jiri Popelka <jpopelka@redhat.com> 1.0.19-1
b91c6c3
- 1.0.19
b91c6c3
b91c6c3
* Wed May 30 2012 Jiri Popelka <jpopelka@redhat.com> 1.0.18-1
b91c6c3
- initial spec file