]>
Commit | Line | Data |
---|---|---|
1 | Summary: HarfBuzz - internationalized text shaping library - MinGW32 cross version | |
2 | Summary(pl.UTF-8): Rasteryzer fontów TrueType - wersja skrośna dla MinGW32 | |
3 | Name: crossmingw32-harfbuzz | |
4 | Version: 1.8.1 | |
5 | Release: 1 | |
6 | License: MIT | |
7 | Group: Development/Libraries | |
8 | Source0: https://www.freedesktop.org/software/harfbuzz/release/harfbuzz-%{version}.tar.bz2 | |
9 | # Source0-md5: 97cb89c6e2a914c05c8b7e858703885f | |
10 | Patch0: harfbuzz-win32.patch | |
11 | URL: https://www.freedesktop.org/wiki/HarfBuzz | |
12 | BuildRequires: autoconf >= 2.64 | |
13 | BuildRequires: automake >= 1:1.11.1 | |
14 | # cairo is used only for utilities, which are not packaged | |
15 | #BuildRequires: crossmingw32-cairo >= 1.8.0 | |
16 | BuildRequires: crossmingw32-freetype >= 2.9 | |
17 | BuildRequires: crossmingw32-glib2 >= 2.38 | |
18 | BuildRequires: crossmingw32-gcc-c++ >= 1:4.7 | |
19 | BuildRequires: libtool >= 2:2.2 | |
20 | BuildRequires: pkgconfig >= 1:0.20 | |
21 | Requires: crossmingw32-freetype >= 2.9 | |
22 | Requires: crossmingw32-glib2 >= 2.38 | |
23 | Requires: crossmingw32-gcc-c++ >= 1:4.7 | |
24 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
25 | ||
26 | # see <harfbuzz/internal/ftserv.h>, the real horror | |
27 | %define specflags -fno-strict-aliasing | |
28 | ||
29 | %define no_install_post_strip 1 | |
30 | ||
31 | %define target i386-mingw32 | |
32 | %define target_platform i386-pc-mingw32 | |
33 | ||
34 | %define _sysprefix /usr | |
35 | %define _prefix %{_sysprefix}/%{target} | |
36 | %define _libdir %{_prefix}/lib | |
37 | %define _pkgconfigdir %{_prefix}/lib/pkgconfig | |
38 | %define _dlldir /usr/share/wine/windows/system | |
39 | %define __cc %{target}-gcc | |
40 | %define __cxx %{target}-g++ | |
41 | %define __pkgconfig_provides %{nil} | |
42 | %define __pkgconfig_requires %{nil} | |
43 | ||
44 | %ifnarch %{ix86} | |
45 | # arch-specific flags (like alpha's -mieee) are not valid for i386 gcc | |
46 | %define optflags -O2 | |
47 | %endif | |
48 | # -z options are invalid for mingw linker, most of -f options are Linux-specific | |
49 | %define filterout_ld -Wl,-z,.* | |
50 | %define filterout_c -f[-a-z0-9=]* | |
51 | %define filterout_cxx -f[-a-z0-9=]* | |
52 | ||
53 | %description | |
54 | Internationalized OpenType text layout and rendering library. | |
55 | ||
56 | This package contains the cross version for Win32. | |
57 | ||
58 | %description -l pl.UTF-8 | |
59 | Biblioteka rozmieszczająca i rysująca tekst z fontów OpenType, | |
60 | obsługująca wiele języków. | |
61 | ||
62 | Ten pakiet zawiera wersję skrośną dla Win32. | |
63 | ||
64 | %package static | |
65 | Summary: Static harfbuzz library (cross MinGW32 version) | |
66 | Summary(pl.UTF-8): Statyczna biblioteka harfbuzz (wersja skrośna MinGW32) | |
67 | Group: Development/Libraries | |
68 | Requires: %{name} = %{version}-%{release} | |
69 | ||
70 | %description static | |
71 | Static harfbuzz library (cross MinGW32 version). | |
72 | ||
73 | %description static -l pl.UTF-8 | |
74 | Statyczna biblioteka harfbuzz (wersja skrośna MinGW32). | |
75 | ||
76 | %package dll | |
77 | Summary: DLL harfbuzz library for Windows | |
78 | Summary(pl.UTF-8): Biblioteka DLL harfbuzz dla Windows | |
79 | Group: Applications/Emulators | |
80 | Requires: crossmingw32-freetype-dll >= 2.9 | |
81 | Requires: crossmingw32-glib2-dll >= 2.38 | |
82 | Requires: wine | |
83 | ||
84 | %description dll | |
85 | DLL harfbuzz library for Windows. | |
86 | ||
87 | %description dll -l pl.UTF-8 | |
88 | Biblioteka DLL harfbuzz dla Windows. | |
89 | ||
90 | %package subset | |
91 | Summary: HarfBuzz text shaping library - font subsetter - MinGW32 cross version | |
92 | Summary(pl.UTF-8): Biblioteka HarfBuzz do rysowania tekstu - font subsetter - wersja skrośna dla MinGW32 | |
93 | Group: Development/Libraries | |
94 | Requires: %{name} = %{version}-%{release} | |
95 | ||
96 | %description subset | |
97 | HarfBuzz text shaping library - font subsetter. | |
98 | ||
99 | This package contains the cross version for Win32. | |
100 | ||
101 | %description subset -l pl.UTF-8 | |
102 | Biblioteka HarfBuzz do rysowania tekstu - font subsetter. | |
103 | ||
104 | Ten pakiet zawiera wersję skrośną dla Win32. | |
105 | ||
106 | %package subset-static | |
107 | Summary: Static HarfBuzz subset library (cross MinGW32 version) | |
108 | Summary(pl.UTF-8): Biblioteka statyczna HarfBuzz subset (wersja skrośna MinGW32) | |
109 | Group: Development/Libraries | |
110 | Requires: %{name}-subset = %{version}-%{release} | |
111 | ||
112 | %description subset-static | |
113 | Static HarfBuzz subset library (cross MinGW32 version). | |
114 | ||
115 | %description subset-static -l pl.UTF-8 | |
116 | Biblioteka statyczna HarfBuzz subset (wersja skrośna MinGW32). | |
117 | ||
118 | %package subset-dll | |
119 | Summary: DLL HarfBuzz subset library for Windows | |
120 | Summary(pl.UTF-8): Biblioteka DLL HarfBuzz subset dla Windows | |
121 | Group: Applications/Emulators | |
122 | Requires: %{name}-dll = %{version}-%{release} | |
123 | ||
124 | %description subset-dll | |
125 | DLL HarfBuzz subset library for Windows. | |
126 | ||
127 | %description subset-dll -l pl.UTF-8 | |
128 | Biblioteka DLL HarfBuzz subset dla Windows. | |
129 | ||
130 | %prep | |
131 | %setup -q -n harfbuzz-%{version} | |
132 | %patch0 -p1 | |
133 | ||
134 | %build | |
135 | %{__libtoolize} | |
136 | %{__aclocal} -I m4 | |
137 | %{__autoconf} | |
138 | %{__autoheader} | |
139 | %{__automake} | |
140 | export PKG_CONFIG_LIBDIR=%{_pkgconfigdir} | |
141 | # MingW32 headers require GNU extensions (-std=c++11 doesn't work) | |
142 | %configure \ | |
143 | CPPFLAGS="%{rpmcppflags} -D_GNU_SOURCE" \ | |
144 | CXXFLAGS="%{rpmcxxflags} -std=gnu++11" \ | |
145 | --target=%{target} \ | |
146 | --build=i686-pc-linux-gnu \ | |
147 | --host=%{target} \ | |
148 | --disable-gtk-doc \ | |
149 | --disable-silent-rules \ | |
150 | --enable-static \ | |
151 | --without-cairo \ | |
152 | --with-freetype \ | |
153 | --with-glib \ | |
154 | --without-graphite2 \ | |
155 | --with-html-dir=%{_gtkdocdir} \ | |
156 | --without-icu \ | |
157 | --with-uniscribe | |
158 | ||
159 | %{__make} | |
160 | ||
161 | %install | |
162 | rm -rf $RPM_BUILD_ROOT | |
163 | ||
164 | %{__make} install \ | |
165 | DESTDIR=$RPM_BUILD_ROOT | |
166 | ||
167 | install -d $RPM_BUILD_ROOT%{_dlldir} | |
168 | %{__mv} $RPM_BUILD_ROOT%{_prefix}/bin/*.dll $RPM_BUILD_ROOT%{_dlldir} | |
169 | ||
170 | %if 0%{!?debug:1} | |
171 | %{target}-strip --strip-unneeded -R.comment -R.note $RPM_BUILD_ROOT%{_dlldir}/*.dll | |
172 | %{target}-strip -g -R.comment -R.note $RPM_BUILD_ROOT%{_libdir}/*.a | |
173 | %endif | |
174 | ||
175 | %{__rm} $RPM_BUILD_ROOT%{_bindir}/hb*.exe | |
176 | %{__rm} -rf $RPM_BUILD_ROOT%{_gtkdocdir} | |
177 | ||
178 | %clean | |
179 | rm -rf $RPM_BUILD_ROOT | |
180 | ||
181 | %files | |
182 | %defattr(644,root,root,755) | |
183 | %doc COPYING ChangeLog README TODO | |
184 | %{_libdir}/libharfbuzz.dll.a | |
185 | %{_libdir}/libharfbuzz.la | |
186 | %dir %{_includedir}/harfbuzz | |
187 | %{_includedir}/harfbuzz/hb.h | |
188 | %{_includedir}/harfbuzz/hb-blob.h | |
189 | %{_includedir}/harfbuzz/hb-buffer.h | |
190 | %{_includedir}/harfbuzz/hb-common.h | |
191 | %{_includedir}/harfbuzz/hb-deprecated.h | |
192 | %{_includedir}/harfbuzz/hb-face.h | |
193 | %{_includedir}/harfbuzz/hb-font.h | |
194 | %{_includedir}/harfbuzz/hb-ft.h | |
195 | %{_includedir}/harfbuzz/hb-glib.h | |
196 | %{_includedir}/harfbuzz/hb-map.h | |
197 | %{_includedir}/harfbuzz/hb-ot-font.h | |
198 | %{_includedir}/harfbuzz/hb-ot-layout.h | |
199 | %{_includedir}/harfbuzz/hb-ot-math.h | |
200 | %{_includedir}/harfbuzz/hb-ot-shape.h | |
201 | %{_includedir}/harfbuzz/hb-ot-tag.h | |
202 | %{_includedir}/harfbuzz/hb-ot-var.h | |
203 | %{_includedir}/harfbuzz/hb-ot.h | |
204 | %{_includedir}/harfbuzz/hb-set.h | |
205 | %{_includedir}/harfbuzz/hb-shape-plan.h | |
206 | %{_includedir}/harfbuzz/hb-shape.h | |
207 | %{_includedir}/harfbuzz/hb-unicode.h | |
208 | %{_includedir}/harfbuzz/hb-uniscribe.h | |
209 | %{_includedir}/harfbuzz/hb-version.h | |
210 | %{_pkgconfigdir}/harfbuzz.pc | |
211 | ||
212 | %files static | |
213 | %defattr(644,root,root,755) | |
214 | %{_libdir}/libharfbuzz.a | |
215 | ||
216 | %files dll | |
217 | %defattr(644,root,root,755) | |
218 | %{_dlldir}/libharfbuzz-0.dll | |
219 | ||
220 | %files subset | |
221 | %defattr(644,root,root,755) | |
222 | %{_libdir}/libharfbuzz-subset.dll.a | |
223 | %{_libdir}/libharfbuzz-subset.la | |
224 | %{_includedir}/harfbuzz/hb-subset.h | |
225 | %{_includedir}/harfbuzz/hb-subset-glyf.hh | |
226 | %{_includedir}/harfbuzz/hb-subset-plan.hh | |
227 | %{_includedir}/harfbuzz/hb-subset-private.hh | |
228 | %{_pkgconfigdir}/harfbuzz-subset.pc | |
229 | ||
230 | %files subset-static | |
231 | %defattr(644,root,root,755) | |
232 | %{_libdir}/libharfbuzz-subset.a | |
233 | ||
234 | %files subset-dll | |
235 | %defattr(644,root,root,755) | |
236 | %{_dlldir}/libharfbuzz-subset-0.dll |