1 |
%define major 16 |
2 |
# FIXME for mga6: %mklibname usage is wrong, should be %mklibname png %{major} %{major} |
3 |
%define libname %mklibname png%{major}_ %{major} |
4 |
%define develname %mklibname png -d |
5 |
|
6 |
Summary: A library of functions for manipulating PNG image format files |
7 |
Name: libpng |
8 |
Version: 1.6.20 |
9 |
Release: %mkrel 1 |
10 |
Epoch: 2 |
11 |
License: zlib |
12 |
Group: System/Libraries |
13 |
URL: http://www.libpng.org/pub/png/libpng.html |
14 |
Source: http://downloads.sourceforge.net/libpng/%{name}-%{version}.tar.xz |
15 |
Patch0: http://downloads.sourceforge.net/libpng-apng/libpng-%{version}-apng.patch.gz |
16 |
Patch1: libpng-1.6.2-pkgconfig-libdir.patch |
17 |
BuildRequires: zlib-devel |
18 |
BuildRequires: cmake |
19 |
|
20 |
%description |
21 |
The libpng package contains a library of functions for creating and |
22 |
manipulating PNG (Portable Network Graphics) image format files. PNG is |
23 |
a bit-mapped graphics format similar to the GIF format. PNG was created to |
24 |
replace the GIF format, since GIF uses a patented data compression |
25 |
algorithm. |
26 |
|
27 |
Libpng should be installed if you need to manipulate PNG format image |
28 |
files. |
29 |
|
30 |
%package -n %{libname} |
31 |
Summary: A library of functions for manipulating PNG image format files |
32 |
Group: System/Libraries |
33 |
Provides: %{name} = %{epoch}:%{version}-%{release} |
34 |
|
35 |
%description -n %{libname} |
36 |
This package contains the library needed to run programs dynamically |
37 |
linked with libpng. |
38 |
|
39 |
%package -n %{develname} |
40 |
Summary: Development tools for programs to manipulate PNG image format files |
41 |
Group: Development/C |
42 |
Requires: %{libname} = %{epoch}:%{version} |
43 |
Requires: zlib-devel |
44 |
Provides: %{name}-devel = %{epoch}:%{version}-%{release} |
45 |
Provides: png-devel = %{epoch}:%{version}-%{release} |
46 |
Obsoletes: %{mklibname png 3 -d} < 1.2.30 |
47 |
|
48 |
%description -n %{develname} |
49 |
The libpng-devel package contains the header files and libraries |
50 |
necessary for developing programs using the PNG (Portable Network |
51 |
Graphics) library. |
52 |
|
53 |
If you want to develop programs which will manipulate PNG image format |
54 |
files, you should install libpng-devel. You'll also need to install the |
55 |
libpng package. |
56 |
|
57 |
%prep |
58 |
%setup -q |
59 |
%patch0 -p1 -b .apng |
60 |
%patch1 -p0 -b .libdir |
61 |
|
62 |
%build |
63 |
export CFLAGS="%{optflags} -O3 -funroll-loops -DPIC -fPIC" |
64 |
%cmake -DPNG_SHARED:BOOL=ON -DPNG_STATIC:BOOL=OFF -DPNG_NO_STDIO=no -DPNG_NO_CONSOLE_IO=no |
65 |
%make |
66 |
|
67 |
%install |
68 |
%makeinstall_std -C build |
69 |
|
70 |
# multiarch |
71 |
%multiarch_binaries %{buildroot}%{_bindir}/libpng%{major}-config |
72 |
|
73 |
# should be multiarch if kept |
74 |
rm -f %{buildroot}%{_prefix}/lib/%name/*.cmake |
75 |
|
76 |
%files -n %{libname} |
77 |
%{_libdir}/libpng%{major}.so.%{major} |
78 |
%{_libdir}/libpng%{major}.so.%{major}.* |
79 |
|
80 |
%files -n %{develname} |
81 |
%doc libpng*.txt example.c README TODO CHANGES |
82 |
%{_bindir}/libpng-config |
83 |
%{_bindir}/libpng%{major}-config |
84 |
%{multiarch_bindir}/libpng%{major}-config |
85 |
%{_includedir}/* |
86 |
%{_libdir}/libpng.so |
87 |
%{_libdir}/libpng%{major}.so |
88 |
%{_libdir}/pkgconfig/* |
89 |
%{_mandir}/man?/* |