]> git.pld-linux.org Git - packages/glib2.git/blobdiff - glib2.spec
- really rebuild with libffi 3.3
[packages/glib2.git] / glib2.spec
index c6e1dea1f9b25cccc09bb000670022f1d3ca94f6..36534c5242fae585767d07ff773bc70d2122be0c 100644 (file)
@@ -1,8 +1,10 @@
 #
 # Conditional build:
-%bcond_without apidocs         # disable gtk-doc
-%bcond_without static_libs     # don't build static library
-#
+%bcond_without apidocs         # disable gtk-doc
+%bcond_without static_libs     # static library
+%bcond_without selinux         # SELinux support in gio
+%bcond_without systemtap       # systemtap/dtrace probes
+
 Summary:       Useful routines for 'C' programming
 Summary(cs.UTF-8):     Šikovná knihovna s funkcemi pro pomocné programy
 Summary(da.UTF-8):     Nyttige biblioteksfunktioner
@@ -16,42 +18,60 @@ Summary(pt_BR.UTF-8):       Conjunto de funções gráficas utilitárias
 Summary(tr.UTF-8):     Yararlı ufak yordamlar kitaplığı
 Summary(zh_CN.UTF-8):  实用工具函数库
 Name:          glib2
-Version:       2.14.6
-Release:       1
+Version:       2.64.2
+Release:       3
 Epoch:         1
 License:       LGPL v2+
 Group:         Libraries
-Source0:       ftp://ftp.gtk.org/pub/glib/2.14/glib-%{version}.tar.bz2
-# Source0-md5: 3b340946d6916ee9cbf2c348e7c099f1
-Patch0:                %{name}-makefile.patch
-Patch1:                %{name}-SEGV.patch
-Patch2:                %{name}-noarch.patch
-Patch3:                %{name}-asneeded.patch
-URL:           http://www.gtk.org/
-BuildRequires: autoconf >= 2.54
-BuildRequires: automake >= 1:1.7
+Source0:       http://ftp.gnome.org/pub/GNOME/sources/glib/2.64/glib-%{version}.tar.xz
+# Source0-md5: 78b6bda8664763a09bd12d864c0ba46c
+Patch0:                %{name}-python_shebang.patch
+URL:           https://www.gtk.org/
 BuildRequires: docbook-dtd412-xml
-BuildRequires: docbook-style-xsl
-BuildRequires: gettext-devel
-%{?with_apidocs:BuildRequires: gtk-doc >= 1.8}
-%{?with_apidocs:BuildRequires: gtk-doc-automake >= 1.8}
-BuildRequires: libtool >= 1:1.4.2-9
-BuildRequires: pcre-devel >= 7.6
+BuildRequires: docbook-dtd45-xml
+BuildRequires: docbook-style-xsl-nons
+BuildRequires: elfutils-devel
+BuildRequires: fam-devel
+BuildRequires: gettext-tools
+%if %(locale -a | grep -q '^C\.utf8$'; echo $?)
+BuildRequires: glibc-localedb-all
+%endif
+%if %{with apidocs}
+BuildRequires: gtk-doc >= 1.20
+%endif
+BuildRequires: libffi-devel >= 3.0.0
+BuildRequires: libmount-devel >= 2.28
+%{?with_selinux:BuildRequires: libselinux-devel}
+BuildRequires: meson >= 0.49.2
+BuildRequires: ninja >= 1.5
+BuildRequires: pcre-devel >= 8.31
 BuildRequires: perl-base
-BuildRequires: pkgconfig >= 1:0.14.0
-BuildRequires: rpmbuild(macros) >= 1.197
-%{!?with_apidocs:BuildRequires:        sed >= 4.0}
+BuildRequires: pkgconfig >= 1:0.16
+# in case of separate libelf (elfutils don't provide .pc file)
+#BuildRequires:        pkgconfig(libelf) >= 0.8.12
+BuildRequires: pkgconfig(libffi) >= 3.0.0
+BuildRequires: python3 >= 1:3.5
+BuildRequires: rpm-perlprov
+BuildRequires: rpm-pythonprov
+BuildRequires: rpmbuild(macros) >= 1.745
+BuildRequires: sed >= 4.0
+%{?with_systemtap:BuildRequires:       systemtap-sdt-devel}
+BuildRequires: tar >= 1:1.22
+BuildRequires: xz
+BuildRequires: zlib-devel
 Requires:      iconv
