3 %bcond_without apidocs # disable gtk-doc
4 %bcond_without static_libs # static library
5 %bcond_without selinux # SELinux support in gio
6 %bcond_without systemtap # systemtap/dtrace probes
8 Summary: Useful routines for 'C' programming
9 Summary(cs.UTF-8): Šikovná knihovna s funkcemi pro pomocné programy
10 Summary(da.UTF-8): Nyttige biblioteksfunktioner
11 Summary(de.UTF-8): Eine nützliche Library von Dienstprogramm-Funktionen
12 Summary(es.UTF-8): Conjunto de funciones gráficas utilitarias
13 Summary(fi.UTF-8): Kirjasto, jossa on työkalufunktioita
14 Summary(fr.UTF-8): Bibliothèque de fonctions utilitaires
15 Summary(ja.UTF-8): 便利なユーティリティ関数のライブラリ
16 Summary(pl.UTF-8): Biblioteka zawierająca wiele użytecznych funkcji C
17 Summary(pt_BR.UTF-8): Conjunto de funções gráficas utilitárias
18 Summary(tr.UTF-8): Yararlı ufak yordamlar kitaplığı
19 Summary(zh_CN.UTF-8): 实用工具函数库
26 Source0: http://ftp.gnome.org/pub/GNOME/sources/glib/2.66/glib-%{version}.tar.xz
27 # Source0-md5: 018d2954ecbef1cd9e25c9bbe75475ca
28 Patch0: %{name}-python_shebang.patch
29 URL: https://www.gtk.org/
30 BuildRequires: docbook-dtd412-xml
31 BuildRequires: docbook-dtd45-xml
32 BuildRequires: docbook-style-xsl-nons
33 BuildRequires: elfutils-devel
34 BuildRequires: fam-devel
35 BuildRequires: gettext-tools
36 %if %(locale -a | grep -q '^C\.utf8$'; echo $?)
37 BuildRequires: glibc-localedb-all
40 # TODO: restore when released
41 #BuildRequires: gtk-doc >= 1.32.1
42 BuildRequires: gtk-doc >= 1.32
43 BuildRequires: meson >= 0.52.0
45 BuildRequires: libffi-devel >= 3.0.0
46 BuildRequires: libmount-devel >= 2.28
47 %{?with_selinux:BuildRequires: libselinux-devel}
48 BuildRequires: meson >= 0.49.2
49 BuildRequires: ninja >= 1.5
50 BuildRequires: pcre-devel >= 8.31
51 BuildRequires: perl-base
52 BuildRequires: pkgconfig >= 1:0.16
53 # in case of separate libelf (elfutils don't provide .pc file)
54 #BuildRequires: pkgconfig(libelf) >= 0.8.12
55 BuildRequires: pkgconfig(libffi) >= 3.0.0
56 BuildRequires: python3 >= 1:3.5
57 BuildRequires: rpm-perlprov
58 BuildRequires: rpm-pythonprov
59 BuildRequires: rpmbuild(macros) >= 1.745
60 BuildRequires: sed >= 4.0
61 %{?with_systemtap:BuildRequires: systemtap-sdt-devel}
62 BuildRequires: tar >= 1:1.22
64 BuildRequires: zlib-devel
66 Requires: libmount >= 2.28
67 Requires: pcre >= 8.31
71 # see https://bugzilla.xfce.org/show_bug.cgi?id=9709
72 Conflicts: xfce4-session < 4.10.0-5
73 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
76 GLib, is a library which includes support routines for C such as
77 lists, trees, hashes, memory allocation, and many other things. GLib
78 includes also generally useful data structures used by GIMP and many
81 %description -l cs.UTF-8
82 Šikovná knihovna s funkcemi pro pomocné programy. Vývojové knihovny a
83 hlavičky jsou v balíčku glib-devel.
85 %description -l da.UTF-8
86 Nyttigt bibliotek med forskellige funktioner. Udviklings- biblioteker
87 og headerfiler er i glib-devel pakken.
89 %description -l de.UTF-8
90 Eine nützliche Library von Dienstprogramm-Funktionen.
91 Entwicklungs-Libraries und Header befinden sich in glib-devel.
93 %description -l es.UTF-8
94 Conjunto de funciones utilitarias. Bibliotecas de desarrollo y
95 archivos de inclusión están en glib-devel.
97 %description -l fi.UTF-8
98 Kirjasto, jossa on työkalufunktioita. Kehitysversiot ja
99 header-tiedostot ovat glib-devel-paketissa.
101 %description -l ja.UTF-8
102 GLibはユーティリティ関数を集めた便利なライブラリです。このC言語用ライブラリは、
103 いくつかの問題を解決するよう設計されており、多くのプログラムから要求される使いやすい 関数を提供します。
105 GLibはGDK, GTK+他多くのアプリケーションで利用される。このライブラリに依存するアプリケーション
106 等のためにこのglibパッケージをインストールしてください。
108 %description -l pl.UTF-8
109 GLib jest zestawem bibliotek zawierających funkcje do obsługi list i
110 drzew, funkcje mieszające, funkcje do alokacji pamięci i dużo innych
111 podstawowych funkcji i różnych struktur danych używanych przez program
114 %description -l pt_BR.UTF-8
115 Conjunto de funções utilitárias. Bibliotecas de desenvolvimento e
116 arquivos de inclusão estão em glib-devel.
118 %description -l tr.UTF-8
119 Yararlı yordamlar kitaplığı. Geliştirme kitaplıkları ve başlık
120 dosyaları glib-devel paketinde yer almaktadır.
123 Summary: GLib heades files, documentation
124 Summary(es.UTF-8): Conjunto de funciones gráficas utilitarias para desarrollo
125 Summary(pl.UTF-8): Pliki nagłówkowe i dokumentacja do GLib
126 Summary(pt_BR.UTF-8): Conjunto de ferramentas e biblioteca do kit de desenho do GIMP
127 Group: Development/Libraries
128 Requires: %{name} = %{epoch}:%{version}-%{release}
129 Requires: libffi-devel >= 3.0.0
130 Requires: libmount-devel >= 2.28
131 Requires: pcre-devel >= 8.31
132 Requires: python3-modules >= 1:3.5
134 %{?with_selinux:Requires: libselinux-devel}
138 Header files for the support library for the GIMP's X libraries, which
139 are available as public libraries. GLib includes generally useful data
142 %description devel -l es.UTF-8
143 Conjunto de funciones gráficas utilitarias para desarrollo.
145 %description devel -l ja.UTF-8
146 glib2-develパッケージには、一般ライブラリとして有効なGIMPのXライブラリ群
147 (GtkとGDK)をサポートするライブラリ向けにスタティックライブラリとヘッダが 含まれています。
149 もしGLibを使ってプログラムを開発するならば、glib-develパッケージをインスト ールしてください。
151 %description devel -l pl.UTF-8
152 Pliki nagłówkowe i dokumentacja do GLib przydatna przy pisaniu
153 programów wykorzystujących tę bibliotekę.
155 %description devel -l pt_BR.UTF-8
156 Bibliotecas e arquivos de inclusão para a biblioteca de suporte para
157 as bibliotecas X do GIMP, que são disponíveis como bibliotecas
158 públicas. A GLib inclui estruturas de dados genéricas úteis.
161 Summary: Static GLib libraries
162 Summary(pl.UTF-8): Biblioteki statyczne GLib
163 Summary(pt_BR.UTF-8): Bibliotecas estáticas para desenvolvimento com GLib
164 Group: Development/Libraries
165 Requires: %{name}-devel = %{epoch}:%{version}-%{release}
168 Static GLib libraries.
170 %description static -l pl.UTF-8
171 Biblioteki statyczne GLib.
173 %description static -l pt_BR.UTF-8
174 Bibliotecas estáticas para desenvolvimento com GLib.
177 Summary: GLib API documetation
178 Summary(pl.UTF-8): Dokumentacja API GLib
180 Requires: gtk-doc-common
181 %if "%{_rpmversion}" >= "4.6"
186 GLib API documetation.
188 %description apidocs -l pl.UTF-8
189 Dokumentacja API GLib.
192 Summary: GDB Python pretty printers for GObject/GLib types
193 Summary(pl.UTF-8): Skrypty Pythona dla GDB do ładnego wypisywania typów GObject/GLib
194 Group: Development/Debuggers
198 GDB Python pretty printers for GObject/GLib types. This includes
199 support for GObject pointer pretty printing and signal frame
200 compression in backtraces.
202 %description gdb -l pl.UTF-8
203 Skrypty Pythona dla GDB do ładnego wypisywania typów GObject/GLib.
204 Obejmują także ładne wypisywanie wskaźników GObject oraz kompresję
205 ramek sygnagłów w zrzutach wywołań (backtrace).
207 %package -n bash-completion-gio
208 Summary: bash-completion for gio utilities
209 Summary(pl.UTF-8): Bashowe uzupełnianie nazw dla narzędzi gio
210 Group: Applications/Shells
211 Requires: bash-completion >= 2.0
212 Obsoletes: bash-completion-gdbus
213 %if "%{_rpmversion}" >= "4.6"
217 %description -n bash-completion-gio
218 bash-completion for gio utilities: gdbus and gsettings.
220 %description -n bash-completion-gio -l pl.UTF-8
221 Bashowe uzupełnianie nazw dla narzędzi gio: gdbus i gsettings.
223 %package -n systemtap-glib2
224 Summary: systemtap/dtrace probes for GLib 2
225 Summary(pl.UTF-8): Sondy systemtap/dtrace dla GLib 2
226 Group: Development/Tools
227 Requires: %{name} = %{epoch}:%{version}-%{release}
228 Requires: systemtap-client
230 %description -n systemtap-glib2
231 systemtap/dtrace probes for GLib 2.
233 %description -n systemtap-glib2 -l pl.UTF-8
234 Sondy systemtap/dtrace dla GLib 2.
237 %setup -q -n glib-%{version}
240 # TODO: drop when 1.32.1 is released
241 %{__sed} -i -e 's/1.32.1/1.32/' docs/reference/meson.build
246 -Ddtrace=%{__true_false systemtap} \
247 -Dsystemtap=%{__true_false systemtap} \
249 %{?with_systemtap:-Dtapset_install_dir=%{_datadir}/systemtap/tapset/i386} \
252 -Dgtk_doc=%{__true_false apidocs} \
253 -Dselinux=%{?with_selinux:enabled}%{!?with_selinux:disabled} \
255 -Dinternal_pcre=false
257 %ninja_build -C build
260 rm -rf $RPM_BUILD_ROOT
262 %ninja_install -C build
264 > $RPM_BUILD_ROOT%{_libdir}/gio/modules/giomodule.cache
265 > $RPM_BUILD_ROOT%{_datadir}/glib-2.0/schemas/gschemas.compiled
267 %py_comp $RPM_BUILD_ROOT%{_datadir}/glib-2.0/gdb
268 %py_ocomp $RPM_BUILD_ROOT%{_datadir}/glib-2.0/gdb
269 %py_postclean $RPM_BUILD_ROOT%{_datadir}/glib-2.0/gdb
271 # adjust for compatibility with names supported by glibc
272 %{__mv} $RPM_BUILD_ROOT%{_localedir}/{sr@ije,sr@ijekavian}
277 rm -rf $RPM_BUILD_ROOT
283 %{_bindir}/gio-querymodules %{_libdir}/gio/modules || :
285 %postun -p /sbin/ldconfig
287 %files -f glib20.lang
288 %defattr(644,root,root,755)
289 %doc AUTHORS README NEWS
290 %attr(755,root,root) %{_bindir}/gapplication
291 %attr(755,root,root) %{_bindir}/gdbus
292 %attr(755,root,root) %{_bindir}/gio
293 %attr(755,root,root) %{_bindir}/gio-querymodules
294 %attr(755,root,root) %{_bindir}/glib-compile-schemas
295 %attr(755,root,root) %{_bindir}/gsettings
296 %attr(755,root,root) %{_libdir}/libgio-2.0.so.*.*.*
297 %attr(755,root,root) %ghost %{_libdir}/libgio-2.0.so.0
298 %attr(755,root,root) %{_libdir}/libglib-2.0.so.*.*.*
299 %attr(755,root,root) %ghost %{_libdir}/libglib-2.0.so.0
300 %attr(755,root,root) %{_libdir}/libgmodule-2.0.so.*.*.*
301 %attr(755,root,root) %ghost %{_libdir}/libgmodule-2.0.so.0
302 %attr(755,root,root) %{_libdir}/libgobject-2.0.so.*.*.*
303 %attr(755,root,root) %ghost %{_libdir}/libgobject-2.0.so.0
304 %attr(755,root,root) %{_libdir}/libgthread-2.0.so.*.*.*
305 %attr(755,root,root) %ghost %{_libdir}/libgthread-2.0.so.0
307 %dir %{_libdir}/gio/modules
308 %attr(755,root,root) %{_libdir}/gio/modules/libgiofam.so
309 %ghost %{_libdir}/gio/modules/giomodule.cache
310 %dir %{_datadir}/glib-2.0
311 %dir %{_datadir}/glib-2.0/schemas
312 %ghost %{_datadir}/glib-2.0/schemas/gschemas.compiled
314 %{_mandir}/man1/gapplication.1*
315 %{_mandir}/man1/gdbus.1*
316 %{_mandir}/man1/gio.1*
317 %{_mandir}/man1/gio-querymodules.1*
318 %{_mandir}/man1/glib-compile-schemas.1*
319 %{_mandir}/man1/gsettings.1*
323 %defattr(644,root,root,755)
324 %attr(755,root,root) %{_bindir}/gdbus-codegen
325 %attr(755,root,root) %{_bindir}/glib-compile-resources
326 %attr(755,root,root) %{_bindir}/glib-genmarshal
327 %attr(755,root,root) %{_bindir}/glib-gettextize
328 %attr(755,root,root) %{_bindir}/glib-mkenums
329 %attr(755,root,root) %{_bindir}/gobject-query
330 %attr(755,root,root) %{_bindir}/gresource
331 %attr(755,root,root) %{_bindir}/gtester
332 %attr(755,root,root) %{_bindir}/gtester-report
333 %attr(755,root,root) %{_libdir}/libgio-2.0.so
334 %attr(755,root,root) %{_libdir}/libglib-2.0.so
335 %attr(755,root,root) %{_libdir}/libgmodule-2.0.so
336 %attr(755,root,root) %{_libdir}/libgobject-2.0.so
337 %attr(755,root,root) %{_libdir}/libgthread-2.0.so
339 %{_includedir}/gio-unix-2.0
340 %{_includedir}/glib-2.0
341 %dir %{_datadir}/glib-2.0/codegen
342 %{_datadir}/glib-2.0/codegen/*.py*
343 %dir %{_datadir}/glib-2.0/gettext
344 %{_datadir}/glib-2.0/gettext/po
345 %{_datadir}/glib-2.0/schemas/gschema.dtd
346 %{_datadir}/glib-2.0/valgrind
347 %{_datadir}/gettext/its/gschema.its
348 %{_datadir}/gettext/its/gschema.loc
349 %{_pkgconfigdir}/gio-2.0.pc
350 %{_pkgconfigdir}/gio-unix-2.0.pc
351 %{_pkgconfigdir}/glib-2.0.pc
352 %{_pkgconfigdir}/gmodule-2.0.pc
353 %{_pkgconfigdir}/gmodule-export-2.0.pc
354 %{_pkgconfigdir}/gmodule-no-export-2.0.pc
355 %{_pkgconfigdir}/gobject-2.0.pc
356 %{_pkgconfigdir}/gthread-2.0.pc
357 %{_aclocaldir}/glib-2.0.m4
358 %{_aclocaldir}/glib-gettext.m4
359 %{_aclocaldir}/gsettings.m4
361 %{_mandir}/man1/gdbus-codegen.1*
362 %{_mandir}/man1/glib-compile-resources.1*
363 %{_mandir}/man1/glib-genmarshal.1*
364 %{_mandir}/man1/glib-gettextize.1*
365 %{_mandir}/man1/glib-mkenums.1*
366 %{_mandir}/man1/gobject-query.1*
367 %{_mandir}/man1/gresource.1*
368 %{_mandir}/man1/gtester-report.1*
369 %{_mandir}/man1/gtester.1*
372 %if %{with static_libs}
374 %defattr(644,root,root,755)
375 %{_libdir}/libgio-2.0.a
376 %{_libdir}/libglib-2.0.a
377 %{_libdir}/libgmodule-2.0.a
378 %{_libdir}/libgobject-2.0.a
379 %{_libdir}/libgthread-2.0.a
384 %defattr(644,root,root,755)
387 %{_gtkdocdir}/gobject
391 %defattr(644,root,root,755)
392 %{_datadir}/gdb/auto-load/usr/%{_lib}/libglib-2.0.so.*.*.*-gdb.py
393 %{_datadir}/gdb/auto-load/usr/%{_lib}/libgobject-2.0.so.*.*.*-gdb.py
394 %{_datadir}/glib-2.0/gdb
396 %files -n bash-completion-gio
397 %defattr(644,root,root,755)
398 %{_datadir}/bash-completion/completions/gapplication
399 %{_datadir}/bash-completion/completions/gdbus
400 %{_datadir}/bash-completion/completions/gio
401 %{_datadir}/bash-completion/completions/gresource
402 %{_datadir}/bash-completion/completions/gsettings
404 %if %{with systemtap}
405 %files -n systemtap-glib2
406 %defattr(644,root,root,755)
407 %{_datadir}/systemtap/tapset/*/libgio-2.0*.stp
408 %{_datadir}/systemtap/tapset/*/libglib-2.0*.stp
409 %{_datadir}/systemtap/tapset/*/libgobject-2.0*.stp