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://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)
26 # see <harfbuzz/internal/ftserv.h>, the real horror
27 %define specflags -fno-strict-aliasing
29 %define no_install_post_strip 1
31 %define target i386-mingw32
32 %define target_platform i386-pc-mingw32
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}
45 # arch-specific flags (like alpha's -mieee) are not valid for i386 gcc
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=]*
54 Internationalized OpenType text layout and rendering library.
56 This package contains the cross version for Win32.
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.
62 Ten pakiet zawiera wersję skrośną dla Win32.
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}
71 Static harfbuzz library (cross MinGW32 version).
73 %description static -l pl.UTF-8
74 Statyczna biblioteka harfbuzz (wersja skrośna MinGW32).
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
85 DLL harfbuzz library for Windows.
87 %description dll -l pl.UTF-8
88 Biblioteka DLL harfbuzz dla Windows.
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}
97 HarfBuzz text shaping library - font subsetter.
99 This package contains the cross version for Win32.
101 %description subset -l pl.UTF-8
102 Biblioteka HarfBuzz do rysowania tekstu - font subsetter.
104 Ten pakiet zawiera wersję skrośną dla Win32.
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}
112 %description subset-static
113 Static HarfBuzz subset library (cross MinGW32 version).
115 %description subset-static -l pl.UTF-8
116 Biblioteka statyczna HarfBuzz subset (wersja skrośna MinGW32).
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}
124 %description subset-dll
125 DLL HarfBuzz subset library for Windows.
127 %description subset-dll -l pl.UTF-8
128 Biblioteka DLL HarfBuzz subset dla Windows.
131 %setup -q -n harfbuzz-%{version}
140 export PKG_CONFIG_LIBDIR=%{_pkgconfigdir}
141 # MingW32 headers require GNU extensions (-std=c++11 doesn't work)
143 CPPFLAGS="%{rpmcppflags} -D_GNU_SOURCE" \
144 CXXFLAGS="%{rpmcxxflags} -std=gnu++11" \
146 --build=i686-pc-linux-gnu \
149 --disable-silent-rules \
154 --without-graphite2 \
155 --with-html-dir=%{_gtkdocdir} \
162 rm -rf $RPM_BUILD_ROOT
165 DESTDIR=$RPM_BUILD_ROOT
167 install -d $RPM_BUILD_ROOT%{_dlldir}
168 %{__mv} $RPM_BUILD_ROOT%{_prefix}/bin/*.dll $RPM_BUILD_ROOT%{_dlldir}
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
175 %{__rm} $RPM_BUILD_ROOT%{_bindir}/hb*.exe
176 %{__rm} -rf $RPM_BUILD_ROOT%{_gtkdocdir}
179 rm -rf $RPM_BUILD_ROOT
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
213 %defattr(644,root,root,755)
214 %{_libdir}/libharfbuzz.a
217 %defattr(644,root,root,755)
218 %{_dlldir}/libharfbuzz-0.dll
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
231 %defattr(644,root,root,755)
232 %{_libdir}/libharfbuzz-subset.a
235 %defattr(644,root,root,755)
236 %{_dlldir}/libharfbuzz-subset-0.dll