diff options
author | Marco Trevisan (TreviƱo) <mail@3v1n0.net> | 2023-04-19 21:06:34 +0200 |
---|---|---|
committer | Marco Trevisan <mail@3v1n0.net> | 2023-04-21 10:00:34 -0400 |
commit | 4ed5539d0afb7b11ab5cfac4f89445c5b94da98e (patch) | |
tree | 335a3b397655a3d83967344cc70daa4151bad903 | |
parent | e82348db620d5048779971efa399b728cbf17efe (diff) | |
download | glib-4ed5539d0afb7b11ab5cfac4f89445c5b94da98e.tar.gz |
gmodule: Define a gmodule include dependency and use it in gio modules
Various gio modules include gmodule.h that requires the
gmodule-visibility.h to be already built.
To make this easier, just provide a dependency and use it where we are
building modules that do not depend on libgio_dep (that already includes
that).
Fixes: https://gitlab.gnome.org/GNOME/glib/-/issues/2982
(cherry picked from commit fe38a02c62c2ceff43a539efa3a31fe2ee72b4fe)
-rw-r--r-- | gio/inotify/meson.build | 11 | ||||
-rw-r--r-- | gio/kqueue/meson.build | 9 | ||||
-rw-r--r-- | gio/win32/meson.build | 8 | ||||
-rw-r--r-- | gmodule/meson.build | 9 |
4 files changed, 26 insertions, 11 deletions
diff --git a/gio/inotify/meson.build b/gio/inotify/meson.build index e5c811520..8c7d6aaa0 100644 --- a/gio/inotify/meson.build +++ b/gio/inotify/meson.build @@ -8,9 +8,14 @@ inotify_sources = [ ] inotify_lib = static_library('inotify', - sources : [inotify_sources, gmodule_visibility_h], - include_directories : [configinc, glibinc, gmoduleinc], - dependencies : [gioenumtypes_dep, libglib_dep, libgobject_dep], + sources : [inotify_sources], + include_directories : [configinc, glibinc], + dependencies : [ + gioenumtypes_dep, + libglib_dep, + libgobject_dep, + gmodule_inc_dep, + ], gnu_symbol_visibility : 'hidden', pic : true, c_args : [gio_c_args, gio_c_args_internal]) diff --git a/gio/kqueue/meson.build b/gio/kqueue/meson.build index 04e48aad3..7447e5631 100644 --- a/gio/kqueue/meson.build +++ b/gio/kqueue/meson.build @@ -6,9 +6,12 @@ kqueue_sources = [ ] kqueue_lib = static_library('kqueue', - sources : kqueue_sources, - include_directories : [configinc, glibinc, gmoduleinc], - dependencies : [gioenumtypes_dep], + sources : [kqueue_sources], + include_directories : [configinc, glibinc], + dependencies : [ + gioenumtypes_dep, + gmodule_inc_dep, + ], gnu_symbol_visibility : 'hidden', pic : true, c_args : [gio_c_args, gio_c_args_internal]) diff --git a/gio/win32/meson.build b/gio/win32/meson.build index 0a896aca0..08be6b09e 100644 --- a/gio/win32/meson.build +++ b/gio/win32/meson.build @@ -9,8 +9,12 @@ giowin32_sources = [ giowin32_lib = static_library('giowin32', sources : [giowin32_sources], - include_directories : [configinc, glibinc, gioinc, gmoduleinc], - dependencies : [libintl, gioenumtypes_dep], + include_directories : [configinc, glibinc, gioinc], + dependencies : [ + libintl, + gioenumtypes_dep, + gmodule_inc_dep, + ], gnu_symbol_visibility : 'hidden', pic : true, c_args : [gio_c_args, gio_c_args_internal]) diff --git a/gmodule/meson.build b/gmodule/meson.build index 4b0778e70..da4d06cfb 100644 --- a/gmodule/meson.build +++ b/gmodule/meson.build @@ -135,10 +135,13 @@ pkg.generate(libraries : [libgmodule, export_dynamic_ldflags], description : 'Dynamic module loader for GLib', ) +gmodule_inc_dep = declare_dependency( + include_directories: [gmoduleinc], + sources: [gmodule_visibility_h], +) + libgmodule_dep = declare_dependency(link_with : libgmodule, - include_directories : [gmoduleinc], - sources : [gmodule_visibility_h], - dependencies : [libglib_dep]) + dependencies : [libglib_dep, gmodule_inc_dep]) meson.override_dependency('gmodule-no-export-2.0', libgmodule_dep) meson.override_dependency('gmodule-export-2.0', libgmodule_dep) |