Sisyphus repository
Last update: 1 october 2023 | SRPMs: 18631 | Visits: 37041430
en ru br
ALT Linux repos
S:3.2.6-alt4
5.0: 2.26.2-alt1
4.1: 2.22.0-alt1
4.0: 2.16.1-alt1
3.0: 1.0.9-alt7.1

Group :: Graphical desktop/GNOME
RPM: GConf

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs and FR  Repocop 

%define ver_major 2.16
%def_disable static

%define oldname GConf2
%define namefix_ver 2.14.0-alt2

Name: GConf
Version: %ver_major.1
Release: alt1
Provides: %oldname = %version-%release
Obsoletes: %oldname < %namefix_ver

Summary: Gnome Config System
Summary(ru_RU.KOI8-R): Система конфигурации Gnome
License: LGPL
Group: Graphical desktop/GNOME
Url: http://www.gnome.org/projects/gconf

Source: ftp://ftp.gnome.org/pub/gnome/sources/%name/%ver_major/%name-%version.tar.bz2
Source1: gconf2
Source2: gconf2_set
Source3: gconf2_add
Source4: gconf2_get

# stylesheet for strip translations (using XInclude)

# from gconf schema files. Thanks vyt at .
Source5: gconf2-strip-locales.xsl
# gconf2-strip-locales.sh for apply gconf2-strip-locales.xsl
# (%%gconf2_stripschemas rpm macros uses it).
Source6: gconf2-strip-locales.sh

%define ORBit_ver 2.12.1
%define glib_ver 2.9.0
%define libxml2_ver 2.6.17
%define pango_ver 1.8.1
%define gnome_common_ver 2.8.0

Requires: rpm >= 4.0.4-alt1
Requires: lib%name = %version-%release
Requires: ORBit2 >= %ORBit_ver

BuildPreReq: intltool >= 0.35
BuildPreReq: ORBit2-devel >= %ORBit_ver
BuildPreReq: glib2-devel >= %glib_ver
BuildPreReq: libxml2-devel >= %libxml2_ver
BuildPreReq: libpango-devel >= %pango_ver

# to build manpages.

BuildPreReq: help2man

BuildRequires: docbook-dtds docbook-style-xsl docbook-utils gtk-doc indent libgtk+2-devel libpopt-devel zlib-devel

BuildRequires: gnome-common >= %gnome_common_ver

%description
GConf is the GNOME Configuration database system.

GNOME is the GNU Network Object Model Environment. That's a fancy
name but really GNOME is a nice GUI desktop environment. It makes
using your computer easy, powerful, and easy to configure.

%package -n lib%name
Summary: Gnome Config System library package
Group: Graphical desktop/GNOME
Provides: lib%oldname = %version-%release
Obsoletes: lib%oldname < %namefix_ver

%description -n lib%name
GConf library package. Contains files needed for using GConf.

%package -n lib%name-devel
Summary: Gnome Config System development package
Group: Development/GNOME and GTK+
Provides: lib%oldname-devel = %version-%release
Obsoletes: lib%oldname-devel < %namefix_ver
Requires: lib%name = %version-%release

%description -n lib%name-devel
GConf development package. Contains files needed for doing
development using GConf.

%package -n lib%name-devel-doc
Summary: Development documentation for GConf
Group: Development/GNOME and GTK+
Conflicts: lib%name < %version-%release

%description -n lib%name-devel-doc
GConf is the GNOME Configuration database system.

This package contains development documentation for GConf.

%package -n lib%name-devel-static
Summary: Gnome Config System development package
Group: Development/GNOME and GTK+
Requires: lib%name-devel = %version-%release

%description -n lib%name-devel-static
GConf static libraries package. Contains libraries needed for doing
development using GConf.

%prep
%setup -q

# disable localization for gconftool-2

#%__subst 's,\(setlocale (.* \"\),\1C,' gconf/gconftool.c

# disable localization for gconfd

%__subst 's,\(setlocale (.* \"\),\1C,' gconf/gconfd.c

