From 8a78a7996b01aba21377ceb7547da673fd30a391 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Wed, 27 Oct 2021 20:18:47 +0200
Subject: [PATCH] Support cross builds a bit better
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

* Do not build/run mozjs-linked program
* Do not try to run test applications

Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/gjs/-/merge_requests/690]

Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
 meson.build | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/meson.build b/meson.build
index c9b26d6..3058e8c 100644
--- a/meson.build
+++ b/meson.build
@@ -262,6 +262,7 @@ release builds of SpiderMonkey. Try configuring SpiderMonkey with
 --disable-debug.''')
 endif
 
+if not meson.is_cross_build()
 # Check if a minimal SpiderMonkey program compiles, links, and runs. If not,
 # it's most likely the case that SpiderMonkey was configured incorrectly, for
 # example by building mozglue as a shared library.
@@ -292,6 +293,7 @@ elif minimal_program.returncode() != 0
 failed to execute. Most likely you should build it with a different
 configuration.''' + recommended_configuration)
 endif
+endif # not meson.is_cross_build()
 
 have_printf_alternative_int = cc.compiles('''
 #include <stdio.h>
@@ -690,7 +692,7 @@ subdir('installed-tests')
 
 # Note: The test program in test/ needs to be ported
 #       to Windows before we can build it on Windows.
-if host_machine.system() != 'windows'
+if host_machine.system() != 'windows' and not meson.is_cross_build()
     subdir('test')
 endif
 
