gnome-shell/gnome-shell-linking.patch

46 lines
1.7 KiB
Diff

From 1819d1fdadcf51a0443598a802b1a0eb46e6c7ee Mon Sep 17 00:00:00 2001
From: Dominique Leuenberger <dimstar@opensuse.org>
Date: Wed, 13 Jul 2016 18:03:58 +0200
Subject: [PATCH] build: Add necessary rpath to the private gnome-shell
libraries
Since mutter cloned some libraries (cogl, clutter) and installs them
in a private directory, gnome-shell's libraries need to have information
where to load them from.
This is done using -rpath, but as libtool does not like multiple -rpath
in the command line (and it adds one on its own for linking our own libs)
we pass the 'libtool' variant for -rpath: -R
The linking / runtime issue only surfaces when users/distros build using
-Wl,--as-needed. Otherwise some of the parent libs seem to pull in the
needed rpath as well.
---
src/Makefile.am | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/Makefile.am b/src/Makefile.am
index e9aacfe..1e59b23 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -321,14 +321,14 @@ libgnome_shell_libadd = \
gvc/libgvc.la \
$(NULL)
-libgnome_shell_menu_la_LDFLAGS = $(libgnome_shell_ldflags)
+libgnome_shell_menu_la_LDFLAGS = $(libgnome_shell_ldflags) -R$(MUTTER_TYPELIB_DIR)
libgnome_shell_menu_la_LIBADD = $(GNOME_SHELL_LIBS)
libgnome_shell_menu_la_CPPFLAGS = $(GNOME_SHELL_CFLAGS)
libgnome_shell_base_la_LIBADD = $(libgnome_shell_libadd)
libgnome_shell_base_la_CPPFLAGS = $(gnome_shell_cflags)
-libgnome_shell_la_LDFLAGS = $(libgnome_shell_ldflags)
+libgnome_shell_la_LDFLAGS = $(libgnome_shell_ldflags) -R$(MUTTER_TYPELIB_DIR)
libgnome_shell_la_LIBADD = $(GNOME_SHELL_LIBS) $(MUTTER_LIBS) libgnome-shell-base.la
libgnome_shell_la_CPPFLAGS = $(MUTTER_CFLAGS) $(gnome_shell_cflags)
--
2.9.0