diff options
author | Marco Trevisan (Treviño) <mail@3v1n0.net> | 2023-04-19 21:06:34 +0200 |
---|---|---|
committer | Marco Trevisan (Treviño) <mail@3v1n0.net> | 2023-04-19 21:10:29 +0200 |
commit | fe38a02c62c2ceff43a539efa3a31fe2ee72b4fe (patch) | |
tree | a8143b06b255e573006a983fe5d6a775b5cd3aad | |
parent | d4708c180d4eaeef844d5a760e21479f2621b883 (diff) | |
download | glib-wip/3v1n0/gio-gmodule-visibility-dep.tar.gz |
gmodule: Define a gmodule include dependency and use it in gio moduleswip/3v1n0/gio-gmodule-visibility-dep
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
-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 237992fcc..f7b41536e 100644 --- a/gmodule/meson.build +++ b/gmodule/meson.build @@ -137,10 +137,13 @@ pkg.generate(libraries : [libgmodule], 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) |