Gentoo Archives: gentoo-commits

From: Mart Raudsepp <leio@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: gnome-base/dconf/, gnome-base/dconf/files/
Date: Fri, 22 Feb 2019 20:35:20
Message-Id: 1550867380.3b87f3b55d29b4488ae58c1e108a1e568db029df.leio@gentoo
1 commit: 3b87f3b55d29b4488ae58c1e108a1e568db029df
2 Author: Mart Raudsepp <leio <AT> gentoo <DOT> org>
3 AuthorDate: Fri Feb 22 20:24:54 2019 +0000
4 Commit: Mart Raudsepp <leio <AT> gentoo <DOT> org>
5 CommitDate: Fri Feb 22 20:29:40 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3b87f3b5
7
8 gnome-base/dconf: bump to 0.30.1
9
10 Package-Manager: Portage-2.3.52, Repoman-2.3.12
11 Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>
12
13 gnome-base/dconf/Manifest | 1 +
14 gnome-base/dconf/dconf-0.30.1.ebuild | 81 ++++++++++++++++++++++
15 .../dconf/files/0.30.1-bash-completion-dir.patch | 62 +++++++++++++++++
16 3 files changed, 144 insertions(+)
17
18 diff --git a/gnome-base/dconf/Manifest b/gnome-base/dconf/Manifest
19 index 9cfe69f5aaf..62d2bd9733b 100644
20 --- a/gnome-base/dconf/Manifest
21 +++ b/gnome-base/dconf/Manifest
22 @@ -1 +1,2 @@
23 DIST dconf-0.26.1.tar.xz 218516 BLAKE2B ddb23a1f6519b5460903b1a91ba48242f144a768f7ec5b9e82953589474df998061a4fbfb3605027cb51db44f7e49f88c774a735600de2bedaf8889b58e050bc SHA512 4d2b4afce189e448e3bd4e9c2f9d3d5eec6c694748aec87a9a8de047296c858772a5234dbcace8e84d99c5378d2d1ba35cafb5e5ea7efca25c10a53a55b8b6da
24 +DIST dconf-0.30.1.tar.xz 104376 BLAKE2B c5a90c092b6e028dafbc9aee2f29f622dc4a696e815266355de4a056fe507b0cca9eaa9b10753501ee44f74ee57d0095fd55aafc7205ffea1f0321ed705dbe0b SHA512 f7d136aec7cb75b64c7d9446d520f4c4af368e6d22346b7bb8ad66c08afaa03a72aacd44016dae7690e37b7d0deb9a16187445db176427a12a8b3cd3885c9e03
25
26 diff --git a/gnome-base/dconf/dconf-0.30.1.ebuild b/gnome-base/dconf/dconf-0.30.1.ebuild
27 new file mode 100644
28 index 00000000000..2ea6d382253
29 --- /dev/null
30 +++ b/gnome-base/dconf/dconf-0.30.1.ebuild
31 @@ -0,0 +1,81 @@
32 +# Copyright 1999-2019 Gentoo Authors
33 +# Distributed under the terms of the GNU General Public License v2
34 +
35 +EAPI=6
36 +inherit bash-completion-r1 gnome.org gnome2-utils meson vala virtualx xdg
37 +
38 +DESCRIPTION="Simple low-level configuration system"
39 +HOMEPAGE="https://wiki.gnome.org/Projects/dconf"
40 +
41 +LICENSE="LGPL-2.1+"
42 +SLOT="0"
43 +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-linux"
44 +IUSE="gtk-doc"
45 +
46 +RDEPEND="
47 + >=dev-libs/glib-2.44.0:2
48 + sys-apps/dbus
49 +"
50 +DEPEND="${RDEPEND}
51 + $(vala_depend)
52 + app-text/docbook-xml-dtd:4.2
53 + app-text/docbook-xsl-stylesheets
54 + dev-libs/libxslt
55 + dev-util/gdbus-codegen
56 + gtk-doc? ( >=dev-util/gtk-doc-1.15 )
57 + >=sys-devel/gettext-0.19.8
58 + virtual/pkgconfig
59 +"
60 +
61 +PATCHES=(
62 + "${FILESDIR}"/${PV}-bash-completion-dir.patch
63 +)
64 +
65 +src_prepare() {
66 + xdg_src_prepare
67 + vala_src_prepare
68 +}
69 +
70 +src_configure() {
71 + local emesonargs=(
72 + -Dbash_completion_dir="$(get_bashcompdir)"
73 + -Dman=true
74 + $(meson_use gtk-doc gtk_doc)
75 + )
76 + meson_src_configure
77 +}
78 +
79 +src_test() {
80 + virtx meson_src_test
81 +}
82 +
83 +src_install() {
84 + meson_src_install
85 +
86 + # GSettings backend may be one of: memory, gconf, dconf
87 + # Only dconf is really considered functional by upstream
88 + # must have it enabled over gconf if both are installed
89 + echo 'CONFIG_PROTECT_MASK="/etc/dconf"' >> 51dconf
90 + echo 'GSETTINGS_BACKEND="dconf"' >> 51dconf
91 + doenvd 51dconf
92 +}
93 +
94 +pkg_postinst() {
95 + xdg_pkg_postinst
96 + gnome2_giomodule_cache_update
97 +
98 + # Kill existing dconf-service processes as recommended by upstream due to
99 + # possible changes in the dconf private dbus API.
100 + # dconf-service will be dbus-activated on next use.
101 + pids=$(pgrep -x dconf-service)
102 + if [[ $? == 0 ]]; then
103 + ebegin "Stopping dconf-service; it will automatically restart on demand"
104 + kill ${pids}
105 + eend $?
106 + fi
107 +}
108 +
109 +pkg_postrm() {
110 + xdg_pkg_postrm
111 + gnome2_giomodule_cache_update
112 +}
113
114 diff --git a/gnome-base/dconf/files/0.30.1-bash-completion-dir.patch b/gnome-base/dconf/files/0.30.1-bash-completion-dir.patch
115 new file mode 100644
116 index 00000000000..5d256f7efec
117 --- /dev/null
118 +++ b/gnome-base/dconf/files/0.30.1-bash-completion-dir.patch
119 @@ -0,0 +1,62 @@
120 +From 012b92b115ed96cc66818adbd31557765078be65 Mon Sep 17 00:00:00 2001
121 +From: Mart Raudsepp <leio@g.o>
122 +Date: Fri, 22 Feb 2019 22:06:18 +0200
123 +Subject: [PATCH] build: Allow passing bash-completion dir and have a generic
124 + fallback
125 +
126 +With autotools the installation path was just hardcoded to the usual
127 +location. In meson it was made to always check the path from
128 +bash-completion.pc, but some downstream might want to install the
129 +file without a bash-completion build-dep. Allow installing the
130 +completion file to a passed directory, and add back the fallback
131 +path if an explicit directory isn't passed and bash-completion
132 +package isn't found. This is also what the tracker project does.
133 +---
134 + meson.build | 20 ++++++++++++++++----
135 + meson_options.txt | 2 +-
136 + 2 files changed, 17 insertions(+), 5 deletions(-)
137 +
138 +diff --git a/meson.build b/meson.build
139 +index aa87823..a74d5c7 100644
140 +--- a/meson.build
141 ++++ b/meson.build
142 +@@ -48,10 +48,22 @@ glib_dep = dependency('glib-2.0', version: '>= 2.44.0')
143 + gio_module_dir = gio_dep.get_pkgconfig_variable('giomoduledir', define_variable: ['libdir', dconf_libdir])
144 + dbus_session_service_dir = dependency('dbus-1').get_pkgconfig_variable('session_bus_services_dir', define_variable: ['datadir', dconf_datadir])
145 +
146 +-enable_bash_completion = get_option('bash_completion')
147 +-if enable_bash_completion
148 +- # FIXME: the `.pc` file is wrong because `completionsdir` should be relative to `datadir`, not `prefix`
149 +- completions_dir = dependency('bash-completion').get_pkgconfig_variable('completionsdir', define_variable: ['prefix', dconf_prefix])
150 ++enable_bash_completion = false
151 ++if get_option('bash_completion_dir') == 'yes' or get_option('bash_completion_dir') == 'auto'
152 ++ bash_completion_package = dependency('bash-completion', required: false)
153 ++ if bash_completion_package.found()
154 ++ # FIXME: the `.pc` file is wrong because `completionsdir` should be relative to `datadir`, not `prefix`
155 ++ completions_dir = bash_completion_package.get_pkgconfig_variable('completionsdir',
156 ++ define_variable: [ 'prefix', dconf_prefix ])
157 ++ else
158 ++ completions_dir = join_paths(dconf_datadir, 'bash-completion', 'completions')
159 ++ endif
160 ++ enable_bash_completion = true
161 ++elif get_option('bash_completion_dir') == 'no' or get_option('bash_completion_dir') == ''
162 ++ enable_bash_completion = false
163 ++else
164 ++ enable_bash_completion = true
165 ++ completions_dir = get_option('bash_completion_dir')
166 + endif
167 +
168 + configure_file(
169 +diff --git a/meson_options.txt b/meson_options.txt
170 +index a2794ce..3ac4ede 100644
171 +--- a/meson_options.txt
172 ++++ b/meson_options.txt
173 +@@ -1,4 +1,4 @@
174 +-option('bash_completion', type: 'boolean', value: true, description: 'install bash completion files')
175 ++option('bash_completion_dir', type: 'string', value: 'yes', description: 'directory to install Bash completion files (or "yes" for default directory, "no" to disable installation)')
176 + option('man', type: 'boolean', value: true, description: 'generate man pages')
177 + option('gtk_doc', type: 'boolean', value: false, description: 'use gtk-doc to build documentation')
178 + option('vapi', type: 'boolean', value: true, description: 'install dconf client vapi')
179 +--
180 +2.17.0
181 +