]>
Commit | Line | Data |
---|---|---|
457aa3ee JB |
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 | |
c34f64b9 | 4 | Version: 1.7.5 |
08ae5fa1 | 5 | Release: 1 |
457aa3ee JB |
6 | License: MIT |
7 | Group: Development/Libraries | |
8dfe0280 | 8 | Source0: https://www.freedesktop.org/software/harfbuzz/release/harfbuzz-%{version}.tar.bz2 |
c34f64b9 | 9 | # Source0-md5: 1466ab51fc5aaa6af4065936939cec62 |
24a2a94f | 10 | Patch0: harfbuzz-win32.patch |
8dfe0280 | 11 | URL: https://www.freedesktop.org/wiki/HarfBuzz |
15a364e6 | 12 | BuildRequires: autoconf >= 2.64 |
aa2bbcad | 13 | BuildRequires: automake >= 1:1.11.1 |
a278f832 JB |
14 | # cairo is used only for utilities, which are not packaged |
15 | #BuildRequires: crossmingw32-cairo >= 1.8.0 | |
08ddd3b1 | 16 | BuildRequires: crossmingw32-freetype >= 2.4.2 |
aab13c71 | 17 | BuildRequires: crossmingw32-glib2 >= 2.38 |
16e576c1 | 18 | BuildRequires: crossmingw32-gcc-c++ >= 1:4.7 |
15a364e6 | 19 | BuildRequires: libtool >= 2:2.2 |
a2a964b7 | 20 | BuildRequires: pkgconfig >= 1:0.20 |
08ddd3b1 | 21 | Requires: crossmingw32-freetype >= 2.4.2 |
aab13c71 | 22 | Requires: crossmingw32-glib2 >= 2.38 |
16e576c1 | 23 | Requires: crossmingw32-gcc-c++ >= 1:4.7 |
457aa3ee JB |
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++ | |
16d7336b | 41 | %define __pkgconfig_provides %{nil} |
94aebac6 | 42 | %define __pkgconfig_requires %{nil} |
457aa3ee JB |
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 | |
08ddd3b1 | 80 | Requires: crossmingw32-freetype-dll >= 2.4.2 |
aab13c71 | 81 | Requires: crossmingw32-glib2-dll >= 2.38 |
457aa3ee JB |
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 | %prep | |
91 | %setup -q -n harfbuzz-%{version} | |
24a2a94f | 92 | %patch0 -p1 |
457aa3ee JB |
93 | |
94 | %build | |
15a364e6 JB |
95 | %{__libtoolize} |
96 | %{__aclocal} -I m4 | |
97 | %{__autoconf} | |
98 | %{__autoheader} | |
99 | %{__automake} | |
457aa3ee | 100 | export PKG_CONFIG_LIBDIR=%{_pkgconfigdir} |
16e576c1 | 101 | # MingW32 headers require GNU extensions (-std=c++11 doesn't work) |
457aa3ee | 102 | %configure \ |
16e576c1 JB |
103 | CPPFLAGS="%{rpmcppflags} -D_GNU_SOURCE" \ |
104 | CXXFLAGS="%{rpmcxxflags} -std=gnu++11" \ | |
457aa3ee JB |
105 | --target=%{target} \ |
106 | --build=i686-pc-linux-gnu \ | |
107 | --host=%{target} \ | |
2bcfc9b2 | 108 | --disable-gtk-doc \ |
457aa3ee | 109 | --disable-silent-rules \ |
15a364e6 | 110 | --enable-static \ |
a278f832 | 111 | --without-cairo \ |
15a364e6 JB |
112 | --with-freetype \ |
113 | --with-glib \ | |
114 | --without-graphite2 \ | |
2bcfc9b2 | 115 | --with-html-dir=%{_gtkdocdir} \ |
15a364e6 JB |
116 | --without-icu \ |
117 | --with-uniscribe | |
457aa3ee JB |
118 | |
119 | %{__make} | |
120 | ||
121 | %install | |
122 | rm -rf $RPM_BUILD_ROOT | |
123 | ||
15a364e6 | 124 | %{__make} install \ |
457aa3ee JB |
125 | DESTDIR=$RPM_BUILD_ROOT |
126 | ||
127 | install -d $RPM_BUILD_ROOT%{_dlldir} | |
4443bb20 | 128 | %{__mv} $RPM_BUILD_ROOT%{_prefix}/bin/*.dll $RPM_BUILD_ROOT%{_dlldir} |
457aa3ee JB |
129 | |
130 | %if 0%{!?debug:1} | |
131 | %{target}-strip --strip-unneeded -R.comment -R.note $RPM_BUILD_ROOT%{_dlldir}/*.dll | |
132 | %{target}-strip -g -R.comment -R.note $RPM_BUILD_ROOT%{_libdir}/*.a | |
133 | %endif | |
134 | ||
4443bb20 | 135 | %{__rm} $RPM_BUILD_ROOT%{_bindir}/hb*.exe |
2bcfc9b2 JB |
136 | %{__rm} -rf $RPM_BUILD_ROOT%{_gtkdocdir} |
137 | ||
457aa3ee JB |
138 | %clean |
139 | rm -rf $RPM_BUILD_ROOT | |
140 | ||
141 | %files | |
142 | %defattr(644,root,root,755) | |
143 | %doc COPYING ChangeLog README TODO | |
144 | %{_libdir}/libharfbuzz.dll.a | |
145 | %{_libdir}/libharfbuzz.la | |
146 | %{_includedir}/harfbuzz | |
147 | %{_pkgconfigdir}/harfbuzz.pc | |
148 | ||
149 | %files static | |
150 | %defattr(644,root,root,755) | |
151 | %{_libdir}/libharfbuzz.a | |
152 | ||
153 | %files dll | |
154 | %defattr(644,root,root,755) | |
155 | %{_dlldir}/libharfbuzz-*.dll |