netpbm/netpbm.spec
Petr Gajdos 1408ad3c17 - updated to 10.80.1
* pnmtopalm: Refuse to create a compressed image with more than 8
    bits per pixel.
  * pbmtext, libnetpbm font facilities: allow glyphs in font files
    that have no bitmap data; just used for their advance value to
    code a space.
  * pbmtext: Improve error message when there is a problem reading
    the font file.
  * libnetpbm font facilities: consider font invalid if a glyph is
    more than 65536 pixels high or wide.
  * ppmshadow: handle images with a black background and low
    contrast images (i.e. little difference between foreground and
    background).
  * ppmbrighten: fix bug: red pixels change hue.  Introduced in
    after Netpbm 10.11 (October 2002) and before Netpbm 10.18
    (September 2003).
  * palmtopnm: fix crash if invalid input contains color index that
    is not in the palette.  Always broken (palmtopnm was new in
    Netpbm 9.10 (October 2001)).
  * pnmtopalm: fix incorrect output with certain input files and
    -packbits_compression.  Always broken.  -packbits_compression
    was new in Netpbm 10.27 (March 2005).
  * pnmtopalm: Correct error message recommending running
    pnmquant when the real solution is to run pnmremap to modify the
    image to Palm standard colors.
  * pnmtopalm: Fix bug causing "color not in colormap" failure with
    -colormap and maxval other than 255.
  * libnetpbm: font facilities: fix invalid memory reference with
    certain font files.
  * libnetpbm: ppm_readcolordict: Improve error message when there is

OBS-URL: https://build.opensuse.org/package/show/graphics/netpbm?expand=0&rev=85
2017-12-18 13:36:07 +00:00

149 lines
5.0 KiB
RPMSpec

#
# spec file for package netpbm
#
# Copyright (c) 2017 SUSE LINUX 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/
#
%define libmaj 11
%define libmin 80
%define libver %{libmaj}.%{libmin}
Name: netpbm
Version: 10.80.1
Release: 0
Summary: A Powerful Graphics Conversion Package
License: BSD-3-Clause AND GPL-2.0+ AND IJG AND MIT AND SUSE-Public-Domain
Group: Productivity/Graphics/Convertors
Url: http://netpbm.sourceforge.net/
Source: netpbm-%{version}-nohpcdtoppm-noppmtompeg.tar.bz2
Source1: netpbm-%{version}-documentation.tar.bz2
Source2: baselibs.conf
Source3: prepare-src-tarball
# SUSE specific
Patch0: %{name}-make.patch
Patch3: %{name}-tmpfile.patch
Patch4: %{name}-security-code.patch
Patch5: %{name}-security-scripts.patch
Patch6: %{name}-gcc-warnings.patch
BuildRequires: flex
BuildRequires: libjasper-devel
BuildRequires: libjpeg-devel
BuildRequires: libpng-devel
BuildRequires: libtiff-devel
BuildRequires: libxml2-devel
BuildRequires: pkgconfig
BuildRequires: python
BuildRequires: pkgconfig(x11)
Provides: pbmplus
%description
The latest version of the Portable Bitmap Plus Utilities. This large
package, which is by now available for all hardware platforms, provides
tools for graphics conversion. Using these tools, images can be
converted from virtually any format into any other format. A few of the
supported formats include: GIF, PC-Paintbrush, IFF ILBM, Gould Scanner
file, MTV ray tracer, Atari Degas .pi1 and .pi3, Macintosh PICT, HP
Paintjet file, QRT raytracer, AUTOCAD slide, Atari Spectrum (compressed
and uncompressed), Andrew Toolkit raster object, and many more. On top
of that, man pages are included for all tools.
%package -n libnetpbm%{libmaj}
Summary: Libraries for the NetPBM (NetPortableBitmap) Graphic Formats
Group: System/Libraries
Provides: libnetpbm = %{version}
Obsoletes: libnetpbm < %{version}
%description -n libnetpbm%{libmaj}
These are the libs for the netpbm graphic formats. The tools can be
found in the netpbm package. The sources are contained in the netpbm
source package.
%package -n libnetpbm-devel
Summary: Libraries for the NetPBM Graphic Formats - files mandatory for development
Group: Development/Libraries/C and C++
Requires: libnetpbm%{libmaj} = %{version}
%description -n libnetpbm-devel
These are the libs for the netpbm graphic formats. The tools can be
found in the netpbm package. The sources are contained in the netpbm
source package.
%prep
%setup -q
%setup -q -D -a 1
%patch0
%patch3
%patch4 -p1
%patch5 -p1
%patch6 -p1
mkdir pnmtopalm # for %%doc pnmtopalm
cp -p converter/other/pnmtopalm/{LICENSE,README} pnmtopalm
%build
# netpbm has _interactive_ configure perl script
cp config.mk.in config.mk # recomended by upstream, see doc/INSTALL
sed -i "s:STATICLIB_TOO = y:STATICLIB_TOO = n:" config.mk
# following two added 10.66.0, reported upstream
# recipe for target 'converter/install.manweb' failed
echo 'install.manweb:' >> converter/ppm/hpcdtoppm/Makefile
# dtto for ppmtompeg
echo 'install.manweb:' >> converter/ppm/ppmtompeg/Makefile
export CFLAGS="%{optflags} -flax-vector-conversions"
make %{?_smp_mflags} CFLAGS="$CFLAGS"
rm doc/INSTALL
#
# convert html to man pages
cd netpbm.sourceforge.net/doc
../../buildtools/makeman *.html
for i in 1 3 5 ; do
mkdir -p ../../man/man${i}
mv *.${i} ../../man/man${i}
done
%install
# netpbm has _interactive_ install perl script, see doc/INSTALL
make pkgdir=`pwd`/package package STRIPFLAG=
rm package/bin/g3topbm #conflict with g3utils
#
mkdir -p %{buildroot}%{_prefix}/{bin,include,%{_lib},share/man,share/%{name}}
cp -pd package/bin/* %{buildroot}%{_bindir}
cp -pd package/lib/*.so* %{buildroot}%{_libdir}
ln -s libnetpbm.so.%{libver} %{buildroot}%{_libdir}/libnetpbm.so
cp -prd package/include/netpbm %{buildroot}%{_includedir}
cp -prd man/* %{buildroot}%{_mandir}
install -m 644 converter/other/pnmtopalm/*.map \
%{buildroot}%{_datadir}/%{name}
%post -n libnetpbm%{libmaj} -p /sbin/ldconfig
%postun -n libnetpbm%{libmaj} -p /sbin/ldconfig
%files
%doc README doc/* netpbm.sourceforge.net/doc
%doc pnmtopalm/
%{_mandir}/man1/*%{ext_man}
%{_mandir}/man5/*%{ext_man}
%{_bindir}/*
%{_datadir}/%{name}
%files -n libnetpbm%{libmaj}
%{_libdir}/lib*.so.%{libmaj}
%{_libdir}/lib*.so.%{libver}
%files -n libnetpbm-devel
%{_includedir}/%{name}
%{_libdir}/lib*.so
%{_mandir}/man3/*%{ext_man}
%changelog