]>
Commit | Line | Data |
---|---|---|
3294533f | 1 | # |
2 | # Conditional build: | |
46479e07 | 3 | %bcond_without lcd # without LCD subpixel color filtering (Microsoft patents in USA) |
32e34d75 | 4 | %bcond_without harfbuzz # harfbuzz based autohinting |
1e7243e1 | 5 | # |
8bddf7fd | 6 | %define realname freetype |
7b9bae77 JB |
7 | Summary: TrueType font rasterizer - MinGW32 cross version |
8 | Summary(pl.UTF-8): Rasteryzer fontów TrueType - wersja skrośna dla MinGW32 | |
8bddf7fd | 9 | Name: crossmingw32-%{realname} |
2b0047a4 | 10 | Version: 2.13.2 |
8a560153 | 11 | Release: 1 |
b5e35991 | 12 | License: GPL v2 or FTL |
1e7243e1 | 13 | Group: Development/Libraries |
03738637 | 14 | Source0: https://download.savannah.gnu.org/releases/freetype/%{realname}-%{version}.tar.xz |
2b0047a4 | 15 | # Source0-md5: 1f625f0a913c449551b1e3790a1817d7 |
b67d1c73 | 16 | Patch0: freetype-mingw32.patch |
c5c5c968 | 17 | URL: https://freetype.org/ |
31924283 | 18 | BuildRequires: crossmingw32-bzip2 |
3c4380bc | 19 | BuildRequires: crossmingw32-gcc |
03738637 | 20 | %{?with_harfbuzz:BuildRequires: crossmingw32-harfbuzz >= 2.0.0} |
1f1d4f67 | 21 | BuildRequires: crossmingw32-libpng |
8bddf7fd | 22 | BuildRequires: crossmingw32-zlib >= 1.2.3-2 |
c54b2961 | 23 | BuildRequires: pkgconfig >= 1:0.24 |
3294533f | 24 | BuildRequires: python |
41b05267 JB |
25 | BuildRequires: tar >= 1:1.22 |
26 | BuildRequires: xz | |
31924283 | 27 | Requires: crossmingw32-bzip2 |
03738637 | 28 | %{?with_harfbuzz:Requires: crossmingw32-harfbuzz >= 2.0.0} |
1f1d4f67 | 29 | Requires: crossmingw32-libpng |
8bddf7fd | 30 | Requires: crossmingw32-zlib >= 1.2.3-2 |
3294533f | 31 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
32 | ||
33 | %define specflags_ia32 -fomit-frame-pointer | |
34 | # see <freetype/internal/ftserv.h>, the real horror | |
35 | %define specflags -fno-strict-aliasing | |
36 | ||
37 | %define no_install_post_strip 1 | |
faca7b54 | 38 | %define _enable_debug_packages 0 |
3294533f | 39 | |
40 | %define target i386-mingw32 | |
41 | %define target_platform i386-pc-mingw32 | |
3294533f | 42 | |
43 | %define _sysprefix /usr | |
44 | %define _prefix %{_sysprefix}/%{target} | |
b5aa177c JB |
45 | %define _libdir %{_prefix}/lib |
46 | %define _pkgconfigdir %{_prefix}/lib/pkgconfig | |
1e7243e1 | 47 | %define _dlldir /usr/share/wine/windows/system |
3294533f | 48 | %define __cc %{target}-gcc |
49 | %define __cxx %{target}-g++ | |
d230bce9 | 50 | %define __pkgconfig_provides %{nil} |
dce5a0f7 | 51 | %define __pkgconfig_requires %{nil} |
3294533f | 52 | |
46479e07 JB |
53 | %ifnarch %{ix86} |
54 | # arch-specific flags (like alpha's -mieee) are not valid for i386 gcc | |
55 | %define optflags -O2 | |
56 | %endif | |
4f990096 | 57 | # -z options are invalid for mingw linker, most of -f options are Linux-specific |
46479e07 | 58 | %define filterout_ld -Wl,-z,.* |
1f1d4f67 | 59 | %define filterout_c -f[-a-z0-9=]* |
46479e07 | 60 | |
3294533f | 61 | %description |
62 | The FreeType engine is a free and portable TrueType font rendering | |
63 | engine. It has been developed to provide TrueType support to a great | |
64 | variety of platforms and environments. | |
65 | ||
66 | Note that FreeType is a *library*. It is not a font server for your | |
67 | favorite platform, even though it was designed to be used in many of | |
68 | them. Note also that it is *not* a complete text-rendering library. | |
69 | Its purpose is simply to open and manage font files, as well as load, | |
70 | hint and render individual glyphs efficiently. You can also see it as | |
71 | a "TrueType driver" for a higher-level library, though rendering text | |
72 | with it is extremely easy, as demo-ed by the test programs. | |
73 | ||
1e7243e1 | 74 | This package contains the cross version for Win32. |
3294533f | 75 | |
76 | %description -l pl.UTF-8 | |
77 | FreeType jest biblioteką służącą do rasteryzacji fontów | |
78 | TrueType. Jest to jedynie biblioteka, a nie serwer fontów, chociaż | |
79 | została ona zaprojektowana do używania także w takich serwerach. | |
80 | Nie jest to też kompletna biblioteka do rasteryzacji tekstu. Jej | |
81 | celem jest tylko odczytywanie i zarządzanie plikami z fontami oraz | |
82 | wczytywanie i wykonywanie hintingu i rasteryzacji poszczególnych | |
83 | glifów. Może być także uważana za "sterownik TrueType" dla | |
84 | bibliotek wyższego poziomu, jednak użycie samej biblioteki FreeType | |
85 | do rasteryzacji jest bardzo proste, co można zobaczyć w programach | |
86 | demonstracyjnych. | |
87 | ||
1e7243e1 JB |
88 | Ten pakiet zawiera wersję skrośną dla Win32. |
89 | ||
90 | %package static | |
7b9bae77 JB |
91 | Summary: Static freetype library (cross MinGW32 version) |
92 | Summary(pl.UTF-8): Statyczna biblioteka freetype (wersja skrośna MinGW32) | |
1e7243e1 JB |
93 | Group: Development/Libraries |
94 | Requires: %{name} = %{version}-%{release} | |
95 | ||
96 | %description static | |
7b9bae77 | 97 | Static freetype library (cross MinGW32 version). |
1e7243e1 JB |
98 | |
99 | %description static -l pl.UTF-8 | |
7b9bae77 | 100 | Statyczna biblioteka freetype (wersja skrośna MinGW32). |
1e7243e1 JB |
101 | |
102 | %package dll | |
103 | Summary: DLL freetype library for Windows | |
104 | Summary(pl.UTF-8): Biblioteka DLL freetype dla Windows | |
105 | Group: Applications/Emulators | |
1f1d4f67 | 106 | Requires: crossmingw32-bzip2-dll |
03738637 | 107 | %{?with_harfbuzz:Requires: crossmingw32-harfbuzz-dll >= 2.0.0} |
1f1d4f67 | 108 | Requires: crossmingw32-libpng-dll |
1e7243e1 JB |
109 | Requires: crossmingw32-zlib-dll |
110 | Requires: wine | |
111 | ||
112 | %description dll | |
113 | DLL freetype library for Windows. | |
114 | ||
115 | %description dll -l pl.UTF-8 | |
116 | Biblioteka DLL freetype dla Windows. | |
3294533f | 117 | |
118 | %prep | |
8bddf7fd | 119 | %setup -q -n %{realname}-%{version} |
b67d1c73 | 120 | %patch0 -p1 |
3294533f | 121 | |
122 | %build | |
1f1d4f67 | 123 | export PKG_CONFIG_LIBDIR=%{_pkgconfigdir} |
3294533f | 124 | CFLAGS="%{rpmcflags} \ |
1c57a66b JB |
125 | %{?with_lcd:-DFT_CONFIG_OPTION_SUBPIXEL_RENDERING} \ |
126 | -DTT_CONFIG_OPTION_SUBPIXEL_HINTING \ | |
127 | " \ | |
3294533f | 128 | %configure \ |
1f1d4f67 JB |
129 | LIBPNG_CFLAGS="$(pkg-config --cflags libpng)" \ |
130 | LIBPNG_LDFLAGS="$(pkg-config --libs libpng)" \ | |
3294533f | 131 | --target=%{target} \ |
6181c873 | 132 | --build=i686-pc-linux-gnu \ |
133 | --host=%{target} \ | |
badc5f1d JB |
134 | --enable-shared \ |
135 | %{!?with_harfbuzz:--without-harfbuzz} | |
3294533f | 136 | |
137 | %{__make} | |
138 | ||
139 | %install | |
140 | rm -rf $RPM_BUILD_ROOT | |
3294533f | 141 | |
142 | %{__make} install \ | |
143 | DESTDIR=$RPM_BUILD_ROOT | |
144 | ||
1e7243e1 | 145 | install -d $RPM_BUILD_ROOT%{_dlldir} |
1f1d4f67 | 146 | %{__mv} -f $RPM_BUILD_ROOT%{_prefix}/bin/*.dll $RPM_BUILD_ROOT%{_dlldir} |
1e7243e1 JB |
147 | |
148 | %if 0%{!?debug:1} | |
149 | %{target}-strip --strip-unneeded -R.comment -R.note $RPM_BUILD_ROOT%{_dlldir}/*.dll | |
150 | %{target}-strip -g -R.comment -R.note $RPM_BUILD_ROOT%{_libdir}/*.a | |
151 | %endif | |
152 | ||
1f1d4f67 | 153 | %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/aclocal |
1e7243e1 | 154 | |
3294533f | 155 | %clean |
156 | rm -rf $RPM_BUILD_ROOT | |
157 | ||
158 | %files | |
159 | %defattr(644,root,root,755) | |
03738637 | 160 | %doc LICENSE.TXT docs/{CHANGES,FTL.TXT,TODO,formats.txt,raster.txt} |
1e7243e1 JB |
161 | %{_libdir}/libfreetype.dll.a |
162 | %{_libdir}/libfreetype.la | |
3294533f | 163 | %{_includedir}/freetype2 |
5bc110d4 | 164 | %{_pkgconfigdir}/freetype2.pc |
1e7243e1 JB |
165 | |
166 | %files static | |
167 | %defattr(644,root,root,755) | |
168 | %{_libdir}/libfreetype.a | |
169 | ||
170 | %files dll | |
171 | %defattr(644,root,root,755) | |
8bddf7fd | 172 | %{_dlldir}/libfreetype-*.dll |