summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGilles Dartiguelongue <eva@gentoo.org>2009-11-02 21:52:22 +0000
committerGilles Dartiguelongue <eva@gentoo.org>2009-11-02 21:52:22 +0000
commit17750c1c647687b7862f50dfdd070f85b1bf0956 (patch)
treedf3555066efd2a894973261c8fc2af47a1273ab1
parentVersion bump KDE 4.3.3 (diff)
downloadgentoo-2-17750c1c647687b7862f50dfdd070f85b1bf0956.tar.gz
gentoo-2-17750c1c647687b7862f50dfdd070f85b1bf0956.tar.bz2
gentoo-2-17750c1c647687b7862f50dfdd070f85b1bf0956.zip
New version for GNOME 2.28.
(Portage version: 2.2_rc48/cvs/Linux x86_64)
-rw-r--r--gnome-base/gnome-panel/ChangeLog10
-rw-r--r--gnome-base/gnome-panel/files/gnome-panel-2.28.0-clock-applet-missing-cflags.patch24
-rw-r--r--gnome-base/gnome-panel/files/gnome-panel-2.28.0-crashes-xrandr.patch79
-rw-r--r--gnome-base/gnome-panel/gnome-panel-2.28.0.ebuild (renamed from gnome-base/gnome-panel/gnome-panel-2.26.2.ebuild)50
4 files changed, 132 insertions, 31 deletions
diff --git a/gnome-base/gnome-panel/ChangeLog b/gnome-base/gnome-panel/ChangeLog
index 7b17a79b6a21..26da86816478 100644
--- a/gnome-base/gnome-panel/ChangeLog
+++ b/gnome-base/gnome-panel/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for gnome-base/gnome-panel
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/gnome-base/gnome-panel/ChangeLog,v 1.286 2009/10/24 16:52:50 nixnut Exp $
+# $Header: /var/cvsroot/gentoo-x86/gnome-base/gnome-panel/ChangeLog,v 1.287 2009/11/02 21:52:22 eva Exp $
+
+*gnome-panel-2.28.0 (02 Nov 2009)
+
+ 02 Nov 2009; Gilles Dartiguelongue <eva@gentoo.org>
+ -gnome-panel-2.26.2.ebuild, +gnome-panel-2.28.0.ebuild,
+ +files/gnome-panel-2.28.0-clock-applet-missing-cflags.patch,
+ +files/gnome-panel-2.28.0-crashes-xrandr.patch:
+ New version for GNOME 2.28.
24 Oct 2009; nixnut <nixnut@gentoo.org> gnome-panel-2.26.3.ebuild:
ppc stable #281427
diff --git a/gnome-base/gnome-panel/files/gnome-panel-2.28.0-clock-applet-missing-cflags.patch b/gnome-base/gnome-panel/files/gnome-panel-2.28.0-clock-applet-missing-cflags.patch
new file mode 100644
index 000000000000..ccfd3f5899c9
--- /dev/null
+++ b/gnome-base/gnome-panel/files/gnome-panel-2.28.0-clock-applet-missing-cflags.patch
@@ -0,0 +1,24 @@
+From a2cb0e91f58b22832f4efc51acf1d1dd3efb6969 Mon Sep 17 00:00:00 2001
+From: Maxim Britov <maxim@office.modum.by>
+Date: Tue, 6 Oct 2009 19:16:51 +0200
+Subject: [PATCH] Fix missing $(PANEL_CFLAGS) for clock applet
+
+---
+ applets/clock/Makefile.am | 1 +
+ 1 files changed, 1 insertions(+), 0 deletions(-)
+
+diff --git a/applets/clock/Makefile.am b/applets/clock/Makefile.am
+index da5e0d9..a9b95f9 100644
+--- a/applets/clock/Makefile.am
++++ b/applets/clock/Makefile.am
+@@ -8,6 +8,7 @@ INCLUDES = \
+ $(WARN_CFLAGS) \
+ $(CLOCK_CFLAGS) \
+ $(POLKIT_CFLAGS) \
++ $(PANEL_CFLAGS) \
+ $(LIBPANEL_APPLET_CFLAGS) \
+ -DDATADIR=\""$(datadir)"\" \
+ -DBUILDERDIR=\""$(uidir)"\" \
+--
+1.6.5.rc2
+
diff --git a/gnome-base/gnome-panel/files/gnome-panel-2.28.0-crashes-xrandr.patch b/gnome-base/gnome-panel/files/gnome-panel-2.28.0-crashes-xrandr.patch
new file mode 100644
index 000000000000..3e72ee7c94fc
--- /dev/null
+++ b/gnome-base/gnome-panel/files/gnome-panel-2.28.0-crashes-xrandr.patch
@@ -0,0 +1,79 @@
+From 66b8e290bd0b767183cba583917907940b5b425a Mon Sep 17 00:00:00 2001
+From: Vincent Untz <vuntz@gnome.org>
+Date: Tue, 06 Oct 2009 10:47:52 +0000
+Subject: [panel] Fix crashes in various conditions with the new randr code
+
+If nothing had probed the randr screen resources before us and the X
+server is supporting randr 1.3, then we got no output, and therefore no
+monitor. The fix here is to actively probe for resources if we detect
+this case. See https://bugzilla.gnome.org/show_bug.cgi?id=597101
+
+Also, in some cases, all outputs appear disconnected. See
+https://bugzilla.novell.com/show_bug.cgi?id=543876
+
+To be completely on the safe side, if we get no monitor information from
+randr, even if it is successful, we fallback to the GTK+ method.
+---
+diff --git a/gnome-panel/panel-multiscreen.c b/gnome-panel/panel-multiscreen.c
+index 8a05221..4ed76ae 100644
+--- a/gnome-panel/panel-multiscreen.c
++++ b/gnome-panel/panel-multiscreen.c
+@@ -136,9 +136,17 @@ panel_multiscreen_get_randr_monitors_for_screen (GdkScreen *screen,
+ xroot = GDK_WINDOW_XWINDOW (gdk_screen_get_root_window (screen));
+
+ #if (RANDR_MAJOR > 1 || (RANDR_MAJOR == 1 && RANDR_MINOR >= 3))
+- if (have_randr_1_3)
++ if (have_randr_1_3) {
+ resources = XRRGetScreenResourcesCurrent (xdisplay, xroot);
+- else
++ if (resources->noutput == 0) {
++ /* This might happen if nothing tried to get randr
++ * resources from the server before, so we need an
++ * active probe. See comment #27 in
++ * https://bugzilla.gnome.org/show_bug.cgi?id=597101 */
++ XRRFreeScreenResources (resources);
++ resources = XRRGetScreenResources (xdisplay, xroot);
++ }
++ } else
+ resources = XRRGetScreenResources (xdisplay, xroot);
+ #else
+ resources = XRRGetScreenResources (xdisplay, xroot);
+@@ -205,6 +213,17 @@ panel_multiscreen_get_randr_monitors_for_screen (GdkScreen *screen,
+ return FALSE;
+ }
+
++ if (geometries->len == 0) {
++ /* This can happen in at least one case:
++ * https://bugzilla.novell.com/show_bug.cgi?id=543876 where all
++ * monitors appear disconnected (possibly because the screen
++ * is behing a KVM switch) -- see comment #8.
++ * There might be other cases too, so we stay on the safe side.
++ */
++ g_array_free (geometries, TRUE);
++ return FALSE;
++ }
++
+ *monitors_ret = geometries->len;
+ *geometries_ret = (GdkRectangle *) g_array_free (geometries, FALSE);
+
+@@ -238,9 +257,15 @@ panel_multiscreen_get_raw_monitors_for_screen (GdkScreen *screen,
+ int *monitors_ret,
+ GdkRectangle **geometries_ret)
+ {
+- if (panel_multiscreen_get_randr_monitors_for_screen (screen,
+- monitors_ret,
+- geometries_ret))
++ gboolean res;
++
++ *monitors_ret = 0;
++ *geometries_ret = NULL;
++
++ res = panel_multiscreen_get_randr_monitors_for_screen (screen,
++ monitors_ret,
++ geometries_ret);
++ if (res && *monitors_ret > 0)
+ return;
+
+ panel_multiscreen_get_gdk_monitors_for_screen (screen,
+--
+cgit v0.8.2
diff --git a/gnome-base/gnome-panel/gnome-panel-2.26.2.ebuild b/gnome-base/gnome-panel/gnome-panel-2.28.0.ebuild
index bb8cba24dd23..46b0439aaacb 100644
--- a/gnome-base/gnome-panel/gnome-panel-2.26.2.ebuild
+++ b/gnome-base/gnome-panel/gnome-panel-2.28.0.ebuild
@@ -1,50 +1,44 @@
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/gnome-base/gnome-panel/gnome-panel-2.26.2.ebuild,v 1.2 2009/06/03 23:09:10 eva Exp $
+# $Header: /var/cvsroot/gentoo-x86/gnome-base/gnome-panel/gnome-panel-2.28.0.ebuild,v 1.1 2009/11/02 21:52:22 eva Exp $
EAPI="2"
GCONF_DEBUG="no"
inherit autotools eutils gnome2
-MY_P="${PN}-2.24.2"
-MY_P_PO="${PN}-2.26.1"
DESCRIPTION="The GNOME panel"
HOMEPAGE="http://www.gnome.org/"
-SRC_URI="${SRC_URI}
- mirror://gentoo/${MY_P}-logout+po.tar.bz2
- mirror://gentoo/${MY_P_PO}-po.patch.bz2"
LICENSE="GPL-2 FDL-1.1 LGPL-2"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
+KEYWORDS="~amd64 ~sh ~x86 ~x86-fbsd"
IUSE="doc eds networkmanager policykit"
-RDEPEND=">=gnome-base/gnome-desktop-2.24.0
+RDEPEND="dev-lang/python
+ >=gnome-base/gnome-desktop-2.26.0
>=x11-libs/pango-1.15.4
>=dev-libs/glib-2.18.0
>=x11-libs/gtk+-2.15.1
- >=dev-libs/libgweather-2.24.1
+ >=dev-libs/libgweather-2.27.90
dev-libs/libxml2
- >=gnome-base/libglade-2.5
>=gnome-base/libgnome-2.13
>=gnome-base/libgnomeui-2.5.4
>=gnome-base/libbonoboui-2.1.1
>=gnome-base/orbit-2.4
>=x11-libs/libwnck-2.19.5
>=gnome-base/gconf-2.6.1
- >=gnome-base/gnome-menus-2.11.1
+ >=gnome-base/gnome-menus-2.27.92
>=gnome-base/libbonobo-2.20.4
gnome-base/librsvg
>=dev-libs/dbus-glib-0.71
>=sys-apps/dbus-1.1.2
+ >=x11-libs/cairo-1
x11-libs/libXau
- >=x11-libs/cairo-1.0.0
+ >=x11-libs/libXrandr-1.2
eds? ( >=gnome-extra/evolution-data-server-1.6 )
networkmanager? ( >=net-misc/networkmanager-0.6 )
- policykit? (
- >=sys-auth/policykit-0.7
- >=gnome-extra/policykit-gnome-0.7 )"
+ policykit? ( >=sys-auth/polkit-0.91 )"
DEPEND="${RDEPEND}
>=dev-lang/perl-5
gnome-base/gnome-common
@@ -52,13 +46,14 @@ DEPEND="${RDEPEND}
>=dev-util/pkgconfig-0.9
>=dev-util/intltool-0.40
~app-text/docbook-xml-dtd-4.1.2
- >=dev-util/gtk-doc-am-1
+ dev-util/gtk-doc-am
doc? ( >=dev-util/gtk-doc-1 )"
DOCS="AUTHORS ChangeLog HACKING NEWS README"
pkg_setup() {
G2CONF="${G2CONF}
+ --disable-static
--disable-scrollkeeper
--disable-schemas-install
--with-in-process-applets=clock,notification-area,wncklet
@@ -70,19 +65,6 @@ pkg_setup() {
src_prepare() {
gnome2_src_prepare
- # Allow logout/shutdown without gnome-session 2.24, bug #246170
- epatch "${WORKDIR}/${MY_P}-logout.patch"
- epatch "${WORKDIR}/${MY_P_PO}-po.patch"
- echo "gnome-panel/panel-logout.c" >> po/POTFILES.in
-
- # Fixes build on BSD, bug #256859
- epatch "${FILESDIR}/${PN}-2.24.3-daylight.patch"
-
- # Fixes shutdown without gdm, bug #259138
- epatch "${FILESDIR}/${PN}-2.24.3-shutdown.patch"
-
- intltoolize --force --copy --automake || die "intltoolize failed"
-
# FIXME: tarball generated with broken gtk-doc, revisit me.
if use doc; then
sed "/^TARGET_DIR/i \GTKDOC_REBASE=/usr/bin/gtkdoc-rebase" \
@@ -92,10 +74,18 @@ src_prepare() {
-i gtk-doc.make || die "sed 2 failed"
fi
+ # Fix missing cflags for clock applet, bug #287853
+ epatch "${FILESDIR}/${P}-clock-applet-missing-cflags.patch"
+
+ # Fix crashes in various conditions with the new randr code,
+ # import from upstream bug #597101
+ epatch "${FILESDIR}/${P}-crashes-xrandr.patch"
+
# Make it libtool-1 compatible, bug #271652
rm -v m4/lt* m4/libtool.m4 || die "removing libtool macros failed"
- AT_M4DIR="m4" eautoreconf
+ intltoolize --force --copy --automake || die "intltoolize failed"
+ eautoreconf
}
pkg_postinst() {