meson: Add schemasdir and giomoduledir to gio dependency

This allows applications to get their value regardless whether glib is a
subproject or pkgconfig:

  gio_dep = dependency('gio-2.0')
  giomoduledir = gio_dep.get_variable('giomoduledir')
  schemasdir = gio_dep.get_variable('schemasdir')
This commit is contained in:
Xavier Claessens 2022-02-21 13:03:15 -05:00
parent 94f3bb7074
commit 5aa03882ca

View File

@ -819,9 +819,22 @@ endif
schemas_subdir = join_paths('glib-2.0', 'schemas')
# Work around variables kwarg requiring Meson 0.56
declare_dependency_kwargs = {}
if meson.version().version_compare('>=0.56.0')
declare_dependency_kwargs = {
'variables': [
'schemasdir=' + join_paths(glib_datadir, schemas_subdir),
'giomoduledir=' + glib_giomodulesdir,
]
}
endif
libgio_dep = declare_dependency(link_with : libgio,
dependencies : [libgmodule_dep, libgobject_dep, gioenumtypes_dep],
include_directories : [gioinc])
include_directories : [gioinc],
kwargs : declare_dependency_kwargs,
)
pkg.generate(libgio,
requires : ['glib-2.0', 'gobject-2.0'],