Accepting request 116294 from home:dimstar:branches:GNOME:Factory
Hack to get extensions work... OBS-URL: https://build.opensuse.org/request/show/116294 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gnome-shell?expand=0&rev=112
This commit is contained in:
parent
ea8ab48f51
commit
34c0df51cd
77
gnome-shell-load-ext.patch
Normal file
77
gnome-shell-load-ext.patch
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
From 73f565d27166420bbf4a7bb49a30ea5bf5d98566 Mon Sep 17 00:00:00 2001
|
||||||
|
From: "Owen W. Taylor" <otaylor@fishsoup.net>
|
||||||
|
Date: Wed, 4 Apr 2012 17:48:47 -0400
|
||||||
|
Subject: [PATCH] Link the gnome-shell binary to libgnome-shell-js.so
|
||||||
|
|
||||||
|
Depending on the exact linker options and versions, rpath's written
|
||||||
|
into the binary may, or may not, be honored by dlopen(). Work around
|
||||||
|
this by simply linking the gnome-shell binary to gnome-shell-js, since
|
||||||
|
then dlopen() doesn't need to search paths.
|
||||||
|
|
||||||
|
https://bugzilla.gnome.org/show_bug.cgi?id=670477
|
||||||
|
---
|
||||||
|
src/Makefile.am | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/src/Makefile.am b/src/Makefile.am
|
||||||
|
index 95f1a41..7bafb6a 100644
|
||||||
|
--- a/src/Makefile.am
|
||||||
|
+++ b/src/Makefile.am
|
||||||
|
@@ -187,7 +187,7 @@ libgnome_shell_la_gir_sources = \
|
||||||
|
gnome_shell_real_SOURCES = \
|
||||||
|
main.c
|
||||||
|
gnome_shell_real_CPPFLAGS = $(gnome_shell_cflags)
|
||||||
|
-gnome_shell_real_LDADD = libgnome-shell.la $(libgnome_shell_la_LIBADD)
|
||||||
|
+gnome_shell_real_LDADD = libgnome-shell.la libgnome-shell-js.la $(libgnome_shell_la_LIBADD)
|
||||||
|
gnome_shell_real_DEPENDENCIES = libgnome-shell.la
|
||||||
|
|
||||||
|
EXTRA_DIST += test-gapplication.js
|
||||||
|
--
|
||||||
|
1.7.9.3
|
||||||
|
|
||||||
|
From 4d33ab1a50fa0a61554f4715fc035ea441db8350 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Alexandre Rostovtsev <tetromino@gentoo.org>
|
||||||
|
Date: Fri, 6 Apr 2012 14:00:48 -0400
|
||||||
|
Subject: [PATCH] Prevent the link to libgnome-shell-js.so from being removed
|
||||||
|
|
||||||
|
Add a dummy call to shell_js_add_extension_importer() to ensure that the
|
||||||
|
link to libgnome-shell-js.so is not removed when using -Wl,--as-needed,
|
||||||
|
which is the default on many distros.
|
||||||
|
---
|
||||||
|
src/main.c | 15 +++++++++++++++
|
||||||
|
1 files changed, 15 insertions(+), 0 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/main.c b/src/main.c
|
||||||
|
index bac9524..a6fb8f6 100644
|
||||||
|
--- a/src/main.c
|
||||||
|
+++ b/src/main.c
|
||||||
|
@@ -24,6 +24,7 @@
|
||||||
|
#include "shell-a11y.h"
|
||||||
|
#include "shell-global.h"
|
||||||
|
#include "shell-global-private.h"
|
||||||
|
+#include "shell-js.h"
|
||||||
|
#include "shell-perf-log.h"
|
||||||
|
#include "st.h"
|
||||||
|
|
||||||
|
@@ -342,3 +343,17 @@ main (int argc, char **argv)
|
||||||
|
|
||||||
|
return ecode;
|
||||||
|
}
|
||||||
|
+
|
||||||
|
+/* HACK:
|
||||||
|
+ Add a dummy function that calls into libgnome-shell-js.so to ensure it's
|
||||||
|
+ linked to /usr/bin/gnome-shell even when linking with --as-needed.
|
||||||
|
+ This function is never actually called.
|
||||||
|
+ https://bugzilla.gnome.org/show_bug.cgi?id=670477
|
||||||
|
+*/
|
||||||
|
+
|
||||||
|
+void
|
||||||
|
+_shell_link_to_shell_js (void)
|
||||||
|
+{
|
||||||
|
+ shell_js_add_extension_importer (NULL, NULL, NULL, NULL);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
--
|
||||||
|
1.7.8.5
|
||||||
|
|
||||||
|
|
@ -1,3 +1,14 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed May 2 05:59:51 UTC 2012 - dimstar@opensuse.org
|
||||||
|
|
||||||
|
- Add gnome-shell-link-ext.patch: Link libgnome-shell-js.so into
|
||||||
|
gnome-shell binary to ensure it the typelib can be loaded. This
|
||||||
|
is rather hacky, but as the .typelib is interfaced and loads
|
||||||
|
libs from non-standard folders this fails badly (bnc#755862,
|
||||||
|
bgo#670477).
|
||||||
|
- Add gnome-common BuildRequires and call to gnome-autogen.sh, as
|
||||||
|
above patch touches the build system.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed Apr 18 07:37:51 UTC 2012 - vuntz@opensuse.org
|
Wed Apr 18 07:37:51 UTC 2012 - vuntz@opensuse.org
|
||||||
|
|
||||||
|
@ -24,6 +24,10 @@ License: GPL-2.0+
|
|||||||
Group: System/GUI/GNOME
|
Group: System/GUI/GNOME
|
||||||
Url: http://live.gnome.org/GnomeShell
|
Url: http://live.gnome.org/GnomeShell
|
||||||
Source: http://download.gnome.org/sources/gnome-shell/3.4/%{name}-%{version}.tar.xz
|
Source: http://download.gnome.org/sources/gnome-shell/3.4/%{name}-%{version}.tar.xz
|
||||||
|
# PATCH-FIX-OPENSUSE gnome-shell-load-ext.patch bnc#755862 bgo#670477 dimstar@opensuse.org - Ensure libgnome-shell-js.so is linked to gnome-shell. Upstream considers this not a bug.
|
||||||
|
Patch0: gnome-shell-load-ext.patch
|
||||||
|
# Needed by patch0
|
||||||
|
BuildRequires: gnome-common
|
||||||
BuildRequires: intltool
|
BuildRequires: intltool
|
||||||
BuildRequires: translation-update-upstream
|
BuildRequires: translation-update-upstream
|
||||||
BuildRequires: update-desktop-files
|
BuildRequires: update-desktop-files
|
||||||
@ -124,9 +128,12 @@ to enable, disable and install them.
|
|||||||
%lang_package
|
%lang_package
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
|
%patch0 -p1
|
||||||
translation-update-upstream
|
translation-update-upstream
|
||||||
|
|
||||||
%build
|
%build
|
||||||
|
# Needed by patch0
|
||||||
|
NOCONFIGURE=1 gnome-autogen.sh
|
||||||
export BROWSER_PLUGIN_DIR=%{_libdir}/browser-plugins
|
export BROWSER_PLUGIN_DIR=%{_libdir}/browser-plugins
|
||||||
%configure \
|
%configure \
|
||||||
--disable-static \
|
--disable-static \
|
||||||
|
Loading…
x
Reference in New Issue
Block a user