File gconf2.spec of Package gconf2

#
# spec file for package gconf2 (Version 2.28.0)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#

# norootforbuild


Name:           gconf2
BuildRequires:  dbus-1-glib-devel
BuildRequires:  gnome-common
BuildRequires:  gtk2-devel
BuildRequires:  intltool
BuildRequires:  libidl-devel
BuildRequires:  libxml2-devel
BuildRequires:  orbit2-devel
BuildRequires:  polkit-devel
BuildRequires:  update-desktop-files
Url:            http://www.gnome.org/
%define _name GConf
License:        GPL v2 or later ; LGPL v2.1 or later
Group:          System/GUI/GNOME
Version:        2.28.0
Release:        1
Summary:        The GNOME 2.x Desktop Configuration Database System
Source:         ftp://ftp.gnome.org/pub/gnome/sources/GConf/2.20/%{_name}-%{version}.tar.bz2
# Generic tool, not upstreamed:
Source1:        gconftool-rebuild
# RPM specific macros:
Source2:        macros.gconf2
# PATCH-FIX-OPENSUSE gconf2-gconftool-reload.patch -- Include sabayon paths to the default configuration. Simplifies scriptlets:
Patch2:         gconf2-gconftool-reload.patch
# PATCH-FIX-OPENSUSE gconf2-schemas-path.patch
Patch3:         gconf2-schemas-path.patch
# PATCH-FIX-OPENSUSE gconf2-sabayon.patch
Patch4:         gconf2-sabayon.patch
# PATCH-FIX-OPENSUSE gconf2-pk-default-path.patch vuntz@novell.com -- Use the right gconf path for the defaults in the pk helper
Patch5:         gconf2-pk-default-path.patch
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
Requires:       %{name}-lang = %{version}

%description
GConf, the GNOME configuration database. It is used by the GNOME 2.x
Desktop platform.

%package devel
License:        GPL v2 or later ; LGPL v2.1 or later
Summary:        Include files and libraries mandatory for development
Group:          Development/Libraries/GNOME
Requires:       %{name} = %{version}
Requires:       dbus-1-glib-devel
Requires:       glib2-devel
Requires:       orbit2-devel
Obsoletes:      gconf2-doc <= %{version}
Provides:       gconf2-doc = %{version}

%description devel
This package contains all necessary include files and libraries needed
to develop applications that require these.

%lang_package
%prep
%setup -q -n %{_name}-%{version}
%patch2 -p0
%patch3
%patch4
%patch5 -p1
cp -a %{S:1} %{S:2} .

%build
NOCONFIGURE=1 gnome-autogen.sh
%configure --with-pic\
	--libexecdir=%{_prefix}/lib/GConf/2\
	--disable-static
make %{?jobs:-j%jobs}

%install
%makeinstall
# Empty dir for schemas.
mkdir -p $RPM_BUILD_ROOT%{_datadir}/gconf/schemas
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/gconf/gconf.xml.mandatory
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/gconf/gconf.xml.schemas
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/gconf/gconf.xml.system
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/gconf/gconf.xml.vendor
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/gconf/gconf.xml.defaults
install gconftool-rebuild $RPM_BUILD_ROOT%{_bindir}
echo xml:merged:%{_sysconfdir}/gconf/gconf.xml.schemas >$RPM_BUILD_ROOT%{_sysconfdir}/gconf/schema-install-source
%find_lang %{_name}2
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/rpm
cp macros.gconf2 $RPM_BUILD_ROOT%{_sysconfdir}/rpm
find %{buildroot} -type f -name "*.la" -exec %{__rm} -fv {} +

%pre
# FIXME: We should probably remove this entire section for 11.3 (Checked my mboman@suse.de, 2009-02-21)
# Remove probably obsolete /etc/opt/gnome/gconf/schemas and above.
# Needed only for old->10.3->11.x update scenario (now fixed in opt_gnome-compat).
rmdir --ignore-fail-on-non-empty etc/opt/gnome/gconf/schemas 2>/dev/null || :
rmdir --ignore-fail-on-non-empty etc/opt/gnome/gconf 2>/dev/null || :
rmdir --ignore-fail-on-non-empty etc/opt/gnome 2>/dev/null || :
# FIXME: remove this section for 12.2 (we deprecated /etc/gconf/schemas in favor if /usr/share/gconf/schemas during development of 11.2)
rmdir --ignore-fail-on-non-empty etc/gconf/schemas 2>/dev/null || :

%post
/sbin/ldconfig
# FIXME: Consider removing the rest of this section for 12.2:
# If it is an update from SuSE Linux version causing orphan files,
# avoid orphan GConf database keys. (#48114).
# Worked-around by database rebuild from scratch after each update of
# gconf2 package at the cost of extra time.
# http://bugzilla.gnome.org/show_bug.cgi?id=306924
# Since SuSE Linux 10.3, scriptlets are correct, but we have to provide
# upgrade protection for third party packages with broken scriptlets
# for a long time.
# During openSUSE 11.2 development, we moved to a merged xml file.
usr/bin/gconftool-rebuild

%postun 
/sbin/ldconfig
# No other gconf instance exist and schemas directory, too.
# Delete gconf.xml.schemas and keep others (they can contain local
# customization).
# WARNING: If this package will be renamed to gconf and upgraded from <=9.0,
# the directory /etc/opt/gnome/gconf will be deleted by mistake.
# FIXME: remove test for etc/gconf/schemas for 12.2
if test $1 = 0 -a ! \( -d etc/gconf/schemas -o -d usr/share/gconf/schemas \) ; then
    rm -rf etc/gconf/gconf.xml.schemas
fi

%clean
rm -rf $RPM_BUILD_ROOT

%files
%defattr(-, root, root)
%doc AUTHORS COPYING ChangeLog NEWS README
%{_bindir}/*
%{_datadir}/polkit-1/actions/*.policy
%{_datadir}/dbus-1/services/*
%{_datadir}/dbus-1/system-services/*
%{_datadir}/sgml/gconf
%{_libdir}/*.so.*
%dir %{_libdir}/GConf
%dir %{_libdir}/GConf/2
%{_libdir}/GConf/2/*.so*
%if "%{_libdir}" != "%{_prefix}/lib"
%dir %{_prefix}/lib/GConf
%dir %{_prefix}/lib/GConf/2
%endif
%{_prefix}/lib/GConf/2/*-2
%{_prefix}/lib/GConf/2/gconf-defaults-mechanism
%doc %{_mandir}/man?/*.*
%{_sysconfdir}/dbus-1/system.d/*.conf
%dir %{_datadir}/gconf
%dir %{_datadir}/gconf/schemas
%dir %{_sysconfdir}/gconf
%dir %{_sysconfdir}/gconf/gconf.xml.defaults
%dir %{_sysconfdir}/gconf/gconf.xml.mandatory
%dir %{_sysconfdir}/gconf/gconf.xml.vendor
%dir %{_sysconfdir}/gconf/gconf.xml.system
%dir %{_sysconfdir}/gconf/gconf.xml.schemas
%{_sysconfdir}/gconf/schema-install-source
%config %{_sysconfdir}/gconf/2
%{_sysconfdir}/rpm/macros.gconf2

%files lang -f %{_name}2.lang

%files devel
%defattr(-, root, root)
%{_datadir}/aclocal/*.m4
%{_includedir}/gconf
%{_libdir}/*.so
%{_libdir}/pkgconfig/*.pc
%{_datadir}/gtk-doc/html/*

%changelog
openSUSE Build Service is sponsored by