[gtk+/wip/meson: 214/215] build: Add missing symbol visibility flags
- From: Emmanuele Bassi <ebassi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+/wip/meson: 214/215] build: Add missing symbol visibility flags
- Date: Tue, 18 Apr 2017 13:50:37 +0000 (UTC)
commit 3ed00616daaf9b69ff0c5fff1d04130c11e6a175
Author: Emmanuele Bassi <ebassi gnome org>
Date: Tue Apr 18 14:28:46 2017 +0100
build: Add missing symbol visibility flags
GTK symbols are not visible by default, and only the ones annotated with
_GDK_EXTERN (and wrapper macros) are exported. We need to define
_GDK_EXTERN during the configuration, depending on the platform and
compiler we use.
meson.build | 16 ++++++++++++++++
1 files changed, 16 insertions(+), 0 deletions(-)
---
diff --git a/meson.build b/meson.build
index 54ce3c7..36b8001 100644
--- a/meson.build
+++ b/meson.build
@@ -255,6 +255,22 @@ foreach cflag: test_cflags
endif
endforeach
+# Symbol visibility
+if get_option('default_library') != 'static'
+ if host_machine.system() == 'windows'
+ cdata.set('DLL_EXPORT', true)
+ if cc.get_id() == 'msvc'
+ cdata.set('_GDK_EXTERN', '__declspec(dllexport) extern')
+ else
+ cdata.set('_GDK_EXTERN', '__attribute__((visibility("default"))) __declspec(dllexport) extern')
+ common_cflags += ['-fvisibility=hidden']
+ endif
+ else
+ cdata.set('_GDK_EXTERN', '__attribute__((visibility("default"))) extern')
+ common_cflags += ['-fvisibility=hidden']
+ endif
+endif
+
confinc = include_directories('.')
gdkinc = include_directories('gdk')
gtkinc = include_directories('gtk')
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]