From 1481c6d5f08f9dbbe10abc87b372a1f61db36476 Mon Sep 17 00:00:00 2001 From: Jussi Kukkonen Date: Mon, 9 Nov 2015 11:07:27 +0200 Subject: [PATCH] Enable more tests while cross-compiling Upstream disables a few tests while cross-compiling because their build requires running other built binaries. This usually makes sense but in the cross-compile case we can depend on glib-2.0-native. Upstream-Status: Inappropriate [OE specific] Signed-off-by: Jussi Kukkonen --- gio/tests/Makefile.am | 10 ++++++---- gio/tests/meson.build | 15 ++++++++------- tests/gobject/Makefile.am | 6 ++++++ 3 files changed, 20 insertions(+), 11 deletions(-) diff --git a/gio/tests/Makefile.am b/gio/tests/Makefile.am index c4e7a92..633e85c 100644 --- a/gio/tests/Makefile.am +++ b/gio/tests/Makefile.am @@ -583,10 +583,9 @@ test_programs += \ endif # ----------------------------------------------------------------------------- -# The resources test is a bit more complicated, and we cannot build it when -# cross-compiling GIO because it requires running a binary... +# The resources test is a bit more complicated, and requires glib-native +# for running a binary -if !CROSS_COMPILING test_programs += resources resources_SOURCES = resources.c nodist_resources_SOURCES = test_resources.c test_resources2.c test_resources2.h @@ -611,7 +610,11 @@ if !ENABLE_INSTALLED_TESTS libresourceplugin_la_LDFLAGS += -rpath / endif +if !CROSS_COMPILING glib_compile_resources=$(top_builddir)/gio/glib-compile-resources +else +glib_compile_resources=glib-compile-resources +endif test-generated.txt: test1.txt $(AM_V_GEN) echo "Generated" > $@ && \ @@ -632,7 +635,6 @@ test.gresource: test.gresource.xml Makefile $(shell $(glib_compile_resources) -- EXTRA_DIST += test.gresource.xml test1.txt test2.gresource.xml test2.txt test3.gresource.xml test3.txt test4.gresource.xml CLEANFILES += test-generated.txt test_resources.c test_resources2.[ch] plugin_resources.c test.gresource -endif # !CROSS_COMPILING BUILT_SOURCES += giotypefuncs.inc diff --git a/gio/tests/meson.build b/gio/tests/meson.build index dca33bd..181f5c7 100644 --- a/gio/tests/meson.build +++ b/gio/tests/meson.build @@ -173,7 +173,7 @@ if host_machine.system() != 'windows' # Test programs that need to bring up a session bus (requires dbus-daemon) have_dbus_daemon = find_program('dbus-daemon', required : false).found() - if have_dbus_daemon + if true annotate_args = [ '--annotate', 'org.project.Bar', 'Key1', 'Value1', '--annotate', 'org.project.Bar', 'org.gtk.GDBus.Internal', 'Value2', @@ -406,12 +406,13 @@ if installed_tests_enabled install_subdir('cert-tests', install_dir : installed_tests_execdir) endif -if not meson.is_cross_build() or meson.has_exe_wrapper() +#if not meson.is_cross_build() or meson.has_exe_wrapper() +if meson.is_cross_build() plugin_resources_c = custom_target('plugin-resources.c', input : 'test4.gresource.xml', output : 'plugin-resources.c', - command : [glib_compile_resources, + command : ['glib-compile-resources', '--target=@OUTPUT@', '--sourcedir=' + meson.current_source_dir(), '--generate-source', @@ -428,7 +429,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() test_gresource = custom_target('test.gresource', input : 'test.gresource.xml', output : 'test.gresource', - command : [glib_compile_resources, + command : ['glib-compile-resources', '--target=@OUTPUT@', '--sourcedir=' + meson.current_source_dir(), '--sourcedir=' + meson.current_build_dir(), @@ -439,7 +440,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() test_resources2_c = custom_target('test_resources2.c', input : 'test3.gresource.xml', output : 'test_resources2.c', - command : [glib_compile_resources, + command : ['glib-compile-resources', '--target=@OUTPUT@', '--sourcedir=' + meson.current_source_dir(), '--generate', @@ -450,7 +451,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() test_resources2_h = custom_target('test_resources2.h', input : 'test3.gresource.xml', output : 'test_resources2.h', - command : [glib_compile_resources, + command : ['glib-compile-resources', '--target=@OUTPUT@', '--sourcedir=' + meson.current_source_dir(), '--generate', @@ -461,7 +462,7 @@ if not meson.is_cross_build() or meson.has_exe_wrapper() test_resources_c = custom_target('test_resources.c', input : 'test2.gresource.xml', output : 'test_resources.c', - command : [glib_compile_resources, + command : ['glib-compile-resources', '--target=@OUTPUT@', '--sourcedir=' + meson.current_source_dir(), '--generate-source', diff --git a/tests/gobject/Makefile.am b/tests/gobject/Makefile.am index 1bcefbe..77e646a 100644 --- a/tests/gobject/Makefile.am +++ b/tests/gobject/Makefile.am @@ -51,7 +51,13 @@ if ENABLE_TIMELOOP installed_test_programs += timeloop-closure endif +# The marshal test requires running a binary, which means we require +# glib-native when cross-compiling +if !CROSS_COMPILING glib_genmarshal=$(top_builddir)/gobject/glib-genmarshal +else +glib_genmarshal=$(shell which glib-genmarshal) +endif testmarshal.h: stamp-testmarshal.h @true