-Requires:      pcre >= 7.6
+Requires:      libmount >= 2.28
+Requires:      pcre >= 8.31
+Suggests:      gvfs
 Provides:      glib2-libs
 Obsoletes:     glib2-libs
-# sr@Latn vs. sr@latin
-Conflicts:     glibc-misc < 6:2.7
+# see https://bugzilla.xfce.org/show_bug.cgi?id=9709
+Conflicts:     xfce4-session < 4.10.0-5
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
 GLib, is a library which includes support routines for C such as
-lists, trees, hashes, memory allocation, and many other things. GLIB
+lists, trees, hashes, memory allocation, and many other things. GLib
 includes also generally useful data structures used by GIMP and many
 other.
 
@@ -77,15 +97,13 @@ header-tiedostot ovat glib-devel-paketissa.
 
 %description -l ja.UTF-8
 GLibはユーティリティ関数を集めた便利なライブラリです。このC言語用ライブラリは、
-いくつかの問題を解決するよう設計されており、多くのプログラムから要求される使いやすい
-関数を提供します。
+いくつかの問題を解決するよう設計されており、多くのプログラムから要求される使いやすい 関数を提供します。
 
-GLibはGDK,
-GTK+他多くのアプリケーションで利用される。このライブラリに依存するアプリケーション
+GLibはGDK, GTK+他多くのアプリケーションで利用される。このライブラリに依存するアプリケーション
 等のためにこのglibパッケージをインストールしてください。
 
 %description -l pl.UTF-8
-Glib jest zestawem bibliotek zawierających funkcje do obsługi list i
+GLib jest zestawem bibliotek zawierających funkcje do obsługi list i
 drzew, funkcje mieszające, funkcje do alokacji pamięci i dużo innych
 podstawowych funkcji i różnych struktur danych używanych przez program
 GIMP i wiele innych.
@@ -99,17 +117,23 @@ Yararlı yordamlar kitaplığı. Geliştirme kitaplıkları ve başlık
 dosyaları glib-devel paketinde yer almaktadır.
 
 %package devel
-Summary:       Glib heades files, documentation
+Summary:       GLib heades files, documentation
 Summary(es.UTF-8):     Conjunto de funciones gráficas utilitarias para desarrollo
-Summary(pl.UTF-8):     Pliki nagłówkowe i dokumentacja do glib
+Summary(pl.UTF-8):     Pliki nagłówkowe i dokumentacja do GLib
 Summary(pt_BR.UTF-8):  Conjunto de ferramentas e biblioteca do kit de desenho do GIMP
 Group:         Development/Libraries
 Requires:      %{name} = %{epoch}:%{version}-%{release}
-Requires:      pcre-devel >= 7.6
+Requires:      libffi-devel >= 3.0.0
+Requires:      libmount-devel >= 2.28
+Requires:      pcre-devel >= 8.31
+Requires:      python3-modules >= 1:3.5
+# gio only
+%{?with_selinux:Requires:      libselinux-devel}
+Requires:      zlib-devel
 
 %description devel
 Header files for the support library for the GIMP's X libraries, which
-are available as public libraries. GLIB includes generally useful data
+are available as public libraries. GLib includes generally useful data
 structures.
 
 %description devel -l es.UTF-8
@@ -117,101 +141,154 @@ Conjunto de funciones gráficas utilitarias para desarrollo.
 
 %description devel -l ja.UTF-8
 glib2-develパッケージには、一般ライブラリとして有効なGIMPのXライブラリ群
-(GtkとGDK)をサポートするライブラリ向けにスタティックライブラリとヘッダが
-含まれています。
+(GtkとGDK)をサポートするライブラリ向けにスタティックライブラリとヘッダが 含まれています。
 
-もしGLibを使ってプログラムを開発するならば、glib-develパッケージをインスト
-ールしてください。
+もしGLibを使ってプログラムを開発するならば、glib-develパッケージをインスト ールしてください。
 
 %description devel -l pl.UTF-8
-Pliki nagłówkowe i dokumentacja do glib przydatna przy pisaniu
+Pliki nagłówkowe i dokumentacja do GLib przydatna przy pisaniu
 programów wykorzystujących tę bibliotekę.
 
 %description devel -l pt_BR.UTF-8
 Bibliotecas e arquivos de inclusão para a biblioteca de suporte para
 as bibliotecas X do GIMP, que são disponíveis como bibliotecas
-públicas. A GLIB inclui estruturas de dados genéricas úteis.
+públicas. A GLib inclui estruturas de dados genéricas úteis.
 
 %package static
