We patch girdir and typelibdir in gobject-introspection to include pc_sysrootdir for cross compiling. Avoid using pkg-config variables for girdir_for_pc_file and typelibdir_for_pc_file since they include pc_sysrootdir, which cannot be overridden using pkgconfig_define. meson needs non-absolute paths in order to correctly generate datadir. --- a/meson.build +++ b/meson.build @@ -96,9 +96,9 @@ typelibdir_for_pc_file = join_paths('${libdir}', 'girepository-1.0') gobject_introspection = dependency('gobject-introspection-1.0', required: false) if gobject_introspection.found() girdir = gobject_introspection.get_variable(pkgconfig: 'girdir', pkgconfig_define: ['datadir', datadir]) - girdir_for_pc_file = gobject_introspection.get_variable(pkgconfig: 'girdir', pkgconfig_define: ['datadir', '${datadir}']) + girdir_for_pc_file = join_paths('${datadir}', 'gir-1.0') typelibdir = gobject_introspection.get_variable(pkgconfig: 'typelibdir', pkgconfig_define: ['libdir', libdir]) - typelibdir_for_pc_file = gobject_introspection.get_variable(pkgconfig: 'typelibdir', pkgconfig_define: ['libdir', '${libdir}']) + typelibdir_for_pc_file = join_paths('${libdir}', 'girepository-1.0') endif vapidir = join_paths(datadir, 'vala', 'vapi')