Add proposed patch to fix FTBFS with newer GLib versions

Closes: #964679
This commit is contained in:
Simon McVittie 2020-07-09 17:08:01 +01:00
parent 7ac5a4c3d9
commit df6191ce8a
4 changed files with 64 additions and 2 deletions

View File

@ -0,0 +1,61 @@
From: Simon McVittie <smcv@debian.org>
Date: Thu, 9 Jul 2020 16:57:42 +0100
Subject: build: Don't export GResource-related symbols with newer GLib
This makes the desired behaviour explicit, and matches the behaviour
seen with Meson, where "external : false" is the default.
Before GNOME/glib!1468, not passing --internal to the resource compiler
meant "no special export attribute, do what you would normally do",
so these symbols were not exported due to our global use of
-fvisibility=hidden.
However, since GNOME/glib!1468, not passing --internal to the resource
compiler results in the symbols being decorated with G_MODULE_EXPORT,
which overrides -fvisibility=hidden. This was necessary because Windows
DLLs normally behave a bit like the equivalent of ELF libraries with
-fvisibility=hidden.
Signed-off-by: Simon McVittie <smcv@debian.org>
Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/2919
Forwarded: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/2218
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=964679
---
gdk/Makefile.am | 4 ++--
gtk/Makefile.am | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/gdk/Makefile.am b/gdk/Makefile.am
index 3635864..3f915b6 100644
--- a/gdk/Makefile.am
+++ b/gdk/Makefile.am
@@ -491,10 +491,10 @@ resource_files = $(shell $(GLIB_COMPILE_RESOURCES) --sourcedir=$(srcdir) --gener
gdkresources.h: gdk.gresource.xml
$(AM_V_GEN) $(GLIB_COMPILE_RESOURCES) $< --target=$@ \
- --sourcedir=$(srcdir) --c-name _gdk --generate-header --manual-register
+ --sourcedir=$(srcdir) --c-name _gdk --generate-header --manual-register --internal
gdkresources.c: gdk.gresource.xml $(resource_files)
$(AM_V_GEN) $(GLIB_COMPILE_RESOURCES) $< --target=$@ \
- --sourcedir=$(srcdir) --c-name _gdk --generate-source --manual-register
+ --sourcedir=$(srcdir) --c-name _gdk --generate-source --manual-register --internal
# ------------------- MSVC Build Items ----------------
MSVCPROJS = gdk-3
diff --git a/gtk/Makefile.am b/gtk/Makefile.am
index 9559595..c703024 100644
--- a/gtk/Makefile.am
+++ b/gtk/Makefile.am
@@ -1421,10 +1421,10 @@ resource_files = $(shell $(GLIB_COMPILE_RESOURCES) --sourcedir=$(srcdir) --gener
gtkresources.h: gtk.gresource.xml
$(AM_V_GEN) $(GLIB_COMPILE_RESOURCES) $< \
- --target=$@ --sourcedir=$(srcdir) --c-name _gtk --generate-header --manual-register
+ --target=$@ --sourcedir=$(srcdir) --c-name _gtk --generate-header --manual-register --internal
gtkresources.c: gtk.gresource.xml $(resource_files)
$(AM_V_GEN) $(GLIB_COMPILE_RESOURCES) $< \
- --target=$@ --sourcedir=$(srcdir) --c-name _gtk --generate-source --manual-register
+ --target=$@ --sourcedir=$(srcdir) --c-name _gtk --generate-source --manual-register --internal
gtkprivatetypebuiltins.h: stamp-gtkprivatetypebuiltins.h
@true

View File

@ -17,7 +17,7 @@ Bug: https://gitlab.gnome.org/GNOME/gtk/issues/357
1 file changed, 6 insertions(+), 23 deletions(-)
diff --git a/gdk/Makefile.am b/gdk/Makefile.am
index 3635864..c40d0e3 100644
index 3f915b6..8672ea4 100644
--- a/gdk/Makefile.am
+++ b/gdk/Makefile.am
@@ -203,16 +203,8 @@ nodist_gdkinclude_HEADERS = gdkconfig.h gdkenumtypes.h gdkversionmacros.h

View File

@ -12,7 +12,7 @@ Bug: https://gitlab.gnome.org/GNOME/gtk/issues/357
1 file changed, 7 insertions(+), 8 deletions(-)
diff --git a/gtk/Makefile.am b/gtk/Makefile.am
index 9559595..94cb921 100644
index c703024..a5d40ed 100644
--- a/gtk/Makefile.am
+++ b/gtk/Makefile.am
@@ -554,7 +554,6 @@ gtk_private_h_sources = \

View File

@ -1,3 +1,4 @@
build-Don-t-export-GResource-related-symbols-with-newer-G.patch
updateiconcache-Sort-list-of-entries.patch
gdk-Don-t-distribute-generated-files-in-tarballs.patch
gtk-Really-don-t-distribute-built-files.patch