-Summary:       Static glib libraries
-Summary(pl.UTF-8):     Biblioteki statyczne glib
-Summary(pt_BR.UTF-8):  Bibliotecas estáticas para desenvolvimento com glib
+Summary:       Static GLib libraries
+Summary(pl.UTF-8):     Biblioteki statyczne GLib
+Summary(pt_BR.UTF-8):  Bibliotecas estáticas para desenvolvimento com GLib
 Group:         Development/Libraries
 Requires:      %{name}-devel = %{epoch}:%{version}-%{release}
 
 %description static
-Static glib libraries.
+Static GLib libraries.
 
 %description static -l pl.UTF-8
-Biblioteki statyczne glib.
+Biblioteki statyczne GLib.
 
 %description static -l pt_BR.UTF-8
-Bibliotecas estáticas para desenvolvimento com glib.
+Bibliotecas estáticas para desenvolvimento com GLib.
 
 %package apidocs
-Summary:       Glib API documetation
-Summary(pl.UTF-8):     Dokumentacja API Glib
+Summary:       GLib API documetation
+Summary(pl.UTF-8):     Dokumentacja API GLib
 Group:         Documentation
 Requires:      gtk-doc-common
+%if "%{_rpmversion}" >= "5"
+BuildArch:     noarch
+%endif
 
 %description apidocs
-Glib API documetation.
+GLib API documetation.
 
 %description apidocs -l pl.UTF-8
-Dokumentacja API Glib.
+Dokumentacja API GLib.
+
+%package gdb
+Summary:       GDB Python pretty printers for GObject/GLib types
+Summary(pl.UTF-8):     Skrypty Pythona dla GDB do ładnego wypisywania typów GObject/GLib
+Group:         Development/Debuggers
+Requires:      gdb
+
+%description gdb
+GDB Python pretty printers for GObject/GLib types. This includes
+support for GObject pointer pretty printing and signal frame
+compression in backtraces.
+
+%description gdb -l pl.UTF-8
+Skrypty Pythona dla GDB do ładnego wypisywania typów GObject/GLib.
+Obejmują także ładne wypisywanie wskaźników GObject oraz kompresję
+ramek sygnagłów w zrzutach wywołań (backtrace).
+
+%package -n bash-completion-gio
+Summary:       bash-completion for gio utilities
+Summary(pl.UTF-8):     Bashowe uzupełnianie nazw dla narzędzi gio
+Group:         Applications/Shells
+Requires:      bash-completion >= 2.0
+Obsoletes:     bash-completion-gdbus
+%if "%{_rpmversion}" >= "5"
+BuildArch:     noarch
+%endif
+
+%description -n bash-completion-gio
+bash-completion for gio utilities: gdbus and gsettings.
+
+%description -n bash-completion-gio -l pl.UTF-8
+Bashowe uzupełnianie nazw dla narzędzi gio: gdbus i gsettings.
+
+%package -n systemtap-glib2
+Summary:       systemtap/dtrace probes for GLib 2
+Summary(pl.UTF-8):     Sondy systemtap/dtrace dla GLib 2
+Group:         Development/Tools
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+Requires:      systemtap-client
+
+%description -n systemtap-glib2
+systemtap/dtrace probes for GLib 2.
+
+%description -n systemtap-glib2 -l pl.UTF-8
+Sondy systemtap/dtrace dla GLib 2.
 
 %prep
 %setup -q -n glib-%{version}
 %patch0 -p1
-%patch1 -p1
-%patch2 -p1
-%patch3 -p1
-
-%if !%{with apidocs}
-sed -e '/SUBDIRS/s/docs//' -i Makefile.am
-sed -e '/^docs.*Makefile$/d' -i configure.in
-echo 'AC_DEFUN([GTK_DOC_CHECK],[])' >> acinclude.m4
-%endif
 
 %build
-%{?with_apidocs:%{__gtkdocize}}
-%{__libtoolize}
-%{__aclocal} -I m4macros
-%{__autoconf}
-%{__autoheader}
-%{__automake}
-%configure \
-       --%{?with_apidocs:en}%{!?with_apidocs:dis}able-gtk-doc \
-       %{?with_apidocs:--with-html-dir=%{_gtkdocdir}} \
-       --%{?with_static_libs:en}%{!?with_static_libs:dis}able-static \
-       --enable-debug=%{?debug:yes} \
-       --enable-man \
-       --enable-threads \
-       --with-pcre=system
-
-%{__make}
+%meson build \
+       %{?debug:--debug} \
+       -Ddtrace=%{__true_false systemtap} \
+       -Dsystemtap=%{__true_false systemtap} \
+%ifarch %{ix86}
+       %{?with_systemtap:-Dtapset_install_dir=%{_datadir}/systemtap/tapset/i386} \
+%endif
+       -Dfam=true \
+       -Dgtk_doc=%{__true_false apidocs} \
+       -Dselinux=%{?with_selinux:enabled}%{!?with_selinux:disabled} \
+       -Dman=true \
+       -Dinternal_pcre=false
+
+%ninja_build -C build
 
 %install
 rm -rf $RPM_BUILD_ROOT
 
