]> git.pld-linux.org Git - packages/crossmingw32-libpng.git/blob - crossmingw32-libpng.spec
- hack to force using plain exports instead of version script (.dll.a had no symbols)
[packages/crossmingw32-libpng.git] / crossmingw32-libpng.spec
1 %define         realname        libpng
2 Summary:        PNG library - Mingw32 cross version
3 Summary(pl.UTF-8):      Biblioteka PNG - wersja skrośna dla Mingw32
4 Name:           crossmingw32-%{realname}
5 Version:        1.4.1
6 Release:        1
7 License:        distributable
8 Group:          Development/Libraries
9 Source0:        http://downloads.sourceforge.net/libpng/%{realname}-%{version}.tar.xz
10 # Source0-md5:  d4cb0236cce9ce8ff49a22994a01f9e0
11 Patch0:         %{realname}-pngminus.patch
12 # http://littlesvr.ca/apng/diff/%{name}-%{version}-apng.patch | dos2unix
13 Patch1:         %{realname}-apng.patch
14 Patch2:         %{realname}-read-dither.patch
15 URL:            http://www.libpng.org/pub/png/libpng.html
16 BuildRequires:  crossmingw32-gcc
17 BuildRequires:  crossmingw32-zlib
18 BuildRequires:  sed >= 4.0
19 BuildRequires:  xz >= 1:4.999.7
20 Requires:       crossmingw32-zlib
21 Provides:       crossmingw32-libpng(APNG) = 0.10
22 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
23
24 %define         no_install_post_strip   1
25
26 %define         target                  i386-mingw32
27 %define         target_platform         i386-pc-mingw32
28
29 %define         _sysprefix              /usr
30 %define         _prefix                 %{_sysprefix}/%{target}
31 %define         _libdir                 %{_prefix}/lib
32 %define         _pkgconfigdir           %{_prefix}/lib/pkgconfig
33 %define         _dlldir                 /usr/share/wine/windows/system
34 %define         __cc                    %{target}-gcc
35 %define         __cxx                   %{target}-g++
36
37 %ifnarch %{ix86}
38 # arch-specific flags (like alpha's -mieee) are not valid for i386 gcc
39 %define         optflags        -O2
40 %endif
41 # -z options are invalid for mingw linker
42 %define         filterout_ld    -Wl,-z,.*
43
44 %description
45 The PNG library is a collection of routines used to create and
46 manipulate PNG format graphics files. The PNG format was designed as a
47 replacement for GIF, with many improvements and extensions.
48
49 This package contains the cross version for Win32.
50
51 %description -l pl.UTF-8
52 Biblioteki PNG są kolekcją form używanych do tworzenia i manipulowania
53 plikami w formacie graficznym PNG. Format ten został stworzony jako
54 zamiennik dla formatu GIF, z wieloma rozszerzeniami i nowościami.
55
56 Ten pakiet zawiera wersję skrośną dla Win32.
57
58 %package static
59 Summary:        Static libpng library (cross mingw32 version)
60 Summary(pl.UTF-8):      Statyczna biblioteka libpng (wersja skrośna mingw32)
61 Group:          Development/Libraries
62 Requires:       %{name} = %{version}-%{release}
63 Provides:       crossmingw32-libpng-static(APNG) = 0.10
64
65 %description static
66 Static libpng library (cross mingw32 version).
67
68 %description static -l pl.UTF-8
69 Statyczna biblioteka libpng (wersja skrośna mingw32).
70
71 %package dll
72 Summary:        libpng - DLL library for Windows
73 Summary(pl.UTF-8):      libpng - biblioteka DLL dla Windows
74 Group:          Applications/Emulators
75 Requires:       crossmingw32-zlib-dll
76 Requires:       wine
77 Provides:       crossmingw32-libpng-dll(APNG) = 0.10
78
79 %description dll
80 libpng - DLL library for Windows.
81
82 %description dll -l pl.UTF-8
83 libpng - biblioteka DLL dla Windows.
84
85 %prep
86 %setup -q -n %{realname}-%{version} -c -T
87 xz -dc %{SOURCE0} | tar xf - -C ..
88 %patch0 -p1
89 %patch1 -p0
90 %patch2 -p1
91
92 # avoid version script
93 sed -i -e 's/^GLD=.*/GLD=/' configure
94
95 %build
96 %configure \
97         --target=%{target} \
98         --host=%{target} \
99         --with-pkgconfigdir=%{_pkgconfigdir}
100
101 %{__make}
102
103 %install
104 rm -rf $RPM_BUILD_ROOT
105
106 %{__make} install \
107         DESTDIR=$RPM_BUILD_ROOT
108
109 install -d $RPM_BUILD_ROOT%{_dlldir}
110 mv -f $RPM_BUILD_ROOT%{_prefix}/bin/*.dll $RPM_BUILD_ROOT%{_dlldir}
111
112 ln -sf libpng14.dll.a $RPM_BUILD_ROOT%{_libdir}/libpng.dll.a
113
114 %if 0%{!?debug:1}
115 %{target}-strip --strip-unneeded -R.comment -R.note $RPM_BUILD_ROOT%{_dlldir}/*.dll
116 %{target}-strip -g -R.comment -R.note $RPM_BUILD_ROOT%{_libdir}/*.a
117 %endif
118
119 rm -rf $RPM_BUILD_ROOT%{_datadir}/man
120
121 %clean
122 rm -rf $RPM_BUILD_ROOT
123
124 %files
125 %defattr(644,root,root,755)
126 %{_libdir}/libpng14.dll.a
127 %{_libdir}/libpng.dll.a
128 %{_libdir}/libpng14.la
129 %{_libdir}/libpng.la
130 %{_includedir}/libpng14
131 %{_includedir}/png*.h
132 %{_pkgconfigdir}/libpng14.pc
133 %{_pkgconfigdir}/libpng.pc
134
135 %files static
136 %defattr(644,root,root,755)
137 %{_libdir}/libpng14.a
138 %{_libdir}/libpng.a
139
140 %files dll
141 %defattr(644,root,root,755)
142 %{_dlldir}/libpng14-*.dll
This page took 0.081617 seconds and 3 git commands to generate.