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