%build
%configure \
   --enable-gtk \
%{subst_enable static} \
--enable-gtk-doc

# SMP-incompatible build

%make

%install
%make_install DESTDIR=%buildroot install

%__cat <<__EOF__ >%buildroot%_sysconfdir/gconf/schema-install-source
xml:readwrite:%_cachedir/gconf/gconf.xml.defaults
__EOF__

%__cat <<__EOF__ >>%buildroot%_sysconfdir/gconf/2/path
xml:readonly:%_cachedir/gconf/gconf.xml.defaults
__EOF__

%__mkdir_p %buildroot%_datadir/gconf/locale
%__install -m644 %SOURCE5 %buildroot%_datadir/gconf/
%__install -m755 %SOURCE6 %buildroot%_datadir/gconf/

%__mkdir_p %buildroot%_cachedir/gconf/{gconf.xml.defaults,gconf.xml.mandatory}
%__chmod 755 %buildroot{%_sysconfdir,%_cachedir}/gconf/gconf.xml.defaults
%__chmod 755 %buildroot{%_sysconfdir,%_cachedir}/gconf/gconf.xml.mandatory

%__install -pD -m644 %SOURCE1 %buildroot%_sysconfdir/rpm/macros.d/gconf2
%__install -p -m755 %SOURCE2 %SOURCE3 %SOURCE4 %buildroot%_bindir/

%__mkdir_p %buildroot%_sysconfdir/buildreqs/files/ignore.d
%__cat <<__EOF__ >%buildroot%_sysconfdir/buildreqs/files/ignore.d/gconf2
^%_sysconfdir/rpm/macros.d/gconf2$
__EOF__

# build man page for gconftool-2

LD_LIBRARY_PATH=gconf/.libs \
help2man -N --name="is a tool to control GConf from the command line" \
   --manual="Gnome Config System" \
   gconf/.libs/gconftool-2 > gconftool-2.man

%__install -pD -m644 gconftool-2.man %buildroot%_man1dir/gconftool-2.1

%find_lang GConf2

bzip2 -9f ChangeLog

%post -n lib%name -p %post_ldconfig
%postun -n lib%name -p %postun_ldconfig

%files -f GConf2.lang
%_bindir/*
%_libexecdir/gconfd-2
%_libexecdir/gconf-sanity-check-2
%_datadir/sgml/gconf
%dir %_datadir/gconf
%_datadir/gconf/gconf2-strip-locales.sh
%_datadir/gconf/gconf2-strip-locales.xsl
%dir %_datadir/gconf/locale
%dir %_sysconfdir/gconf
%dir %_sysconfdir/gconf/2
%dir %_sysconfdir/gconf/gconf.xml.defaults
%dir %_sysconfdir/gconf/gconf.xml.mandatory
%dir %_cachedir/gconf
%dir %_cachedir/gconf/gconf.xml.defaults
%dir %_cachedir/gconf/gconf.xml.mandatory
%config(noreplace) %_sysconfdir/gconf/2/path
%config(noreplace) %_sysconfdir/gconf/schema-install-source
%_man1dir/*
%doc AUTHORS ChangeLog.bz2 NEWS README

%files -n lib%name
%_libdir/*.so.*
%dir %_libdir/GConf
%dir %_libdir/GConf/2
%_libdir/GConf/2/*.so

%files -n lib%name-devel
%_libdir/*.so
%_includedir/*
%_libdir/pkgconfig/*
%_datadir/aclocal/*
%config %_sysconfdir/rpm/macros.d/gconf2
%_sysconfdir/buildreqs/files/ignore.d/gconf2

%files -n lib%name-devel-doc
%doc %_datadir/gtk-doc/html/*

%if_enabled static
%files -n lib%name-devel-static
%_libdir/*.a
%_libdir/GConf/2/*.a
%endif

%exclude %_libdir/GConf/*/*.la

%changelog

Full changelog you can see here

 
design & coding: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
current maintainer: Michael Shigorin