Gentoo Archives: gentoo-commits

From: Gilles Dartiguelongue <eva@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: gnome-base/gconf/
Date: Sat, 02 Jan 2016 15:41:24
Message-Id: 1451749266.92c4658b77fa159283d7dbd7c7f48324e6dffc86.eva@gentoo
1 commit: 92c4658b77fa159283d7dbd7c7f48324e6dffc86
2 Author: Gilles Dartiguelongue <eva <AT> gentoo <DOT> org>
3 AuthorDate: Sat Jan 2 15:26:26 2016 +0000
4 Commit: Gilles Dartiguelongue <eva <AT> gentoo <DOT> org>
5 CommitDate: Sat Jan 2 15:41:06 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=92c4658b
7
8 gnome-base/gconf: handle GIO modules cache update, use gnome2 eclass functions
9
10 Even though they are probably not needed, avoids confusion as to why they are not used
11
12 Package-Manager: portage-2.2.26
13
14 gnome-base/gconf/gconf-3.2.6-r4.ebuild | 146 +++++++++++++++++++++++++++++++++
15 1 file changed, 146 insertions(+)
16
17 diff --git a/gnome-base/gconf/gconf-3.2.6-r4.ebuild b/gnome-base/gconf/gconf-3.2.6-r4.ebuild
18 new file mode 100644
19 index 0000000..51ae704
20 --- /dev/null
21 +++ b/gnome-base/gconf/gconf-3.2.6-r4.ebuild
22 @@ -0,0 +1,146 @@
23 +# Copyright 1999-2016 Gentoo Foundation
24 +# Distributed under the terms of the GNU General Public License v2
25 +# $Id$
26 +
27 +EAPI="5"
28 +GCONF_DEBUG="yes"
29 +GNOME_ORG_MODULE="GConf"
30 +GNOME2_LA_PUNT="yes"
31 +PYTHON_COMPAT=( python2_7 )
32 +PYTHON_REQ_USE="xml"
33 +
34 +inherit eutils gnome2 multilib-minimal python-r1
35 +
36 +DESCRIPTION="GNOME configuration system and daemon"
37 +HOMEPAGE="https://projects.gnome.org/gconf/"
38 +
39 +LICENSE="LGPL-2+"
40 +SLOT="2"
41 +KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~arm-linux ~x86-linux"
42 +IUSE="debug +introspection ldap policykit"
43 +
44 +RDEPEND="
45 + ${PYTHON_DEPS}
46 + >=dev-libs/glib-2.34.3:2[${MULTILIB_USEDEP}]
47 + >=dev-libs/dbus-glib-0.100.2:=[${MULTILIB_USEDEP}]
48 + >=sys-apps/dbus-1.6.18-r1:=[${MULTILIB_USEDEP}]
49 + >=dev-libs/libxml2-2.9.1-r4:2[${MULTILIB_USEDEP}]
50 + introspection? ( >=dev-libs/gobject-introspection-0.9.5:= )
51 + ldap? ( >=net-nds/openldap-2.4.38-r1:=[${MULTILIB_USEDEP}] )
52 + policykit? ( sys-auth/polkit:= )
53 +"
54 +DEPEND="${RDEPEND}
55 + dev-libs/libxslt
56 + dev-util/gtk-doc-am
57 + >=dev-util/intltool-0.35
58 + >=virtual/pkgconfig-0-r1[${MULTILIB_USEDEP}]
59 +"
60 +RDEPEND="${RDEPEND}
61 + abi_x86_32? (
62 + !<=app-emulation/emul-linux-x86-gtklibs-20140508-r1
63 + !app-emulation/emul-linux-x86-gtklibs[-abi_x86_32(-)]
64 + )"
65 +
66 +REQUIRED_USE="${PYTHON_REQUIRED_USE}"
67 +
68 +pkg_setup() {
69 + kill_gconf
70 +}
71 +
72 +src_prepare() {
73 + # Do not start gconfd when installing schemas, fix bug #238276, upstream #631983
74 + epatch "${FILESDIR}/${PN}-2.24.0-no-gconfd.patch"
75 +
76 + # Do not crash in gconf_entry_set_value() when entry pointer is NULL, upstream #631985
77 + epatch "${FILESDIR}/${PN}-2.28.0-entry-set-value-sigsegv.patch"
78 +
79 + # From 'master'
80 + # mconvert: enable recursive scheme lookup and fix a crasher
81 + epatch "${FILESDIR}/${P}-mconvert-crasher.patch"
82 +
83 + # dbus: Don't spew to console when unable to connect to dbus daemon
84 + epatch "${FILESDIR}/${P}-spew-console-error.patch"
85 +
86 + # gsettings-data-convert: Warn (and fix) invalid schema paths
87 + epatch "${FILESDIR}/${P}-gsettings-data-convert-paths.patch"
88 +
89 + gnome2_src_prepare
90 +}
91 +
92 +multilib_src_configure() {
93 + ECONF_SOURCE=${S} \
94 + gnome2_src_configure \
95 + --disable-static \
96 + --enable-gsettings-backend \
97 + --with-gtk=3.0 \
98 + --disable-orbit \
99 + $(multilib_native_use_enable introspection) \
100 + $(use_with ldap openldap) \
101 + $(multilib_native_use_enable policykit defaults-service)
102 +
103 + if multilib_is_native_abi; then
104 + ln -s "${S}"/doc/gconf/html doc/gconf/html || die
105 + fi
106 +}
107 +
108 +multilib_src_install() {
109 + gnome2_src_install
110 +}
111 +
112 +multilib_src_install_all() {
113 + python_replicate_script "${ED}"/usr/bin/gsettings-schema-convert
114 +
115 + keepdir /etc/gconf/gconf.xml.mandatory
116 + keepdir /etc/gconf/gconf.xml.defaults
117 + # Make sure this directory exists, bug #268070, upstream #572027
118 + keepdir /etc/gconf/gconf.xml.system
119 +
120 + echo "CONFIG_PROTECT_MASK=\"/etc/gconf\"" > 50gconf
121 + echo 'GSETTINGS_BACKEND="gconf"' >> 50gconf
122 + doenvd 50gconf
123 + dodir /root/.gconfd
124 +}
125 +
126 +pkg_preinst() {
127 + kill_gconf
128 + gnome2_pkg_preinst
129 +}
130 +
131 +pkg_postinst() {
132 + kill_gconf
133 +
134 + gnome2_pkg_postinst
135 +
136 + multilib_pkg_postinst() {
137 + gnome2_giomodule_cache_update \
138 + || die "Update GIO modules cache failed (for ${ABI})"
139 + }
140 + multilib_foreach_abi multilib_pkg_postinst
141 +
142 + # change the permissions to avoid some gconf bugs
143 + einfo "changing permissions for gconf dirs"
144 + find "${EPREFIX}"/etc/gconf/ -type d -exec chmod ugo+rx "{}" \;
145 +
146 + einfo "changing permissions for gconf files"
147 + find "${EPREFIX}"/etc/gconf/ -type f -exec chmod ugo+r "{}" \;
148 +}
149 +
150 +pkg_postrm() {
151 + gnome2_pkg_postrm
152 +
153 + multilib_pkg_postrm() {
154 + gnome2_giomodule_cache_update \
155 + || die "Update GIO modules cache failed (for ${ABI})"
156 + }
157 + multilib_foreach_abi multilib_pkg_postrm
158 +}
159 +
160 +kill_gconf() {
161 + # This function will kill all running gconfd-2 that could be causing troubles
162 + if [ -x "${EPREFIX}"/usr/bin/gconftool-2 ]
163 + then
164 + "${EPREFIX}"/usr/bin/gconftool-2 --shutdown
165 + fi
166 +
167 + return 0
168 +}