diff options
author | Mart Raudsepp <leio@gentoo.org> | 2017-03-19 14:21:33 +0200 |
---|---|---|
committer | Mart Raudsepp <leio@gentoo.org> | 2017-03-19 14:28:40 +0200 |
commit | 06947f025a4b40e8b9752df158bad875e72ea97a (patch) | |
tree | dce3c2e4a91cd22d54a9dd6f07ec647fc077f74b | |
parent | media-gfx/krita: Remove 3.1.2-r1 (diff) | |
download | gentoo-06947f025a4b40e8b9752df158bad875e72ea97a.tar.gz gentoo-06947f025a4b40e8b9752df158bad875e72ea97a.tar.bz2 gentoo-06947f025a4b40e8b9752df158bad875e72ea97a.zip |
gnome-base/gnome-control-center: fix build with USE=-wayland, always pull in keyboard layout display tool
Gentoo-bug: 539290
Gentoo-bug: 613192
3 files changed, 227 insertions, 0 deletions
diff --git a/gnome-base/gnome-control-center/files/3.22.2-fix-build-without-wayland.patch b/gnome-base/gnome-control-center/files/3.22.2-fix-build-without-wayland.patch new file mode 100644 index 000000000000..0895a743a715 --- /dev/null +++ b/gnome-base/gnome-control-center/files/3.22.2-fix-build-without-wayland.patch @@ -0,0 +1,35 @@ +From 4825881b129bdde0eaa5419ece6198ebda420825 Mon Sep 17 00:00:00 2001 +From: Ting-Wei Lan <lantw@src.gnome.org> +Date: Thu, 10 Nov 2016 22:27:11 +0800 +Subject: [PATCH 1/2] info: Fix build when Wayland is disabled + +https://bugzilla.gnome.org/show_bug.cgi?id=774324 +--- + panels/info/cc-info-panel.c | 11 +++++++++-- + 1 file changed, 9 insertions(+), 2 deletions(-) + +diff --git a/panels/info/cc-info-panel.c b/panels/info/cc-info-panel.c +index 4584766..1d596a3 100644 +--- a/panels/info/cc-info-panel.c ++++ b/panels/info/cc-info-panel.c +@@ -351,8 +351,15 @@ get_graphics_data (void) + display = gdk_display_get_default (); + + #if defined(GDK_WINDOWING_X11) || defined(GDK_WINDOWING_WAYLAND) +- if (GDK_IS_X11_DISPLAY (display) || +- GDK_IS_WAYLAND_DISPLAY (display)) ++ gboolean x11_or_wayland = FALSE; ++#ifdef GDK_WINDOWING_X11 ++ x11_or_wayland = GDK_IS_X11_DISPLAY (display); ++#endif ++#ifdef GDK_WINDOWING_WAYLAND ++ x11_or_wayland = x11_or_wayland || GDK_IS_WAYLAND_DISPLAY (display); ++#endif ++ ++ if (x11_or_wayland) + { + char *discrete_renderer = NULL; + char *renderer; +-- +2.10.1 + diff --git a/gnome-base/gnome-control-center/files/3.22.2-fix-dual-gpu-crash.patch b/gnome-base/gnome-control-center/files/3.22.2-fix-dual-gpu-crash.patch new file mode 100644 index 000000000000..a390477a4247 --- /dev/null +++ b/gnome-base/gnome-control-center/files/3.22.2-fix-dual-gpu-crash.patch @@ -0,0 +1,32 @@ +From 97e4d87ae8a123d5b1711ddbaba6bc0d3a0a39a8 Mon Sep 17 00:00:00 2001 +From: Ondrej Holy <oholy@redhat.com> +Date: Mon, 5 Dec 2016 10:15:12 +0100 +Subject: [PATCH 2/2] info: Do not crash if Renderer is not set by + SessionManager + +This regression has been introduced by commit 52da4da. The +info panel crashes if prettify_info() returns NULL. This happens +if Renderer property from SessionManager is empty. + +https://bugzilla.gnome.org/show_bug.cgi?id=774240 +--- + panels/info/info-cleanup.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/panels/info/info-cleanup.c b/panels/info/info-cleanup.c +index 20243ec..bb47493 100644 +--- a/panels/info/info-cleanup.c ++++ b/panels/info/info-cleanup.c +@@ -99,6 +99,9 @@ remove_duplicate_whitespace (const char *old) + GRegex *re; + GError *error; + ++ if (old == NULL) ++ return NULL; ++ + error = NULL; + re = g_regex_new ("[ \t\n\r]+", G_REGEX_MULTILINE, 0, &error); + if (re == NULL) +-- +2.10.1 + diff --git a/gnome-base/gnome-control-center/gnome-control-center-3.22.2-r1.ebuild b/gnome-base/gnome-control-center/gnome-control-center-3.22.2-r1.ebuild new file mode 100644 index 000000000000..8598049d5221 --- /dev/null +++ b/gnome-base/gnome-control-center/gnome-control-center-3.22.2-r1.ebuild @@ -0,0 +1,160 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +GNOME2_LA_PUNT="yes" +GNOME2_EAUTORECONF="yes" + +inherit bash-completion-r1 gnome2 + +DESCRIPTION="GNOME's main interface to configure various aspects of the desktop" +HOMEPAGE="https://git.gnome.org/browse/gnome-control-center/" + +LICENSE="GPL-2+" +SLOT="2" +IUSE="+bluetooth +colord +cups debug +gnome-online-accounts +ibus input_devices_wacom kerberos networkmanager v4l wayland" +KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sh ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x86-solaris" + +# False positives caused by nested configure scripts +QA_CONFIGURE_OPTIONS=".*" + +# gnome-session-2.91.6-r1 is needed so that 10-user-dirs-update is run at login +# g-s-d[policykit] needed for bug #403527 +# kerberos unfortunately means mit-krb5; build fails with heimdal +# udev could be made optional, only conditions gsd-device-panel +# (mouse, keyboards, touchscreen, etc) +COMMON_DEPEND=" + >=dev-libs/glib-2.44.0:2[dbus] + >=x11-libs/gdk-pixbuf-2.23.0:2 + >=x11-libs/gtk+-3.22.0:3[X,wayland?] + >=gnome-base/gsettings-desktop-schemas-3.21.4 + >=gnome-base/gnome-desktop-3.21.2:3= + >=gnome-base/gnome-settings-daemon-3.19.1[colord?,policykit] + + >=dev-libs/libpwquality-1.2.2 + dev-libs/libxml2:2 + gnome-base/libgtop:2= + media-libs/fontconfig + >=sys-apps/accountsservice-0.6.39 + + >=media-libs/libcanberra-0.13[gtk3] + >=media-sound/pulseaudio-2[glib] + >=sys-auth/polkit-0.97 + >=sys-power/upower-0.99:= + + virtual/libgudev + x11-apps/xmodmap + x11-libs/cairo + x11-libs/libX11 + x11-libs/libXxf86misc + >=x11-libs/libXi-1.2 + + bluetooth? ( >=net-wireless/gnome-bluetooth-3.18.2:= ) + colord? ( + net-libs/libsoup:2.4 + >=x11-misc/colord-0.1.34:0= + >=x11-libs/colord-gtk-0.1.24 ) + cups? ( + >=net-print/cups-1.4[dbus] + >=net-fs/samba-4.0.0[client] + ) + gnome-online-accounts? ( + >=media-libs/grilo-0.3.0:0.3= + >=net-libs/gnome-online-accounts-3.21.5:= ) + ibus? ( >=app-i18n/ibus-1.5.2 ) + kerberos? ( app-crypt/mit-krb5 ) + networkmanager? ( + >=gnome-extra/nm-applet-1.2.0 + >=net-misc/networkmanager-1.2.0:=[modemmanager] + >=net-misc/modemmanager-0.7.990 ) + v4l? ( + media-libs/clutter-gtk:1.0 + >=media-video/cheese-3.5.91 ) + input_devices_wacom? ( + >=dev-libs/libwacom-0.7 + >=media-libs/clutter-1.11.3:1.0 + media-libs/clutter-gtk:1.0 + >=x11-libs/libXi-1.2 ) +" +# <gnome-color-manager-3.1.2 has file collisions with g-c-c-3.1.x +# libgnomekbd needed only for gkbd-keyboard-display tool +# +# mouse panel needs a concrete set of X11 drivers at runtime, bug #580474 +# Also we need newer driver versions to allow wacom and libinput drivers to +# not collide +RDEPEND="${COMMON_DEPEND} + || ( >=sys-apps/systemd-31 ( app-admin/openrc-settingsd sys-auth/consolekit ) ) + x11-themes/adwaita-icon-theme + colord? ( >=gnome-extra/gnome-color-manager-3 ) + cups? ( + app-admin/system-config-printer + net-print/cups-pk-helper ) + input_devices_wacom? ( gnome-base/gnome-settings-daemon[input_devices_wacom] ) + >=gnome-base/libgnomekbd-3 + wayland? ( dev-libs/libinput ) + !wayland? ( + >=x11-drivers/xf86-input-libinput-0.19.0 + input_devices_wacom? ( >=x11-drivers/xf86-input-wacom-0.33.0 ) ) + + !<gnome-base/gdm-2.91.94 + !<gnome-extra/gnome-color-manager-3.1.2 + !gnome-extra/gnome-media[pulseaudio] + !<gnome-extra/gnome-media-2.32.0-r300 + !<net-wireless/gnome-bluetooth-3.3.2 +" +# PDEPEND to avoid circular dependency +PDEPEND=">=gnome-base/gnome-session-2.91.6-r1" + +DEPEND="${COMMON_DEPEND} + x11-proto/xproto + x11-proto/xf86miscproto + x11-proto/kbproto + + dev-libs/libxml2:2 + dev-libs/libxslt + >=dev-util/intltool-0.40.1 + >=sys-devel/gettext-0.17 + virtual/pkgconfig + + gnome-base/gnome-common + sys-devel/autoconf-archive +" +# Needed for autoreconf +# gnome-base/gnome-common +# sys-devel/autoconf-archive + +PATCHES=( + # From gnome-3-22 branch + "${FILESDIR}"/${PV}-fix-build-without-wayland.patch # bug 613192 + "${FILESDIR}"/${PV}-fix-dual-gpu-crash.patch + # Make some panels and dependencies optional; requires eautoreconf + # https://bugzilla.gnome.org/686840, 697478, 700145 + "${FILESDIR}"/${PN}-3.22.0-optional.patch + "${FILESDIR}"/${PN}-3.22.0-make-wayland-optional.patch + "${FILESDIR}"/${PN}-3.22.0-keep-panels-optional.patch + "${FILESDIR}"/${PN}-3.22.0-make-networkmanager-optional.patch + # Fix some absolute paths to be appropriate for Gentoo + "${FILESDIR}"/${PN}-3.22.0-gentoo-paths.patch +) + +src_configure() { + gnome2_src_configure \ + --disable-update-mimedb \ + --disable-static \ + --enable-documentation \ + $(use_enable bluetooth) \ + $(use_enable colord color) \ + $(use_enable cups) \ + $(usex debug --enable-debug=yes ' ') \ + $(use_enable gnome-online-accounts goa) \ + $(use_enable ibus) \ + $(use_enable kerberos) \ + $(use_enable networkmanager) \ + $(use_with v4l cheese) \ + $(use_enable input_devices_wacom wacom) \ + $(use_enable wayland) +} + +src_install() { + gnome2_src_install completiondir="$(get_bashcompdir)" +} |