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
7 Group: Development/Libraries
8 Source0: https://github.com/harfbuzz/harfbuzz/archive/%{version}/harfbuzz-%{version}.tar.gz
9 # Source0-md5: 0e9f31ef707926e85aeb4b866c64889f
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 Requires: crossmingw32-freetype >= 2.9
24 Requires: crossmingw32-glib2 >= 2.38
25 Requires: crossmingw32-gcc-c++ >= 1:4.7
26 Requires: crossmingw32-pthreads-w32
27 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
29 # see <harfbuzz/internal/ftserv.h>, the real horror
30 %define specflags -fno-strict-aliasing
32 %define no_install_post_strip 1
33 %define _enable_debug_packages 0
35 %define target i386-mingw32
36 %define target_platform i386-pc-mingw32
38 %define _sysprefix /usr
39 %define _prefix %{_sysprefix}/%{target}
40 %define _libdir %{_prefix}/lib
41 %define _pkgconfigdir %{_prefix}/lib/pkgconfig
42 %define _dlldir /usr/share/wine/windows/system
43 %define __cc %{target}-gcc
44 %define __cxx %{target}-g++
45 %define __pkgconfig_provides %{nil}
46 %define __pkgconfig_requires %{nil}
49 # arch-specific flags (like alpha's -mieee) are not valid for i386 gcc
50 %define optflags -O2 -march=i486
52 # -z options are invalid for mingw linker, most of -f options are Linux-specific
53 %define filterout_ld -Wl,-z,.*
54 %define filterout_c -f[-a-z0-9=]*
55 %define filterout_cxx -f[-a-z0-9=]*
58 Internationalized OpenType text layout and rendering library.
60 This package contains the cross version for Win32.
62 %description -l pl.UTF-8
63 Biblioteka rozmieszczająca i rysująca tekst z fontów OpenType,
64 obsługująca wiele języków.
66 Ten pakiet zawiera wersję skrośną dla Win32.
69 Summary: Static harfbuzz library (cross MinGW32 version)
70 Summary(pl.UTF-8): Statyczna biblioteka harfbuzz (wersja skrośna MinGW32)
71 Group: Development/Libraries
72 Requires: %{name} = %{version}-%{release}
75 Static harfbuzz library (cross MinGW32 version).
77 %description static -l pl.UTF-8
78 Statyczna biblioteka harfbuzz (wersja skrośna MinGW32).
81 Summary: DLL harfbuzz library for Windows
82 Summary(pl.UTF-8): Biblioteka DLL harfbuzz dla Windows
83 Group: Applications/Emulators
84 Requires: crossmingw32-freetype-dll >= 2.9
85 Requires: crossmingw32-glib2-dll >= 2.38
89 DLL harfbuzz library for Windows.
91 %description dll -l pl.UTF-8
92 Biblioteka DLL harfbuzz dla Windows.
95 Summary: HarfBuzz text shaping library - font subsetter - MinGW32 cross version
96 Summary(pl.UTF-8): Biblioteka HarfBuzz do rysowania tekstu - font subsetter - wersja skrośna dla MinGW32
97 Group: Development/Libraries
98 Requires: %{name} = %{version}-%{release}
101 HarfBuzz text shaping library - font subsetter.
103 This package contains the cross version for Win32.
105 %description subset -l pl.UTF-8
106 Biblioteka HarfBuzz do rysowania tekstu - font subsetter.
108 Ten pakiet zawiera wersję skrośną dla Win32.
110 %package subset-static
111 Summary: Static HarfBuzz subset library (cross MinGW32 version)
112 Summary(pl.UTF-8): Biblioteka statyczna HarfBuzz subset (wersja skrośna MinGW32)
113 Group: Development/Libraries
114 Requires: %{name}-subset = %{version}-%{release}
116 %description subset-static
117 Static HarfBuzz subset library (cross MinGW32 version).
119 %description subset-static -l pl.UTF-8
120 Biblioteka statyczna HarfBuzz subset (wersja skrośna MinGW32).
123 Summary: DLL HarfBuzz subset library for Windows
124 Summary(pl.UTF-8): Biblioteka DLL HarfBuzz subset dla Windows
125 Group: Applications/Emulators
126 Requires: %{name}-dll = %{version}-%{release}
128 %description subset-dll
129 DLL HarfBuzz subset library for Windows.
131 %description subset-dll -l pl.UTF-8
132 Biblioteka DLL HarfBuzz subset dla Windows.
135 %setup -q -n harfbuzz-%{version}
144 export PKG_CONFIG_LIBDIR=%{_pkgconfigdir}
145 # MingW32 headers require GNU extensions (-std=c++11 doesn't work)
147 CPPFLAGS="%{rpmcppflags} -D_GNU_SOURCE" \
148 CXXFLAGS="%{rpmcxxflags} -std=gnu++11" \
149 PTHREAD_LIBS="-lpthread" \
151 --build=i686-pc-linux-gnu \
154 --disable-silent-rules \
159 --without-graphite2 \
160 --with-html-dir=%{_gtkdocdir} \
167 rm -rf $RPM_BUILD_ROOT
170 DESTDIR=$RPM_BUILD_ROOT
172 install -d $RPM_BUILD_ROOT%{_dlldir}
173 %{__mv} $RPM_BUILD_ROOT%{_prefix}/bin/*.dll $RPM_BUILD_ROOT%{_dlldir}
175 %{__rm} $RPM_BUILD_ROOT%{_libdir}/lib*.la
178 %{target}-strip --strip-unneeded -R.comment -R.note $RPM_BUILD_ROOT%{_dlldir}/*.dll
179 %{target}-strip -g -R.comment -R.note $RPM_BUILD_ROOT%{_libdir}/*.a
182 %{__rm} -r $RPM_BUILD_ROOT%{_libdir}/cmake/harfbuzz
183 %{__rm} $RPM_BUILD_ROOT%{_bindir}/hb*.exe
184 %{__rm} -rf $RPM_BUILD_ROOT%{_gtkdocdir}
187 rm -rf $RPM_BUILD_ROOT
190 %defattr(644,root,root,755)
191 %doc COPYING README TODO
192 %{_libdir}/libharfbuzz.dll.a
193 %dir %{_includedir}/harfbuzz
194 %{_includedir}/harfbuzz/hb.h
195 %{_includedir}/harfbuzz/hb-aat.h
196 %{_includedir}/harfbuzz/hb-aat-layout.h
197 %{_includedir}/harfbuzz/hb-blob.h
198 %{_includedir}/harfbuzz/hb-buffer.h
199 %{_includedir}/harfbuzz/hb-common.h
200 %{_includedir}/harfbuzz/hb-deprecated.h
201 %{_includedir}/harfbuzz/hb-draw.h
202 %{_includedir}/harfbuzz/hb-face.h
203 %{_includedir}/harfbuzz/hb-font.h
204 %{_includedir}/harfbuzz/hb-ft.h
205 %{_includedir}/harfbuzz/hb-glib.h
206 %{_includedir}/harfbuzz/hb-map.h
207 %{_includedir}/harfbuzz/hb-ot-color.h
208 %{_includedir}/harfbuzz/hb-ot-deprecated.h
209 %{_includedir}/harfbuzz/hb-ot-font.h
210 %{_includedir}/harfbuzz/hb-ot-layout.h
211 %{_includedir}/harfbuzz/hb-ot-math.h
212 %{_includedir}/harfbuzz/hb-ot-meta.h
213 %{_includedir}/harfbuzz/hb-ot-metrics.h
214 %{_includedir}/harfbuzz/hb-ot-name.h
215 %{_includedir}/harfbuzz/hb-ot-shape.h
216 %{_includedir}/harfbuzz/hb-ot-var.h
217 %{_includedir}/harfbuzz/hb-ot.h
218 %{_includedir}/harfbuzz/hb-set.h
219 %{_includedir}/harfbuzz/hb-shape-plan.h
220 %{_includedir}/harfbuzz/hb-shape.h
221 %{_includedir}/harfbuzz/hb-style.h
222 %{_includedir}/harfbuzz/hb-unicode.h
223 %{_includedir}/harfbuzz/hb-uniscribe.h
224 %{_includedir}/harfbuzz/hb-version.h
225 %{_pkgconfigdir}/harfbuzz.pc
228 %defattr(644,root,root,755)
229 %{_libdir}/libharfbuzz.a
232 %defattr(644,root,root,755)
233 %{_dlldir}/libharfbuzz-0.dll
236 %defattr(644,root,root,755)
237 %{_libdir}/libharfbuzz-subset.dll.a
238 %{_includedir}/harfbuzz/hb-subset.h
239 %{_pkgconfigdir}/harfbuzz-subset.pc
242 %defattr(644,root,root,755)
243 %{_libdir}/libharfbuzz-subset.a
246 %defattr(644,root,root,755)
247 %{_dlldir}/libharfbuzz-subset-0.dll