24c0d2b8f3
epson-inkjet-printer-escpr version upgrade to 1.2.3 OBS-URL: https://build.opensuse.org/request/show/185411 OBS-URL: https://build.opensuse.org/package/show/Printing/epson-inkjet-printer-escpr?expand=0&rev=11
165 lines
6.2 KiB
RPMSpec
165 lines
6.2 KiB
RPMSpec
#
|
|
# spec file for package epson-inkjet-printer-escpr
|
|
#
|
|
# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
|
#
|
|
|
|
Name: epson-inkjet-printer-escpr
|
|
BuildRequires: cups
|
|
BuildRequires: cups-devel
|
|
# All printer driver packages should have "BuildRequires: python-cups"
|
|
# because python-cups installs special rpm macros that adds Provides tags
|
|
# for the printer drivers supported by the package,
|
|
# see https://bugzilla.novell.com/show_bug.cgi?id=735865
|
|
# but python-cups is not available for SLE10, regarding the suse_version value for SLE10
|
|
# see http://en.opensuse.org/openSUSE:Build_Service_cross_distribution_howto
|
|
%if 0%{?suse_version} > 1010
|
|
BuildRequires: python-cups
|
|
%endif
|
|
Version: 1.2.3
|
|
Release: 0
|
|
Url: http://avasys.jp/english/linux_e/
|
|
Summary: Epson ESC/P-R Inkjet Printer Driver
|
|
License: GPL-2.0
|
|
Group: Hardware/Printing
|
|
# Example URL to download Source0: http://download.ebz.epson.net/dsc/search/01/search/?OSC=LX&productName=B700
|
|
Source0: epson-inkjet-printer-escpr-%{version}-1lsb3.2.tar.gz
|
|
# Patch0 fix_no-return-in-nonvoid-function.patch avoids that build fails
|
|
# with "E: epson-inkjet-printer-escpr no-return-in-nonvoid-function filter.c:133":
|
|
Patch0: fix_no-return-in-nonvoid-function.patch
|
|
# This software is a filter program used with CUPS:
|
|
Requires: cups
|
|
# Prerequire /sbin/ldconfig which is used in the traditional bash scriptlets for post/postun:
|
|
PreReq: /sbin/ldconfig
|
|
# Install into this non-root directory (required when norootforbuild is used):
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
|
|
%description
|
|
|
|
The ESC/P-R driver works as a filter program
|
|
used with CUPS.
|
|
|
|
It offers high quality printing with Seiko Epson color
|
|
inkjet printers.
|
|
|
|
This driver can only be used with printers that support
|
|
the Epson ESC/P-R language.
|
|
|
|
For a list of supported printers by a currently installed
|
|
package see the PPD files in this directory:
|
|
|
|
/usr/share/cups/model/manufacturer-PPDs/epson-inkjet-printer-escpr
|
|
|
|
For a list of supported printers by the newest available version
|
|
at the upstream project visit:
|
|
|
|
http://avasys.jp/english/linux_e/
|
|
|
|
In particular regarding the ESC/P-R driver see:
|
|
|
|
http://avasys.jp/eng/linux_driver/download/lsb/epson-inkjet/escpr/
|
|
|
|
Regarding "What's ESC/P-R?" have a look at:
|
|
|
|
http://global.epson.com/innovation/universal_printing/index.html
|
|
|
|
|
|
%prep
|
|
# Be quiet when unpacking:
|
|
%setup -q
|
|
# Patch0 fix_no-return-in-nonvoid-function.patch avoids that build fails
|
|
# with "E: epson-inkjet-printer-escpr no-return-in-nonvoid-function filter.c:133":
|
|
%patch0
|
|
|
|
%build
|
|
# Set our preferred architecture-specific flags for the compiler and linker:
|
|
export CFLAGS="$RPM_OPT_FLAGS"
|
|
export CXXFLAGS="$RPM_OPT_FLAGS"
|
|
# Specify location of CUPS filter and ppd files explicitly.
|
|
# Use the explicite value 'epson-inkjet-printer-escpr' and not the RPM macro 'name'
|
|
# so that it could be built as well with a different package name
|
|
# (e.g. when someone likes to provide an epson-inkjet-printer-escpr SVN revision
|
|
# with package name 'epson-inkjet-printer-escpr-SVN' or a specifically adapted
|
|
# version as 'epson-inkjet-printer-escpr-only4me') because the installed PPDs
|
|
# must match exactly to the installed epson-escpr filter and the libescpr library:
|
|
%configure \
|
|
--with-cupsfilterdir=/usr/lib/cups/filter \
|
|
--with-cupsppddir=%{_datadir}/cups/model/manufacturer-PPDs
|
|
make
|
|
|
|
%install
|
|
# See lsb/lsb-rpm.spec
|
|
# Make directories:
|
|
install -d %{buildroot}/usr/lib/cups/filter
|
|
install -d %{buildroot}%{_libdir}
|
|
install -d %{buildroot}%{_datadir}
|
|
install -d %{buildroot}%{_defaultdocdir}/%{name}
|
|
make install DESTDIR=%{buildroot}
|
|
install -m 644 README README.ja COPYING AUTHORS NEWS %{buildroot}%{_defaultdocdir}/%{name}
|
|
rm -f %{buildroot}%{_libdir}/libescpr.a
|
|
rm -f %{buildroot}%{_libdir}/libescpr.la
|
|
# Compress PPDs:
|
|
pushd %{buildroot}%{_datadir}/cups/model/manufacturer-PPDs/epson-inkjet-printer-escpr
|
|
# Do not pollute the build log file with meaningless messages:
|
|
set +x
|
|
# For now keep all PPDs even if cupstestppd FAILs.
|
|
# Reason:
|
|
# With each CUPS version upgrade cupstestppd finds more and more errors
|
|
# so that more and more PPDs would be no longer included in the RPM
|
|
# which have been included before which results a regression.
|
|
# As far as we know there have been no problems at all because of
|
|
# not strictly compliant PPDs so that it is much better to provide all PPDs
|
|
# so that the matching printers can be used than to be rigorous regarding
|
|
# enforcing compliance to the PPD specification:
|
|
for p in *.ppd
|
|
do echo -n "$p: "
|
|
grep -E -v '^\*UIConstraints:|^\*NonUIConstraints:|^\*cupsFilter:' $p | cupstestppd - || true
|
|
gzip $p
|
|
done
|
|
# Switch back to the usual build log messages:
|
|
set -x
|
|
popd
|
|
|
|
%post
|
|
/sbin/ldconfig
|
|
exit 0
|
|
|
|
%postun
|
|
/sbin/ldconfig
|
|
exit 0
|
|
|
|
%files
|
|
# The files sections list all mandatory files explicitly one by one.
|
|
# In particular all executables are listed explicitly.
|
|
# This avoids that the configure magic might silently
|
|
# not build and install an executable when whatever condition
|
|
# for configure's automated tests is not fulfilled in the build system.
|
|
# When all mandatory files are explicitly listed,
|
|
# the build fails intentionally if a mandatory file was not built
|
|
# which ensures that already existing correctly built binary RPMs
|
|
# are not overwritten by broken RPMs where mandatory files are missing.
|
|
%defattr(-,root,root)
|
|
%{_libdir}/libescpr.*
|
|
%dir /usr/lib/cups
|
|
%dir /usr/lib/cups/filter
|
|
/usr/lib/cups/filter/epson-escpr
|
|
/usr/lib/cups/filter/epson-escpr-wrapper
|
|
%dir %{_datadir}/cups
|
|
%dir %{_datadir}/cups/model
|
|
%dir %{_datadir}/cups/model/manufacturer-PPDs
|
|
%{_datadir}/cups/model/manufacturer-PPDs/epson-inkjet-printer-escpr/
|
|
%doc %{_defaultdocdir}/%{name}/
|
|
|
|
%changelog
|