libpng16/libpng16.spec
Petr Gajdos 35368c612d - update to 1.6.19:
Fixed potential leak of png_pixels in contrib/pngminus/pnm2png.c
  Fixed uninitialized variable in contrib/gregbook/rpng2-x.c
  Fixed the recently reported 1's complement security issue.
  Fixed png_save_int_32 when int is not 2's complement by replacing
    the value that is illegal in the PNG spec, in both signed and 
    unsigned values, with 0.
 etc., see ANNOUNCE and CHANGES for details
- removed: libpng-rgb_to_gray-checks.patch (upstreamed)

OBS-URL: https://build.opensuse.org/package/show/graphics/libpng16?expand=0&rev=73
2015-11-13 07:46:48 +00:00

166 lines
4.9 KiB
RPMSpec

#
# spec file for package libpng16
#
# Copyright (c) 2015 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 major 1
%define minor 6
%define micro 19
%define branch %{major}%{minor}
%define libname libpng%{branch}-%{branch}
Name: libpng16
Url: http://www.libpng.org/pub/png/libpng.html
Version: %{major}.%{minor}.%{micro}
Release: 0
Summary: Library for the Portable Network Graphics Format (PNG)
License: Zlib
Group: System/Libraries
Source0: ftp://ftp.simplesystems.org/pub/png/src/libpng16/libpng-%{version}.tar.xz
Source1: ftp://ftp.simplesystems.org/pub/png/src/libpng16/libpng-%{version}.tar.xz.asc
Source2: libpng16.keyring
Source3: rpm-macros.libpng-tools
Source4: baselibs.conf
#BuildRequires: gpg-offline
BuildRequires: libtool
BuildRequires: pkg-config
BuildRequires: zlib-devel
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%define debug_package_requires %{libname} = %{version}-%{release}
%package -n %{libname}
Summary: Library for the Portable Network Graphics Format (PNG)
Group: System/Libraries
# bug437293
%ifarch ppc64
Obsoletes: libpng-64bit
%endif
#
Obsoletes: libpng < %{version}
Provides: libpng = %{version}-%{release}
%package devel
Summary: Development Tools for applications which will use the Libpng
Group: Development/Libraries/C and C++
Requires: %{libname} = %{version}
Requires: glibc-devel
Requires: pkg-config
Requires: zlib-devel
Recommends: libpng%{branch}-compat-devel
# bug437293
%ifarch ppc64
Obsoletes: libpng-devel-64bit
%endif
#
%package compat-devel
Summary: Development Tools for applications which will use the Libpng
Group: Development/Libraries/C and C++
Requires: libpng%{branch}-devel = %{version}
Provides: libpng-devel = %{version}
Obsoletes: libpng-devel < 1.2.44
Conflicts: otherproviders(libpng-devel)
%package tools
Summary: Tools for Manipulating PNG Images
Group: Productivity/Graphics/Other
Provides: libpng-tools = %{version}
Conflicts: otherproviders(libpng-tools)
%description
libpng is the official reference library for the Portable Network
Graphics format (PNG).
%description -n %{libname}
libpng is the official reference library for the Portable Network
Graphics format (PNG).
%description devel
The libpng%{branch}-devel package includes the header files, libraries,
configuration files and development tools necessary for compiling and
linking programs which will manipulate PNG files using libpng%{branch}.
libpng is the official reference library for the Portable Network
Graphics (PNG) format.
%description compat-devel
The libpng%{branch}-compat-devel package contains unversioned symlinks
to the header files, libraries, configuration files and development
tools necessary for compiling and linking programs that don't care
about libpng version.
%description tools
Package consists of low level tools for manipulating and fixing particular
PNG files.
%prep
%setup -n libpng-%{version}
%build
# PNG_SAFE_LIMITS_SUPPORTED: http://www.openwall.com/lists/oss-security/2015/01/10/1
export CFLAGS="%optflags -O3 -DPNG_SAFE_LIMITS_SUPPORTED -DPNG_SKIP_SETJMP_CHECK $(getconf LFS_CFLAGS)"
export LDFLAGS="-Wl,-z,relro,-z,now"
%configure \
--disable-static
make %{?_smp_mflags}
%check
make check
%install
make install DESTDIR=$RPM_BUILD_ROOT
rm $RPM_BUILD_ROOT/%{_libdir}/libpng*.la
mkdir -p %{buildroot}%{_sysconfdir}/rpm
cp -a %{SOURCE3} \
%{buildroot}%{_sysconfdir}/rpm/macros.libpng-tools
%post -n %{libname} -p /sbin/ldconfig
%postun -n %{libname} -p /sbin/ldconfig
%files -n %{libname}
%defattr(-,root,root)
%{_libdir}/libpng%{branch}.so.*
%files devel
%defattr(-,root,root)
%{_bindir}/libpng%{branch}-config
%{_includedir}/libpng%{branch}
%{_libdir}/libpng%{branch}.so
%{_libdir}/pkgconfig/libpng%{branch}.pc
%doc CHANGES README TODO ANNOUNCE LICENSE libpng-*.txt
%files compat-devel
%defattr(-,root,root)
%{_bindir}/libpng-config
%{_includedir}/*.h
%{_libdir}/libpng.so
%{_libdir}/pkgconfig/libpng.pc
%doc %{_mandir}/man3/libpng.3.gz
%doc %{_mandir}/man3/libpngpf.3.gz
%doc %{_mandir}/man5/png.5.gz
%files tools
%defattr(-,root,root)
%{_bindir}/png-fix-itxt
%{_bindir}/pngfix
%{_sysconfdir}/rpm/macros.libpng-tools
%changelog