-#
# TODO:
# - update documentation to follow changes introduced in Patch0
#
# Conditional build:
+%bcond_with apidocs # build apidocs (broken with new gtk-doc)
%bcond_without static_libs # don't build static libraries
-#
+
Summary: GNOME2 configuration database system
Summary(pl.UTF-8): System konfiguracyjnej bazy danych dla GNOME 2
Summary(pt_BR.UTF-8): Sistema de Configuração do GNOME 2
Summary(ru.UTF-8): Система конфигурации GNOME 2
Name: GConf2
-Version: 2.26.2
-Release: 1
+Version: 3.2.6
+Release: 8
License: LGPL v2+
Group: X11/Applications
-Source0: http://ftp.gnome.org/pub/GNOME/sources/GConf/2.26/GConf-%{version}.tar.bz2
-# Source0-md5: 8b55d58dab13e821e048627aa4f92b8b
+Source0: http://ftp.gnome.org/pub/GNOME/sources/GConf/3.2/GConf-%{version}.tar.xz
+# Source0-md5: 2b16996d0e4b112856ee5c59130e822c
Patch0: %{name}-NO_MAJOR_VERSION.patch
Patch1: %{name}-reload.patch
-URL: http://www.gnome.org/
+Patch2: workaround-crash.patch
+Patch3: python3.patch
+URL: https://projects-old.gnome.org/gconf/
BuildRequires: ORBit2-devel >= 1:2.14.9
-BuildRequires: PolicyKit-devel >= 0.9
-BuildRequires: autoconf
+BuildRequires: autoconf >= 2.60
BuildRequires: automake >= 1:1.9
-BuildRequires: gettext-devel
+BuildRequires: dbus-devel >= 1.0.0
BuildRequires: dbus-glib-devel >= 0.74
-BuildRequires: glib2-devel >= 1:2.19.0
-BuildRequires: gtk+2-devel >= 2:2.15.0
-BuildRequires: gtk-doc >= 1.8
+BuildRequires: docbook-dtd412-xml
+BuildRequires: gettext-tools
+BuildRequires: glib2-devel >= 1:2.31.0
+BuildRequires: gobject-introspection-devel >= 0.10.0
+BuildRequires: gtk+3-devel >= 3.0.0
+%{?with_apidocs:BuildRequires: gtk-doc >= 1.8}
BuildRequires: intltool >= 0.40.0
BuildRequires: libtool
BuildRequires: libxml2-devel >= 1:2.6.30
BuildRequires: openldap-devel >= 2.4.6
BuildRequires: perl-base
BuildRequires: pkgconfig
-BuildRequires: rpmbuild(macros) >= 1.197
+BuildRequires: polkit-devel >= 0.92
+BuildRequires: rpm-pythonprov
+BuildRequires: rpmbuild(macros) >= 1.527
+BuildRequires: tar >= 1:1.22
+BuildRequires: xz
Requires(post): findutils
+Requires(post,postun): glib2 >= 1:2.31.0
Requires: %{name}-libs = %{version}-%{release}
+Requires: psmisc >= 20.1-2
Obsoletes: GConf2-xinitrc
Obsoletes: libGConf2
# sr@Latn vs. sr@latin
Summary(pl.UTF-8): Biblioteka współdzielona GConf2
Group: Libraries
Requires: ORBit2 >= 1:2.14.9
-Requires: glib2 >= 1:2.19.0
+Requires: glib2 >= 1:2.31.0
Conflicts: GConf2 < 2.24.0-2
%description libs
Requires: %{name}-libs = %{version}-%{release}
Requires: ORBit2-devel >= 1:2.14.9
Requires: dbus-devel >= 1.0.0
+Requires: glib2-devel >= 1:2.31.0
Requires: libxml2-devel >= 1:2.6.30
Obsoletes: libGConf2-devel
Summary(pl.UTF-8): Dokumentacja API GConf2
Group: Documentation
Requires: gtk-doc-common
+BuildArch: noarch
%description apidocs
GConf2 API documentation.
%setup -q -n GConf-%{version}
%patch0 -p1
%patch1 -p1
+%patch2 -p1
+%patch3 -p1
%build
-%{__gtkdocize}
+%{?with_apidocs:%{__gtkdocize}}
%{__glib_gettextize}
%{__intltoolize}
%{__libtoolize}
%{__autoconf}
%{__automake}
%configure \
- POLKIT_POLICY_FILE_VALIDATE=/usr/bin/polkit-policy-file-validate \
+ --disable-silent-rules \
%{!?with_static_libs:--disable-static} \
- --enable-gtk-doc \
+ %{__enable_disable apidocs gtk-doc} \
--with-html-dir=%{_gtkdocdir}
%{__make}
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_examplesdir}/%{name}-%{version},%{_sysconfdir}/gconf/{schemas,gconf.xml.system}}
+install -d $RPM_BUILD_ROOT{%{_examplesdir}/%{name}-%{version},%{_sysconfdir}/gconf/{schemas,gconf.xml.system},%{_datadir}/GConf/gsettings}
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT
%find_lang %{name}
# no *.{la,a} for modules - shut up check-files
-rm -f $RPM_BUILD_ROOT%{_libdir}/GConf2/lib*.{la,a}
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/{GConf2,gio/modules}/lib*.la
+%if %{with static_libs}
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/{GConf2,gio/modules}/lib*.a
+%endif
+# obsoleted by pkg-config
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/libgconf-2.la
%clean
rm -rf $RPM_BUILD_ROOT
fi
done
+%{_bindir}/gio-querymodules %{_libdir}/gio/modules
+
+%postun
+umask 022
+%{_bindir}/gio-querymodules %{_libdir}/gio/modules
+exit 0
+
%post libs -p /sbin/ldconfig
%postun libs -p /sbin/ldconfig
%files
%defattr(644,root,root,755)
-%doc AUTHORS NEWS README
+%doc AUTHORS ChangeLog NEWS README TODO
%attr(755,root,root) %{_bindir}/gconf-merge-tree
+%attr(755,root,root) %{_bindir}/gsettings-data-convert
+%attr(755,root,root) %{_bindir}/gsettings-schema-convert
%attr(755,root,root) %{_libexecdir}/gconf-defaults-mechanism
-%attr(755,root,root) %{_libexecdir}/gconf-sanity-check-2
%attr(755,root,root) %{_libexecdir}/gconfd-2
%dir %{_libdir}/GConf2
%attr(755,root,root) %{_libdir}/GConf2/libgconfbackend-oldxml.so
%attr(755,root,root) %{_libdir}/GConf2/libgconfbackend-xml.so
-%{_sysconfdir}/dbus-1/system.d/org.gnome.GConf.Defaults.conf
+%attr(755,root,root) %{_libdir}/gio/modules/libgsettingsgconfbackend.so
+/etc/dbus-1/system.d/org.gnome.GConf.Defaults.conf
+%{_sysconfdir}/xdg/autostart/gsettings-data-convert.desktop
%dir %{_sysconfdir}/gconf
%dir %{_sysconfdir}/gconf/2
%{_sysconfdir}/gconf/gconf.xml.*
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/gconf/path
%dir %{_sysconfdir}/gconf/schemas
-%{_datadir}/PolicyKit/policy/org.gnome.gconf.defaults.policy
%{_datadir}/dbus-1/services/org.gnome.GConf.service
%{_datadir}/dbus-1/system-services/org.gnome.GConf.Defaults.service
+%{_datadir}/polkit-1/actions/org.gnome.gconf.defaults.policy
%dir %{_datadir}/GConf
+%dir %{_datadir}/GConf/gsettings
%dir %{_datadir}/GConf/schema
%{_datadir}/sgml/gconf
+%{_mandir}/man1/gsettings-data-convert.1*
+%{_mandir}/man1/gsettings-schema-convert.1*
%files libs -f %{name}.lang
%defattr(644,root,root,755)
%attr(755,root,root) %ghost %{_libdir}/libgconf-2.so.4
%attr(755,root,root) %{_bindir}/gconftool-2
%{_mandir}/man1/gconftool-2.1*
+%{_libdir}/girepository-1.0/GConf-2.0.typelib
%files devel
%defattr(644,root,root,755)
-%doc ChangeLog TODO
%attr(755,root,root) %{_libdir}/libgconf-2.so
-%{_libdir}/libgconf-2.la
%{_includedir}/gconf2
%{_aclocaldir}/gconf-2.m4
%{_pkgconfigdir}/gconf-2.0.pc
+%{_datadir}/gir-1.0/GConf-2.0.gir
%if %{with static_libs}
%files static
%{_libdir}/libgconf-2.a
%endif
+%if %{with apidocs}
%files apidocs
%defattr(644,root,root,755)
%{_gtkdocdir}/gconf
+%endif
%files examples
%defattr(644,root,root,755)