summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'gnome-base/gconf/gconf-2.28.0-r1.ebuild')
-rw-r--r--gnome-base/gconf/gconf-2.28.0-r1.ebuild107
1 files changed, 107 insertions, 0 deletions
diff --git a/gnome-base/gconf/gconf-2.28.0-r1.ebuild b/gnome-base/gconf/gconf-2.28.0-r1.ebuild
new file mode 100644
index 000000000000..93d1f947f9ca
--- /dev/null
+++ b/gnome-base/gconf/gconf-2.28.0-r1.ebuild
@@ -0,0 +1,107 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/gnome-base/gconf/gconf-2.28.0-r1.ebuild,v 1.1 2009/11/04 21:43:37 mrpouet Exp $
+
+EAPI="2"
+
+inherit eutils gnome2
+
+MY_PN=GConf
+MY_P=${MY_PN}-${PV}
+PVP=(${PV//[-\._]/ })
+
+DESCRIPTION="Gnome Configuration System and Daemon"
+HOMEPAGE="http://www.gnome.org/"
+SRC_URI="mirror://gnome/sources/${MY_PN}/${PVP[0]}.${PVP[1]}/${MY_P}.tar.bz2"
+
+LICENSE="LGPL-2"
+SLOT="2"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug doc ldap policykit"
+
+RDEPEND=">=dev-libs/glib-2.14
+ >=x11-libs/gtk+-2.8.16
+ >=dev-libs/dbus-glib-0.74
+ >=sys-apps/dbus-1
+ >=gnome-base/orbit-2.4
+ >=dev-libs/libxml2-2
+ ldap? ( net-nds/openldap )
+ policykit? ( sys-auth/polkit )"
+DEPEND="${RDEPEND}
+ >=dev-util/intltool-0.35
+ >=dev-util/pkgconfig-0.9
+ >=dev-util/gtk-doc-am-1.10
+ doc? ( >=dev-util/gtk-doc-1 )"
+
+DOCS="AUTHORS ChangeLog NEWS README TODO"
+
+S="${WORKDIR}/${MY_P}"
+
+pkg_setup() {
+ G2CONF="${G2CONF}
+ --enable-gtk
+ --disable-static
+ $(use_with ldap openldap)
+ $(use_enable policykit defaults-service)"
+ kill_gconf
+
+ # Need host's IDL compiler for cross or native build, bug #262747
+ export EXTRA_EMAKE="${EXTRA_EMAKE} ORBIT_IDL=/usr/bin/orbit-idl-2"
+}
+
+src_prepare() {
+ gnome2_src_prepare
+
+ # Do not start gconfd when installing schemas, fix bug #238276, upstream ?
+ epatch "${FILESDIR}/${PN}-2.24.0-no-gconfd.patch"
+
+ # Do not crash in gconf_entry_set_value() when entry pointer is NULL
+ epatch "${FILESDIR}/${P}-entry-set-value-sigsegv.patch"
+
+ # Fix intltoolize broken file, see upstream #577133
+ sed "s:'\^\$\$lang\$\$':\^\$\$lang\$\$:g" -i po/Makefile.in.in || die "sed failed"
+}
+
+# Can't run tests, missing script.
+#src_test() {
+# emake -C tests || die "make tests failed"
+# sh "${S}"/tests/runtests.sh || die "running tests failed"
+#}
+
+src_install() {
+ gnome2_src_install
+
+ keepdir /etc/gconf/gconf.xml.mandatory
+ keepdir /etc/gconf/gconf.xml.defaults
+ # Make sure this directory exists, bug #268070, upstream #572027
+ keepdir /etc/gconf/gconf.xml.system
+
+ echo 'CONFIG_PROTECT_MASK="/etc/gconf"' > 50gconf
+ doenvd 50gconf || die "doenv failed"
+ dodir /root/.gconfd
+}
+
+pkg_preinst() {
+ kill_gconf
+}
+
+pkg_postinst() {
+ kill_gconf
+
+ # change the permissions to avoid some gconf bugs
+ einfo "changing permissions for gconf dirs"
+ find /etc/gconf/ -type d -exec chmod ugo+rx "{}" \;
+
+ einfo "changing permissions for gconf files"
+ find /etc/gconf/ -type f -exec chmod ugo+r "{}" \;
+}
+
+kill_gconf() {
+ # This function will kill all running gconfd-2 that could be causing troubles
+ if [ -x /usr/bin/gconftool-2 ]
+ then
+ /usr/bin/gconftool-2 --shutdown
+ fi
+
+ return 0
+}