]> git.pld-linux.org Git - packages/crossmingw32-harfbuzz.git/blob - crossmingw32-harfbuzz.spec
- require freetype 2.9 (FT_Done_MM_Var function is used if found); release 2
[packages/crossmingw32-harfbuzz.git] / crossmingw32-harfbuzz.spec
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.7.6
5 Release:        2
6 License:        MIT
7 Group:          Development/Libraries
8 Source0:        https://www.freedesktop.org/software/harfbuzz/release/harfbuzz-%{version}.tar.bz2
9 # Source0-md5:  ffb94cf2942327344ac31330d07036ba
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-ot-font.h
197 %{_includedir}/harfbuzz/hb-ot-layout.h
198 %{_includedir}/harfbuzz/hb-ot-math.h
199 %{_includedir}/harfbuzz/hb-ot-shape.h
200 %{_includedir}/harfbuzz/hb-ot-tag.h
201 %{_includedir}/harfbuzz/hb-ot-var.h
202 %{_includedir}/harfbuzz/hb-ot.h
203 %{_includedir}/harfbuzz/hb-set.h
204 %{_includedir}/harfbuzz/hb-shape-plan.h
205 %{_includedir}/harfbuzz/hb-shape.h
206 %{_includedir}/harfbuzz/hb-unicode.h
207 %{_includedir}/harfbuzz/hb-uniscribe.h
208 %{_includedir}/harfbuzz/hb-version.h
209 %{_pkgconfigdir}/harfbuzz.pc
210
211 %files static
212 %defattr(644,root,root,755)
213 %{_libdir}/libharfbuzz.a
214
215 %files dll
216 %defattr(644,root,root,755)
217 %{_dlldir}/libharfbuzz-0.dll
218
219 %files subset
220 %defattr(644,root,root,755)
221 %{_libdir}/libharfbuzz-subset.dll.a
222 %{_libdir}/libharfbuzz-subset.la
223 %{_includedir}/harfbuzz/hb-subset.h
224 %{_includedir}/harfbuzz/hb-subset-glyf.hh
225 %{_includedir}/harfbuzz/hb-subset-plan.hh
226 %{_includedir}/harfbuzz/hb-subset-private.hh
227 %{_pkgconfigdir}/harfbuzz-subset.pc
228
229 %files subset-static
230 %defattr(644,root,root,755)
231 %{_libdir}/libharfbuzz-subset.a
232
233 %files subset-dll
234 %defattr(644,root,root,755)
235 %{_dlldir}/libharfbuzz-subset-0.dll
This page took 0.048754 seconds and 4 git commands to generate.