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