]>
Commit | Line | Data |
---|---|---|
8469de34 | 1 | Summary: Useful routines for 'C' programming - MinGW32 cross version |
ab514c36 ER |
2 | Summary(cs.UTF-8): Šikovná knihovna s funkcemi pro pomocné programy |
3 | Summary(da.UTF-8): Nyttige biblioteksfunktioner | |
4 | Summary(de.UTF-8): Eine nützliche Library von Dienstprogramm-Funktionen | |
5 | Summary(es.UTF-8): Conjunto de funciones gráficas utilitarias | |
6 | Summary(fi.UTF-8): Kirjasto, jossa on työkalufunktioita | |
7 | Summary(fr.UTF-8): Bibliothèque de fonctions utilitaires | |
8 | Summary(ja.UTF-8): 便利なユーティリティ関数のライブラリ | |
8469de34 | 9 | Summary(pl.UTF-8): Biblioteka zawierająca wiele użytecznych funkcji C - wersja skrośna dla MinGW32 |
ab514c36 ER |
10 | Summary(pt_BR.UTF-8): Conjunto de funções gráficas utilitárias |
11 | Summary(tr.UTF-8): Yararlı ufak yordamlar kitaplığı | |
12 | Summary(zh_CN.UTF-8): 实用工具函数库 | |
e528a0cc | 13 | %define realname glib |
1bf6ca42 | 14 | Name: crossmingw32-glib2 |
6343ab48 | 15 | Version: 2.66.8 |
44e00312 | 16 | Release: 2 |
745caf87 | 17 | License: LGPL v2+ |
794b98a7 | 18 | Group: Development/Libraries |
98b9ebaf | 19 | Source0: https://download.gnome.org/sources/glib/2.66/glib-%{version}.tar.xz |
6343ab48 | 20 | # Source0-md5: 705dd46a43d339e8aea19e946e71c32a |
966922de | 21 | Patch0: glib2-win32.patch |
f7ea7419 | 22 | URL: https://www.gtk.org/ |
6d35b0a9 | 23 | BuildRequires: crossmingw32-gcc-c++ |
c9a1f2ad | 24 | BuildRequires: crossmingw32-gettext |
aeb9b581 | 25 | BuildRequires: crossmingw32-libffi >= 3.0.0 |
34e8fb8f | 26 | BuildRequires: crossmingw32-libiconv |
83471978 | 27 | BuildRequires: crossmingw32-pcre >= 8.31 |
966922de JB |
28 | # rand_s() |
29 | BuildRequires: crossmingw32-runtime >= 1:4.0.3-2 | |
23e253c6 | 30 | # SetThreadErrorMode and more |
9cf3c785 | 31 | BuildRequires: crossmingw32-w32api >= 1:5.0.2-9 |
f334d6d2 | 32 | BuildRequires: crossmingw32-zlib |
405204bb | 33 | # host glib-genmarshall and glib-compile-schemas are needed for cross-compiling |
f4c21751 | 34 | BuildRequires: glib2 >= 1:2.62.0 |
966922de | 35 | BuildRequires: gtk-doc >= 1.20 |
83471978 | 36 | BuildRequires: meson >= 0.50.0-2 |
f4c21751 | 37 | BuildRequires: ninja >= 1.5 |
038713af | 38 | BuildRequires: pkgconfig >= 1:0.16 |
ecff71cd | 39 | BuildRequires: python3 >= 1:3.5 |
83471978 | 40 | BuildRequires: rpmbuild(macros) >= 1.736 |
aeb9b581 JB |
41 | BuildRequires: tar >= 1:1.22 |
42 | BuildRequires: xz | |
794b98a7 | 43 | Requires: crossmingw32-gettext |
6343ab48 | 44 | Requires: crossmingw32-libffi >= 3.0.0 |
83471978 | 45 | Requires: crossmingw32-pcre >= 8.31 |
7b00e9c6 | 46 | ExcludeArch: i386 |
07551a26 | 47 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
c6b9b5e4 | 48 | |
49 | %define no_install_post_strip 1 | |
6343ab48 | 50 | %define _enable_debug_packages 0 |
c6b9b5e4 | 51 | |
52 | %define target i386-mingw32 | |
c9a1f2ad | 53 | %define host %{target} |
54 | %define target_platform %{target} | |
c6b9b5e4 | 55 | |
328832ab | 56 | %define _sysprefix /usr |
57 | %define _prefix %{_sysprefix}/%{target} | |
26297d4f | 58 | %define _libdir %{_prefix}/lib |
328832ab | 59 | %define _pkgconfigdir %{_prefix}/lib/pkgconfig |
794b98a7 | 60 | %define _dlldir /usr/share/wine/windows/system |
cad3983f | 61 | %define __pkgconfig_provides %{nil} |
4db9688c | 62 | %define __pkgconfig_requires %{nil} |
6d35b0a9 | 63 | |
83471978 | 64 | # for meson 0.50+, keep __cc/__cxx as host compiler and pass %{target}-* in meson-cross.txt |
c6b9b5e4 | 65 | |
a96a22cc | 66 | # -z options are invalid for mingw linker, most of -f options are Linux-specific |
e6c8cfe5 | 67 | %define filterout_ld -Wl,-z,.* |
a96a22cc | 68 | %define filterout_c -f[-a-z0-9=]* |
e6c8cfe5 | 69 | |
c6b9b5e4 | 70 | %description |
71 | GLib, is a library which includes support routines for C such as | |
d2690a19 | 72 | lists, trees, hashes, memory allocation, and many other things. GLib |
c6b9b5e4 | 73 | includes also generally useful data structures used by GIMP and many |
74 | other. | |
75 | ||
9bd01504 | 76 | This package contains the cross version for Win32. |
77 | ||
411499f2 JR |
78 | %description -l cs.UTF-8 |
79 | Šikovná knihovna s funkcemi pro pomocné programy. Vývojové knihovny a | |
80 | hlavičky jsou v balíčku glib-devel. | |
c6b9b5e4 | 81 | |
411499f2 | 82 | %description -l da.UTF-8 |
c6b9b5e4 | 83 | Nyttigt bibliotek med forskellige funktioner. Udviklings- biblioteker |
84 | og headerfiler er i glib-devel pakken. | |
85 | ||
411499f2 JR |
86 | %description -l de.UTF-8 |
87 | Eine nützliche Library von Dienstprogramm-Funktionen. | |
c6b9b5e4 | 88 | Entwicklungs-Libraries und Header befinden sich in glib-devel. |
89 | ||
411499f2 | 90 | %description -l es.UTF-8 |
c6b9b5e4 | 91 | Conjunto de funciones utilitarias. Bibliotecas de desarrollo y |
411499f2 | 92 | archivos de inclusión están en glib-devel. |
c6b9b5e4 | 93 | |
411499f2 JR |
94 | %description -l fi.UTF-8 |
95 | Kirjasto, jossa on työkalufunktioita. Kehitysversiot ja | |
c6b9b5e4 | 96 | header-tiedostot ovat glib-devel-paketissa. |
97 | ||
411499f2 | 98 | %description -l ja.UTF-8 |
411499f2 JR |
99 | GLibはユーティリティ関数を集めた便利なライブラリです。このC言語用ライブラリは、 |
100 | いくつかの問題を解決するよう設計されており、多くのプログラムから要求される使いやすい | |
101 | 関数を提供します。 | |
c6b9b5e4 | 102 | |
411499f2 JR |
103 | GLibはGDK, |
104 | GTK+他多くのアプリケーションで利用される。このライブラリに依存するアプリケーション | |
105 | 等のためにこのglibパッケージをインストールしてください。 | |
c6b9b5e4 | 106 | |
411499f2 | 107 | %description -l pl.UTF-8 |
d2690a19 | 108 | GLib jest zestawem bibliotek zawierających funkcje do obsługi list i |
411499f2 JR |
109 | drzew, funkcje mieszające, funkcje do alokacji pamięci i dużo innych |
110 | podstawowych funkcji i różnych struktur danych używanych przez program | |
c6b9b5e4 | 111 | GIMP i wiele innych. |
112 | ||
411499f2 | 113 | Ten pakiet zawiera wersję skrośną dla Win32. |
9bd01504 | 114 | |
411499f2 JR |
115 | %description -l pt_BR.UTF-8 |
116 | Conjunto de funções utilitárias. Bibliotecas de desenvolvimento e | |
117 | arquivos de inclusão estão em glib-devel. | |
c6b9b5e4 | 118 | |
411499f2 JR |
119 | %description -l tr.UTF-8 |
120 | Yararlı yordamlar kitaplığı. Geliştirme kitaplıkları ve başlık | |
121 | dosyaları glib-devel paketinde yer almaktadır. | |
c6b9b5e4 | 122 | |
83471978 JB |
123 | %package static |
124 | Summary: Static GLib 2 libraries (cross MinGW32 version) | |
125 | Summary(pl.UTF-8): Statyczne biblioteki GLib 2 (wersja skrośna MinGW32) | |
126 | Group: Development/Libraries | |
127 | Requires: %{name} = %{version}-%{release} | |
128 | ||
129 | %description static | |
130 | Static GLib 2 libraries (cross MinGW32 version). | |
131 | ||
132 | %description static -l pl.UTF-8 | |
133 | Statyczne biblioteki GLib 2 (wersja skrośna MinGW32). | |
134 | ||
794b98a7 | 135 | %package dll |
83471978 JB |
136 | Summary: DLL GLib 2 libraries for Windows |
137 | Summary(pl.UTF-8): Biblioteki DLL GLib 2 dla Windows | |
794b98a7 JB |
138 | Group: Applications/Emulators |
139 | Requires: crossmingw32-gettext-dll | |
aeb9b581 | 140 | Requires: crossmingw32-libffi-dll >= 3.0.0 |
83471978 | 141 | Requires: crossmingw32-pcre-dll >= 8.31 |
794b98a7 JB |
142 | Requires: wine |
143 | ||
144 | %description dll | |
83471978 | 145 | DLL GLib 2 libraries for Windows. |
794b98a7 JB |
146 | |
147 | %description dll -l pl.UTF-8 | |
83471978 | 148 | Biblioteki DLL GLib 2 dla Windows. |
794b98a7 | 149 | |
c6b9b5e4 | 150 | %prep |
e528a0cc | 151 | %setup -q -n %{realname}-%{version} |
328832ab | 152 | %patch0 -p1 |
153 | ||
83471978 JB |
154 | cat > meson-cross.txt <<'EOF' |
155 | [host_machine] | |
156 | system = 'windows' | |
157 | cpu_family = 'x86' | |
158 | cpu = 'i386' | |
159 | endian='little' | |
160 | [binaries] | |
161 | c = '%{target}-gcc' | |
162 | cpp = '%{target}-g++' | |
163 | ar = '%{target}-ar' | |
164 | windres = '%{target}-windres' | |
165 | pkgconfig = 'pkg-config' | |
166 | [properties] | |
6d35b0a9 | 167 | %ifarch %{ix86} |
83471978 | 168 | c_args = ['%(echo %{rpmcflags} | sed -e "s/ \+/ /g;s/ /', '/g")'] |
6d35b0a9 JB |
169 | %else |
170 | # arch-specific flags (like alpha's -mieee) are not valid for i386 gcc. | |
171 | # now at least i486 is required for atomic operations | |
172 | c_args = ['-O2', '-march=i486'] | |
173 | %endif | |
83471978 JB |
174 | EOF |
175 | ||
328832ab | 176 | %build |
2ff0a90e | 177 | export PKG_CONFIG_LIBDIR=%{_prefix}/lib/pkgconfig |
83471978 JB |
178 | %meson build \ |
179 | --cross-file meson-cross.txt \ | |
180 | %{?debug:--debug} \ | |
181 | -Dselinux=disabled | |
182 | ||
183 | %ninja_build -C build | |
c6b9b5e4 | 184 | |
185 | %install | |
186 | rm -rf $RPM_BUILD_ROOT | |
34e8fb8f | 187 | |
83471978 | 188 | %ninja_install -C build |
c6b9b5e4 | 189 | |
794b98a7 | 190 | install -d $RPM_BUILD_ROOT%{_dlldir} |
83471978 | 191 | %{__mv} $RPM_BUILD_ROOT%{_prefix}/bin/*.dll $RPM_BUILD_ROOT%{_dlldir} |
b6da3f2c | 192 | |
ce3c9485 JB |
193 | %if 0%{!?debug:1} |
194 | %{target}-strip --strip-unneeded -R.comment -R.note $RPM_BUILD_ROOT%{_dlldir}/*.dll | |
195 | %{target}-strip -g -R.comment -R.note $RPM_BUILD_ROOT%{_libdir}/*.a | |
196 | %endif | |
197 | ||
44e00312 JB |
198 | # adjust for system tools |
199 | %{__sed} -i -e '/^\(gio\|gio_querymodules\|glib_compile_schemas\|glib_compile_resources\|gdbus\|gdbus_codegen\|gresource\|gsettings\|glib_genmarshal\|gobject_query\|glib_mkenums\)=/ s,\${bindir},/usr/bin,' $RPM_BUILD_ROOT%{_pkgconfigdir}/{gio,glib}-2.0.pc | |
200 | ||
794b98a7 | 201 | # use system glib2-devel instead |
83471978 JB |
202 | %{__rm} $RPM_BUILD_ROOT%{_bindir}/{gdbus-codegen,glib-genmarshal,glib-gettextize,glib-mkenums,gtester-report,*.exe} |
203 | %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/{aclocal,bash-completion,gettext,glib-2.0} | |
794b98a7 | 204 | # runtime |
405204bb | 205 | %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/locale |
c6b9b5e4 | 206 | |
207 | %clean | |
208 | rm -rf $RPM_BUILD_ROOT | |
209 | ||
794b98a7 | 210 | %files |
37a1690c | 211 | %defattr(644,root,root,755) |
706c24a3 | 212 | %{_libdir}/libgio-2.0.dll.a |
794b98a7 JB |
213 | %{_libdir}/libglib-2.0.dll.a |
214 | %{_libdir}/libgmodule-2.0.dll.a | |
215 | %{_libdir}/libgobject-2.0.dll.a | |
216 | %{_libdir}/libgthread-2.0.dll.a | |
405204bb | 217 | %{_includedir}/gio-win32-2.0 |
328832ab | 218 | %{_includedir}/glib-2.0 |
794b98a7 | 219 | %dir %{_libdir}/glib-2.0 |
328832ab | 220 | %dir %{_libdir}/glib-2.0/include |
221 | %{_libdir}/glib-2.0/include/glibconfig.h | |
706c24a3 | 222 | %{_pkgconfigdir}/gio-2.0.pc |
405204bb | 223 | %{_pkgconfigdir}/gio-windows-2.0.pc |
26297d4f JB |
224 | %{_pkgconfigdir}/glib-2.0.pc |
225 | %{_pkgconfigdir}/gmodule-2.0.pc | |
226 | %{_pkgconfigdir}/gmodule-export-2.0.pc | |
227 | %{_pkgconfigdir}/gmodule-no-export-2.0.pc | |
228 | %{_pkgconfigdir}/gobject-2.0.pc | |
229 | %{_pkgconfigdir}/gthread-2.0.pc | |
794b98a7 | 230 | |
83471978 JB |
231 | %files static |
232 | %defattr(644,root,root,755) | |
233 | %{_libdir}/libgio-2.0.a | |
234 | %{_libdir}/libglib-2.0.a | |
235 | %{_libdir}/libgmodule-2.0.a | |
236 | %{_libdir}/libgobject-2.0.a | |
237 | %{_libdir}/libgthread-2.0.a | |
238 | ||
794b98a7 JB |
239 | %files dll |
240 | %defattr(644,root,root,755) | |
cb341081 JB |
241 | %{_dlldir}/libgio-2.0-0.dll |
242 | %{_dlldir}/libglib-2.0-0.dll | |
243 | %{_dlldir}/libgmodule-2.0-0.dll | |
244 | %{_dlldir}/libgobject-2.0-0.dll | |
245 | %{_dlldir}/libgthread-2.0-0.dll |