-%{__make} install \
-       DESTDIR=$RPM_BUILD_ROOT \
-       m4datadir=%{_aclocaldir} \
-       pkgconfigdir=%{_pkgconfigdir}
+%ninja_install -C build
+
+> $RPM_BUILD_ROOT%{_libdir}/gio/modules/giomodule.cache
+> $RPM_BUILD_ROOT%{_datadir}/glib-2.0/schemas/gschemas.compiled
 
-[ -d $RPM_BUILD_ROOT%{_datadir}/locale/sr@latin ] || \
-       mv -f $RPM_BUILD_ROOT%{_datadir}/locale/sr@{Latn,latin}
-%find_lang glib20 --with-gnome
+%py_comp $RPM_BUILD_ROOT%{_datadir}/glib-2.0/gdb
+%py_ocomp $RPM_BUILD_ROOT%{_datadir}/glib-2.0/gdb
+%py_postclean $RPM_BUILD_ROOT%{_datadir}/glib-2.0/gdb
+
+# adjust for compatibility with names supported by glibc
+%{__mv} $RPM_BUILD_ROOT%{_localedir}/{sr@ije,sr@ijekavian}
+
+%find_lang glib20
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
-%post  -p /sbin/ldconfig
+%post
+/sbin/ldconfig
+
+umask 022
+%{_bindir}/gio-querymodules %{_libdir}/gio/modules || :
+
 %postun        -p /sbin/ldconfig
 
 %files -f glib20.lang
 %defattr(644,root,root,755)
 %doc AUTHORS README NEWS
+%attr(755,root,root) %{_bindir}/gapplication
+%attr(755,root,root) %{_bindir}/gdbus
+%attr(755,root,root) %{_bindir}/gio
+%attr(755,root,root) %{_bindir}/gio-querymodules
+%attr(755,root,root) %{_bindir}/glib-compile-schemas
+%attr(755,root,root) %{_bindir}/gsettings
+%attr(755,root,root) %{_libdir}/libgio-2.0.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libgio-2.0.so.0
 %attr(755,root,root) %{_libdir}/libglib-2.0.so.*.*.*
 %attr(755,root,root) %ghost %{_libdir}/libglib-2.0.so.0
 %attr(755,root,root) %{_libdir}/libgmodule-2.0.so.*.*.*
@@ -220,28 +297,51 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %ghost %{_libdir}/libgobject-2.0.so.0
 %attr(755,root,root) %{_libdir}/libgthread-2.0.so.*.*.*
 %attr(755,root,root) %ghost %{_libdir}/libgthread-2.0.so.0
+%dir %{_libdir}/gio
+%dir %{_libdir}/gio/modules
+%attr(755,root,root) %{_libdir}/gio/modules/libgiofam.so
+%ghost %{_libdir}/gio/modules/giomodule.cache
+%dir %{_datadir}/glib-2.0
+%dir %{_datadir}/glib-2.0/schemas
+%ghost %{_datadir}/glib-2.0/schemas/gschemas.compiled
+%if %{with apidocs}
+%{_mandir}/man1/gapplication.1*
+%{_mandir}/man1/gdbus.1*
+%{_mandir}/man1/gio.1*
+%{_mandir}/man1/gio-querymodules.1*
+%{_mandir}/man1/glib-compile-schemas.1*
+%{_mandir}/man1/gsettings.1*
+%endif
 
 %files devel
 %defattr(644,root,root,755)
-%doc ChangeLog
+%attr(755,root,root) %{_bindir}/gdbus-codegen
+%attr(755,root,root) %{_bindir}/glib-compile-resources
 %attr(755,root,root) %{_bindir}/glib-genmarshal
 %attr(755,root,root) %{_bindir}/glib-gettextize
 %attr(755,root,root) %{_bindir}/glib-mkenums
 %attr(755,root,root) %{_bindir}/gobject-query
