summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/glib-2.0/glib-2.0/Enable-more-tests-while-cross-compiling.patch
blob: 5ccd3203fb2d8ec2e247d96d576523e92d9c6c66 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
From 1481c6d5f08f9dbbe10abc87b372a1f61db36476 Mon Sep 17 00:00:00 2001
From: Jussi Kukkonen <jussi.kukkonen@intel.com>
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 <jussi.kukkonen@intel.com>
---
 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