Meson: Fix declare_dependency() calls

Turns out the fix in commit 93555577c wasn't enough, when using glib as
subproject and the parent project uses only libgio_dep, and include
<gi18n.h>, it won't find libintl.h because it's in the
include_directories of libglib_dep. Fix that by declaring dependencies
explicitly, which is the right thing to do since glib and gobject are
public dependencies of gio. That reflects what we do for the pkg-config
file as well.
This commit is contained in:
Xavier Claessens 2018-12-07 15:14:40 -05:00
parent fa80a2d133
commit afd3f3beda
3 changed files with 6 additions and 5 deletions

View File

@ -855,9 +855,8 @@ else
endif endif
libgio_dep = declare_dependency(link_with : libgio, libgio_dep = declare_dependency(link_with : libgio,
dependencies : [gioenumtypes_dep], dependencies : [libgmodule_dep, libgobject_dep, gioenumtypes_dep],
# We sadly need to export configinc here because everyone includes <gio/*.h> include_directories : [gioinc])
include_directories : [configinc, glibinc, gobjectinc, gmoduleinc, gioinc])
if host_system == 'windows' if host_system == 'windows'
# Hack till https://github.com/mesonbuild/meson/issues/2324 is fixed # Hack till https://github.com/mesonbuild/meson/issues/2324 is fixed

View File

@ -140,4 +140,5 @@ pkg.generate(libraries : [libgmodule, export_dynamic_ldflags],
) )
libgmodule_dep = declare_dependency(link_with : libgmodule, libgmodule_dep = declare_dependency(link_with : libgmodule,
include_directories : [configinc, gmoduleinc, glibinc]) include_directories : [gmoduleinc],
dependencies : [libglib_dep])

View File

@ -84,7 +84,8 @@ pkg.generate(libraries : libgobject,
) )
libgobject_dep = declare_dependency(link_with : libgobject, libgobject_dep = declare_dependency(link_with : libgobject,
include_directories : [configinc, glibinc, gobjectinc]) include_directories : [gobjectinc],
dependencies : [libglib_dep])
python_tools = [ python_tools = [
'glib-genmarshal', 'glib-genmarshal',