forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
gnome-base/dconf: fix compat with meson-0.52
Closes: https://bugs.gentoo.org/698144 Package-Manager: Portage-2.3.69, Repoman-2.3.12 Signed-off-by: Mart Raudsepp <[email protected]>
- Loading branch information
Showing
2 changed files
with
118 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,83 @@ | ||
# Copyright 1999-2019 Gentoo Authors | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=7 | ||
inherit bash-completion-r1 gnome.org gnome2-utils meson virtualx xdg | ||
|
||
DESCRIPTION="Simple low-level configuration system" | ||
HOMEPAGE="https://wiki.gnome.org/Projects/dconf" | ||
|
||
LICENSE="LGPL-2.1+" | ||
SLOT="0" | ||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-linux" | ||
IUSE="gtk-doc" | ||
RESTRICT="!test? ( test )" # IUSE=test comes from virtualx.eclass | ||
|
||
RDEPEND=" | ||
>=dev-libs/glib-2.44.0:2 | ||
sys-apps/dbus | ||
" | ||
DEPEND="${RDEPEND}" | ||
BDEPEND=" | ||
app-text/docbook-xml-dtd:4.2 | ||
app-text/docbook-xsl-stylesheets | ||
dev-libs/libxslt | ||
dev-util/gdbus-codegen | ||
gtk-doc? ( >=dev-util/gtk-doc-1.15 ) | ||
>=sys-devel/gettext-0.19.8 | ||
virtual/pkgconfig | ||
" | ||
|
||
PATCHES=( | ||
"${FILESDIR}"/0.30.1-bash-completion-dir.patch | ||
"${FILESDIR}"/${PV}-drop-vapigen-dep.patch # .vapi/.deps are pregenerated, just install them without a vala dep | ||
"${FILESDIR}"/${PV}-meson-0.52-compat.patch # https://gitlab.gnome.org/GNOME/dconf/issues/59 | ||
) | ||
|
||
src_configure() { | ||
local emesonargs=( | ||
-Dbash_completion_dir="$(get_bashcompdir)" | ||
-Dman=true | ||
$(meson_use gtk-doc gtk_doc) | ||
-Dvapi=true | ||
) | ||
meson_src_configure | ||
} | ||
|
||
src_install() { | ||
meson_src_install | ||
|
||
# GSettings backend may be one of: memory, gconf, dconf | ||
# Only dconf is really considered functional by upstream | ||
# must have it enabled over gconf if both are installed | ||
# This snippet can't be removed until gconf package is | ||
# ensured to not install a /etc/env.d/50gconf and then | ||
# still consider the CONFIG_PROTECT_MASK bit. | ||
echo 'CONFIG_PROTECT_MASK="/etc/dconf"' >> 51dconf | ||
echo 'GSETTINGS_BACKEND="dconf"' >> 51dconf | ||
doenvd 51dconf | ||
} | ||
|
||
src_test() { | ||
virtx meson_src_test | ||
} | ||
|
||
pkg_postinst() { | ||
xdg_pkg_postinst | ||
gnome2_giomodule_cache_update | ||
|
||
# Kill existing dconf-service processes as recommended by upstream due to | ||
# possible changes in the dconf private dbus API. | ||
# dconf-service will be dbus-activated on next use. | ||
pids=$(pgrep -x dconf-service) | ||
if [[ $? == 0 ]]; then | ||
ebegin "Stopping dconf-service; it will automatically restart on demand" | ||
kill ${pids} | ||
eend $? | ||
fi | ||
} | ||
|
||
pkg_postrm() { | ||
xdg_pkg_postrm | ||
gnome2_giomodule_cache_update | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
From cc32667c5d7d9ff95e65cc21f59905d8f9218394 Mon Sep 17 00:00:00 2001 | ||
From: Diego Escalante Urrelo <[email protected]> | ||
Date: Thu, 31 Oct 2019 05:51:22 -0500 | ||
Subject: [PATCH] build: Update use of link_whole for meson-0.52 | ||
|
||
A regression in meson-0.52 caused uses of link_whole to expose scenarios | ||
where duplicate symbols issues could appear. In particular | ||
libdconf_client_dep was being link_whole'd to itself, which recursively | ||
already included libdconf_common which was also a link_whole. | ||
|
||
This change does not modify the available symbols in libdconf.so, and is | ||
compatible with meson-0.52 and 0.51. | ||
|
||
See: https://github.com/mesonbuild/meson/pull/6030 | ||
Fixes: https://gitlab.gnome.org/GNOME/dconf/issues/59 | ||
--- | ||
client/meson.build | 2 +- | ||
1 file changed, 1 insertion(+), 1 deletion(-) | ||
|
||
diff --git a/client/meson.build b/client/meson.build | ||
index f3b7122..de6387e 100644 | ||
--- a/client/meson.build | ||
+++ b/client/meson.build | ||
@@ -28,7 +28,7 @@ libdconf_client = static_library( | ||
|
||
libdconf_client_dep = declare_dependency( | ||
dependencies: gio_dep, | ||
- link_whole: libdconf_client, | ||
+ link_with: libdconf_client, | ||
) | ||
|
||
libdconf = shared_library( | ||
-- | ||
2.20.1 | ||
|