+%attr(755,root,root) %{_bindir}/gresource
+%attr(755,root,root) %{_bindir}/gtester
+%attr(755,root,root) %{_bindir}/gtester-report
+%attr(755,root,root) %{_libdir}/libgio-2.0.so
 %attr(755,root,root) %{_libdir}/libglib-2.0.so
 %attr(755,root,root) %{_libdir}/libgmodule-2.0.so
 %attr(755,root,root) %{_libdir}/libgobject-2.0.so
 %attr(755,root,root) %{_libdir}/libgthread-2.0.so
-%{_libdir}/libglib-2.0.la
-%{_libdir}/libgmodule-2.0.la
-%{_libdir}/libgobject-2.0.la
-%{_libdir}/libgthread-2.0.la
-%{_includedir}/glib-2.0
 %{_libdir}/glib-2.0
-%dir %{_datadir}/glib-2.0
+%{_includedir}/gio-unix-2.0
+%{_includedir}/glib-2.0
+%dir %{_datadir}/glib-2.0/codegen
+%{_datadir}/glib-2.0/codegen/*.py*
 %dir %{_datadir}/glib-2.0/gettext
-%attr(755,root,root) %{_datadir}/glib-2.0/gettext/mkinstalldirs
 %{_datadir}/glib-2.0/gettext/po
+%{_datadir}/glib-2.0/schemas/gschema.dtd
+%{_datadir}/glib-2.0/valgrind
+%{_datadir}/gettext/its/gschema.its
+%{_datadir}/gettext/its/gschema.loc
+%{_pkgconfigdir}/gio-2.0.pc
+%{_pkgconfigdir}/gio-unix-2.0.pc
 %{_pkgconfigdir}/glib-2.0.pc
 %{_pkgconfigdir}/gmodule-2.0.pc
 %{_pkgconfigdir}/gmodule-export-2.0.pc
@@ -250,16 +350,23 @@ rm -rf $RPM_BUILD_ROOT
 %{_pkgconfigdir}/gthread-2.0.pc
 %{_aclocaldir}/glib-2.0.m4
 %{_aclocaldir}/glib-gettext.m4
+%{_aclocaldir}/gsettings.m4
 %if %{with apidocs}
+%{_mandir}/man1/gdbus-codegen.1*
+%{_mandir}/man1/glib-compile-resources.1*
 %{_mandir}/man1/glib-genmarshal.1*
 %{_mandir}/man1/glib-gettextize.1*
 %{_mandir}/man1/glib-mkenums.1*
 %{_mandir}/man1/gobject-query.1*
+%{_mandir}/man1/gresource.1*
+%{_mandir}/man1/gtester-report.1*
+%{_mandir}/man1/gtester.1*
 %endif
 
 %if %{with static_libs}
 %files static
 %defattr(644,root,root,755)
+%{_libdir}/libgio-2.0.a
 %{_libdir}/libglib-2.0.a
 %{_libdir}/libgmodule-2.0.a
 %{_libdir}/libgobject-2.0.a
@@ -269,6 +376,29 @@ rm -rf $RPM_BUILD_ROOT
 %if %{with apidocs}
 %files apidocs
 %defattr(644,root,root,755)
+%{_gtkdocdir}/gio
 %{_gtkdocdir}/glib
 %{_gtkdocdir}/gobject
 %endif
+
+%files gdb
+%defattr(644,root,root,755)
+%{_datadir}/gdb/auto-load/usr/%{_lib}/libglib-2.0.so.*.*.*-gdb.py
+%{_datadir}/gdb/auto-load/usr/%{_lib}/libgobject-2.0.so.*.*.*-gdb.py
+%{_datadir}/glib-2.0/gdb
+
+%files -n bash-completion-gio
+%defattr(644,root,root,755)
+%{_datadir}/bash-completion/completions/gapplication
+%{_datadir}/bash-completion/completions/gdbus
+%{_datadir}/bash-completion/completions/gio
+%{_datadir}/bash-completion/completions/gresource
+%{_datadir}/bash-completion/completions/gsettings
+
+%if %{with systemtap}
+%files -n systemtap-glib2
+%defattr(644,root,root,755)
+%{_datadir}/systemtap/tapset/*/libgio-2.0*.stp
+%{_datadir}/systemtap/tapset/*/libglib-2.0*.stp
+%{_datadir}/systemtap/tapset/*/libgobject-2.0*.stp
+%endif
This page took 0.038384 seconds and 4 git commands to generate.