Ensure that in a cross compile only the target flags are passed to gtk-doc, and not the native flags. Upstream-Status: Submitted [https://github.com/mesonbuild/meson/pull/4261] Signed-off-by: Ross Burton diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py index 4af33304..8751f53c 100644 --- a/mesonbuild/modules/gnome.py +++ b/mesonbuild/modules/gnome.py @@ -851,17 +851,30 @@ This will become a hard error in the future.''') if not isinstance(incd.held_object, (str, build.IncludeDirs)): raise MesonException( 'Gir include dirs should be include_directories().') + cflags.update(get_include_args(inc_dirs)) - cflags.update(state.environment.coredata.get_external_args('c')) + if state.environment.is_cross_build(): + cflags.update(state.environment.cross_info.config["properties"].get('c_args', "")) + else: + cflags.update(state.environment.coredata.get_external_args('c')) + ldflags = OrderedSet() ldflags.update(internal_ldflags) - ldflags.update(state.environment.coredata.get_external_link_args('c')) + if state.environment.is_cross_build(): + ldflags.update(state.environment.cross_info.config["properties"].get('c_link_args', "")) + else: + ldflags.update(state.environment.coredata.get_external_link_args('c')) ldflags.update(external_ldflags) + if cflags: args += ['--cflags=%s' % ' '.join(cflags)] if ldflags: args += ['--ldflags=%s' % ' '.join(ldflags)] - compiler = state.environment.coredata.compilers.get('c') + + if state.environment.is_cross_build(): + compiler = state.environment.coredata.cross_compilers.get('c') + else: + compiler = state.environment.coredata.compilers.get('c') if compiler: args += ['--cc=%s' % ' '.join(compiler.get_exelist())] args += ['--ld=%s' % ' '.join(compiler.get_linker_exelist())]