Blob Blame History Raw
%define build_with_ijs_support 1
%define cups_serverbin %{_exec_prefix}/lib/cups

Name:           gutenprint
Summary:        Printer Drivers Package
Version:        5.0.1
Release:        2%{?dist}
Group:          System Environment/Base
URL:            http://gimp-print.sourceforge.net/
Source0:        http://dl.sf.net/gimp-print/gutenprint-%{version}.tar.bz2
Source1:        gutenprint-foomaticppdupdate
Patch2:         gutenprint-O6.patch
Patch3:         gutenprint-selinux.patch
License:        GPL 
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires:  cups-libs >= 1.1.22-0.rc1.9.10, cups >= 1.1.22-0.rc1.9.10 
BuildRequires:  gettext-devel,cups-devel,pkgconfig,gimp-devel
BuildRequires:  libtiff-devel,libjpeg-devel,libpng-devel
BuildRequires:  foomatic,gtk2-devel
%if %{build_with_ijs_support}
BuildRequires: ghostscript-devel
%endif
BuildRequires:  gimp
#Obsoletes:     gimp-print,gimp-print-cups,gimp-print-devel,gimp-print-plugin,gimp-print-utils
#Provides:      gimp-print,gimp-print-cups,gimp-print-devel,gimp-print-plugin,gimp-print-utils

## NOTE ##
# The README file in this package contains suggestions from upstream
# on how to package this software. I'd be inclined to follow those
# suggestions unless there's a good reason not to do so.

%description
Gutenprint is a package of high quality printer drivers for Linux, BSD,
Solaris, IRIX, and other UNIX-alike operating systems.
Gutenprint was formerly called Gimp-Print.

%package devel
Summary:        Library development files for gutenprint
Group:          Development/Libraries
Requires:       %{name} = %{version}-%{release}
Requires:       gtk2-devel

%description devel
This package contains headers and libraries required to build applications that
uses gutenprint package.

#%package plugin
#Summary:        GIMP plug-in fo gutenprint
#Group:          System Environment/Base
#Requires:       %{name} = %{version}-%{release}
#Requires:       gimp

#%description plugin
#This package contains the gutenprint GIMP plug-in.

%package ppds-cs
Summary:        Printer Drivers Package in Czech
Group:          System Environment/Base
Requires:       %{name} = %{version}-%{release}

%description  ppds-cs
This is the printer drivers package in Czech.

%package ppds-da
Summary:        Printer Drivers Package in Danish
Group:          System Environment/Base
Requires:       %{name} = %{version}-%{release}

%description  ppds-da
This is the printer drivers package in Danish.

%package ppds-de
Summary:        Printer Drivers Package in German
Group:          System Environment/Base
Requires:       %{name} = %{version}-%{release}

%description  ppds-de
This is the printer drivers package in German.

%package ppds-el
Summary:        Printer Drivers Package in Greek
Group:          System Environment/Base
Requires:       %{name} = %{version}-%{release}

%description  ppds-el
This is the printer drivers package in Greek.

%package ppds-en_GB
Summary:        Printer Drivers Package in English
Group:          System Environment/Base
Requires:       %{name} = %{version}-%{release}

%description  ppds-en_GB
This is the printer drivers package in English.

%package ppds-es
Summary:        Printer Drivers Package in Spanish
Group:          System Environment/Base
Requires:       %{name} = %{version}-%{release}

%description  ppds-es
This is the printer drivers package in Spanish.

%package ppds-fr
Summary:        Printer Drivers Package in French
Group:          System Environment/Base
Requires:       %{name} = %{version}-%{release}

%description  ppds-fr
This is the printer drivers package in French.

%package ppds-hu
Summary:        Printer Drivers Package in Hungarian
Group:          System Environment/Base
Requires:       %{name} = %{version}-%{release}

%description  ppds-hu
This is the printer drivers package in Hungarian.

%package ppds-ja
Summary:        Printer Drivers Package in Japanese
Group:          System Environment/Base
Requires:       %{name} = %{version}-%{release}

%description  ppds-ja
This is the printer drivers package in Japanese.

%package ppds-nb
Summary:        Printer Drivers Package in Norwegian/Bokmaal
Group:          System Environment/Base
Requires:       %{name} = %{version}-%{release}

%description  ppds-nb
This is the printer drivers package in Norwegian/Bokmaal.

%package ppds-nl
Summary:        Printer Drivers Package in Dutch
Group:          System Environment/Base
Requires:       %{name} = %{version}-%{release}

%description  ppds-nl
This is the printer drivers package in Dutch.

%package ppds-pl
Summary:        Printer Drivers Package in Polish
Group:          System Environment/Base
Requires:       %{name} = %{version}-%{release}

%description  ppds-pl
This is the printer drivers package in Polish.

%package ppds-pt
Summary:        Printer Drivers Package in Portuguese
Group:          System Environment/Base
Requires:       %{name} = %{version}-%{release}

%description  ppds-pt
This is the printer drivers package in Portuguese.

%package ppds-sk
Summary:        Printer Drivers Package in Slovak
Group:          System Environment/Base
Requires:       %{name} = %{version}-%{release}

%description  ppds-sk
This is the printer drivers package in Slovak.

%package ppds-sv
Summary:        Printer Drivers Package in Swedish
Group:          System Environment/Base
Requires:       %{name} = %{version}-%{release}

%description  ppds-sv
This is the printer drivers package in Swedish.

%package ppds-zh_TW
Summary:        Printer Drivers Package in Chinese (traditional
Group:          System Environment/Base
Requires:       %{name} = %{version}-%{release}

%description  ppds-zh_TW
This is the printer drivers package in Chinese (traditional.

%package foomatic
Summary:        Foomatic printer database
Group:          System Environment/Libraries
Requires:       %{name} = %{version}-%{release}
Requires(post): foomatic
Requires(post): system-config-printer-libs

%description  foomatic
This package contains a database of printers,printer drivers,
and driver descriptions.

%package extras
Summary:        Sample test pattern generator for gutenprint-devel
Group:          Applications/Publishing
Requires:       %{name} = %{version}-%{release}

%description extras
This package contains test pattern generator and the sample test pattern
that is used by gutenprint-devel package.

%package cups
Summary:        CUPS drivers for Canon, Epson, HP and compatible printers
Group:          Applications/Publishing
Requires:       cups >= 1.2.1-1.7
Requires:	gimp-print-cups
Obsoletes: gutenprint-ppds-cs < 5.0.0-8
Provides: gutenprint-ppds-cs = %{version}-%{release}
Obsoletes: gutenprint-ppds-da < 5.0.0-8
Provides: gutenprint-ppds-da = %{version}-%{release}
Obsoletes: gutenprint-ppds-de < 5.0.0-8
Provides: gutenprint-ppds-de = %{version}-%{release}
Obsoletes: gutenprint-ppds-el < 5.0.0-8
Provides: gutenprint-ppds-el = %{version}-%{release}
Obsoletes: gutenprint-ppds-en_GB < 5.0.0-8
Provides: gutenprint-ppds-en_GB = %{version}-%{release}
Obsoletes: gutenprint-ppds-es < 5.0.0-8
Provides: gutenprint-ppds-es = %{version}-%{release}
Obsoletes: gutenprint-ppds-fr < 5.0.0-8
Provides: gutenprint-ppds-fr = %{version}-%{release}
Obsoletes: gutenprint-ppds-hu < 5.0.0-8
Provides: gutenprint-ppds-hu = %{version}-%{release}
Obsoletes: gutenprint-ppds-ja < 5.0.0-8
Provides: gutenprint-ppds-ja = %{version}-%{release}
Obsoletes: gutenprint-ppds-nb < 5.0.0-8
Provides: gutenprint-ppds-nb = %{version}-%{release}
Obsoletes: gutenprint-ppds-nl < 5.0.0-8
Provides: gutenprint-ppds-nl = %{version}-%{release}
Obsoletes: gutenprint-ppds-pl < 5.0.0-8
Provides: gutenprint-ppds-pl = %{version}-%{release}
Obsoletes: gutenprint-ppds-pt < 5.0.0-8
Provides: gutenprint-ppds-pt = %{version}-%{release}
Obsoletes: gutenprint-ppds-sk < 5.0.0-8
Provides: gutenprint-ppds-sk = %{version}-%{release}
Obsoletes: gutenprint-ppds-sv < 5.0.0-8
Provides: gutenprint-ppds-sv = %{version}-%{release}
Obsoletes: gutenprint-ppds-zh_TW < 5.0.0-8
Provides: gutenprint-ppds-zh_TW = %{version}-%{release}

%description cups
This package contains native CUPS support for a wide range of Canon,
Epson, HP and compatible printers..

%prep
%setup -q -n %{name}-%{version}
%patch2 -p1 -b .O6
%patch3 -p1 -b .selinux

%build
%ifarch ppc64
export CFLAGS="${CFLAGS} -O0"
%endif
%configure --disable-static --disable-dependency-tracking  \
            --with-foomatic --with-ghostscript \
            --without-libgutenprintui \
            --with-user-guide --with-samples \
            --with-escputil --with-test --disable-rpath

make %{?_smp_mflags} 
 
%install
rm -rf %{buildroot}
make DESTDIR=%{buildroot} install
mv %{buildroot}%{cups_serverbin}/driver/gutenprint.5.0 %{buildroot}%{_sbindir}
ln -s %{_sbindir}/gutenprint.5.0 %{buildroot}%{cups_serverbin}/driver/

install -m755 %{SOURCE1} %{buildroot}%{_sbindir}/gutenprint-foomaticppdupdate

rm -rf %{buildroot}%{_datadir}/gutenprint/doc
rm -rf %{buildroot}%{_bindir}/escputil
rm -rf %{buildroot}%{_mandir}/man1/escputil.1*
rm -rf %{buildroot}%{_libdir}/gimp/2.0/plug-ins/print
rm -rf %{buildroot}%{cups_serverbin}/backend/*
rm -rf %{buildroot}%{cups_serverbin}/filter/commandtocanon
rm -rf %{buildroot}%{cups_serverbin}/filter/commandtoepson
rm -rf %{buildroot}%{_bindir}/cups-calibrate
rm -rf %{buildroot}%{_mandir}/man8/cups-calibrate.8*
rm -rf %{buildroot}%{_libdir}/gutenprint/5.0.0/modules/*.la

%find_lang gutenprint

%if %{build_with_ijs_support}
%else
rm -f %{buildroot}%{_mandir}/man1/ijsgutenprint.1*
%endif


%clean
rm -rf %{buildroot}

%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig

%post cups
/usr/sbin/cups-genppdupdate.5.0
/sbin/service cups reload >/dev/null 2>&1 || :
exit 0

%postun cups
/sbin/service cups reload >/dev/null 2>&1 || :
exit 0


%files -f gutenprint.lang
%defattr(-, root, root,-)
%doc COPYING AUTHORS NEWS README doc/FAQ.html doc/gutenprint-users-manual.odt doc/gutenprint-users-manual.pdf
########### MARKED FOR INCLUSION IN FC7 #################
#%{_bindir}/escputil
#%{_mandir}/man1/escputil.1*
########################################################
%{_bindir}/ijsgutenprint.5.0
%if %{build_with_ijs_support}
%{_mandir}/man1/ijsgutenprint.1*
%endif
%{_datadir}/gutenprint/
%{_libdir}/*.so.*
%{_libdir}/gutenprint/

%files devel
%defattr(-,root,root,-)
%doc ChangeLog doc/developer/reference-html doc/developer/gutenprint.pdf
%doc doc/gutenprint doc/gutenprintui2
%{_includedir}/gutenprint/
%{_includedir}/gutenprintui/
%{_includedir}/gutenprintui2/
%{_libdir}/*.so
%{_libdir}/pkgconfig/gutenprint.pc
%{_libdir}/pkgconfig/gutenprintui.pc
%{_libdir}/pkgconfig/gutenprintui2.pc
%exclude %{_libdir}/*.la

#%files plugin
#%{_libdir}/gimp/*/plug-ins/print

%files foomatic
%doc 
%defattr(-, root, root,-)
%{_sbindir}/gutenprint-foomaticppdupdate
%{_datadir}/foomatic/kitload.log
%{_datadir}/foomatic/db/source/driver/*
%{_datadir}/foomatic/db/source/opt/*

%files extras
%doc
%defattr(-, root, root,-)
%{_bindir}/testpattern
%{_datadir}/gutenprint/samples/*

%files cups
%doc
%defattr(-, root, root,-)
%config(noreplace) %{_sysconfdir}/cups/command.types
%{_datadir}/cups/calibrate.ppm
#%{cups_serverbin}/backend/*
#%{cups_serverbin}/filter/*
%{cups_serverbin}/driver/*
#%{_bindir}/cups-calibrate
%{cups_serverbin}/filter/rastertogutenprint.5.0
%{_sbindir}/cups-genppd*
%{_sbindir}/gutenprint.5.0
#%{_mandir}/man8/cups-calibrate.8*
%{_mandir}/man8/cups-genppd*.8*

%post foomatic
/bin/rm -f /var/cache/foomatic/*
%{_sbindir}/gutenprint-foomaticppdupdate %{version} || :

%postun foomatic
/bin/rm -f /var/cache/foomatic/*

%changelog
* Mon Jul  2 2007 Tim Waugh <twaugh@redhat.com> 5.0.1-2
- Fix up foomatic PPD files after upgrade (bug #246439).
- The foomatic package requires system-config-printer-libs for the
  update script.

* Fri Jun 29 2007 Tim Waugh <twaugh@redhat.com> 5.0.1-1
- Don't add extra compiler flags.
- Package the CUPS driver in sbindir and put a symlink in the CUPS ServerBin
  directory to work around bug #231015.
- Disable libgutenprintui (GTK+ 1.2 library).  Build requires gtk2-devel,
  not gtk+-devel.
- No longer need PPDs sub-packages: CUPS driver is included in the cups
  sub-package.
- Don't change SELinux file context of installed PPDs (bug #246067).
- 5.0.1.

* Tue Nov 14 2006 Parag Nemade <panemade@gmail.com>- 5.0.0-0.16
- Added missing dependency of gimp-print-cups in gutenprint-cups

* Thu Oct 03 2006 Parag Nemade <panemade@gmail.com>- 5.0.0-0.15
- Did some fix for tag issue

* Thu Sep 29 2006 Parag Nemade <panemade@gmail.com>- 5.0.0-0.14
- Removed unwanted .la files and made following files owned by 
  main package.
  /usr/share/gutenprint/5.0.0
  /usr/share/gutenprint

* Thu Sep 29 2006 Parag Nemade <panemade@gmail.com>- 5.0.0-0.13
- Fixed some missing file remove locations path

* Thu Sep 28 2006 Parag Nemade <panemade@gmail.com>- 5.0.0-0.12
- Fixed rpm build for x86_64 arch

* Thu Sep 08 2006 Parag Nemade <panemade@gmail.com>- 5.0.0-0.11
- Separated GIMP plugin under gutenprint-plugin package

* Thu Sep 07 2006 Parag Nemade <panemade@gmail.com>- 5.0.0-0.10
- Added gimp as BR

* Thu Sep 07 2006 Parag Nemade <panemade@gmail.com>- 5.0.0-0.9
- Removed Requires(post) and Requires(postun) lines in SPEC
- Removed mixed usage of macros

* Wed Aug 09 2006 Parag Nemade <panemade@gmail.com>- 5.0.0-0.8
- Moved cups related files from main rpm to gutenprint-cups

* Wed Aug 09 2006 Parag Nemade <panemade@gmail.com>- 5.0.0-0.7
- Moved /usr/share/gutenprint/doc to %%doc of main rpm and devel rpm 
- Additionally added API documents for gutenprint and gutenprintui2

* Tue Aug 08 2006 Parag Nemade <panemade@gmail.com>- 5.0.0-0.6
- Added cups-genppdupdate.5.0 at post section
- Splitted gutenprint main rpm for separate languages

* Wed Aug 02 2006 Parag Nemade <panemade@gmail.com>- 5.0.0-0.5
- New upstream release

* Wed Jul 19 2006 Parag Nemade <panemade@gmail.com>- 5.0.0-0.4.rc3
- Removed Requires on perl-Curses and perl-perlmenu 
  as both are automatically added on binary RPM
- Commented Obsoletes and provides tag as Fedora Extras package can not
  Obsoletes Fedora Core Package.

* Tue Jul 18 2006 Parag Nemade <panemade@gmail.com>- 5.0.0-0.3.rc3
- Added 3 more sub-packages-extras,cups,foomatic
- Added BuildRequires gtk+-devel
- Added correct options for %%configure
- Added Requires for perl-Curses, perl-perlmenu
- Added cups restart command at post section of SPEC

* Tue Jul 18 2006 Parag Nemade <panemade@gmail.com>- 5.0.0-0.2.rc3
- Added Obsoletes and Provides tag

* Fri Jul 14 2006 Parag Nemade <panemade@gmail.com>- 5.0.0-0.1.rc3
- Initial Release