a1c5f4e220
The file introspection.py was missing in the installed-tests files and it requires python3 to run.
98 lines
3.4 KiB
Diff
98 lines
3.4 KiB
Diff
From 57bed86429db9d871f1442c94f14e94e38972ca3 Mon Sep 17 00:00:00 2001
|
|
From: worldofpeace <worldofpeace@protonmail.ch>
|
|
Date: Thu, 16 May 2019 21:15:15 -0400
|
|
Subject: [PATCH] meson: add options for tests installation dirs
|
|
|
|
---
|
|
meson_options.txt | 6 ++++++
|
|
tests/meson.build | 23 ++++++++++++++++-------
|
|
2 files changed, 22 insertions(+), 7 deletions(-)
|
|
|
|
diff --git a/meson_options.txt b/meson_options.txt
|
|
index b9a2fb5..4b8629f 100644
|
|
--- a/meson_options.txt
|
|
+++ b/meson_options.txt
|
|
@@ -23,3 +23,9 @@ option('tests', type: 'boolean',
|
|
option('installed_tests', type: 'boolean',
|
|
value: true,
|
|
description: 'Install tests')
|
|
+option('installed_test_datadir', type: 'string',
|
|
+ value: '',
|
|
+ description: 'Installation directory for data files in tests')
|
|
+option('installed_test_bindir', type: 'string',
|
|
+ value: '',
|
|
+ description: 'Installation directory for binary files in tests')
|
|
diff --git a/tests/meson.build b/tests/meson.build
|
|
index 77281f5..7522456 100644
|
|
--- a/tests/meson.build
|
|
+++ b/tests/meson.build
|
|
@@ -21,8 +21,17 @@ unit_tests = [
|
|
|
|
gen_installed_test = find_program('gen-installed-test.py')
|
|
|
|
-installed_test_datadir = join_paths(get_option('prefix'), get_option('datadir'), 'installed-tests', graphene_api_path)
|
|
-installed_test_bindir = join_paths(get_option('prefix'), get_option('libexecdir'), 'installed-tests', graphene_api_path)
|
|
+test_suffix = join_paths('installed-tests', graphene_api_path)
|
|
+
|
|
+test_datadir = join_paths(get_option('installed_test_datadir'), test_suffix)
|
|
+if test_datadir == ''
|
|
+ test_datadir = join_paths(get_option('prefix'), get_option('datadir'), test_suffix)
|
|
+endif
|
|
+
|
|
+test_bindir = join_paths(get_option('installed_test_bindir'), test_suffix)
|
|
+if test_bindir == ''
|
|
+ test_bindir = join_paths(get_option('prefix'), get_option('libexecdir'), test_suffix)
|
|
+endif
|
|
|
|
# Make tests conditional on having mutest-1 installed system-wide, or
|
|
# available as a subproject
|
|
@@ -40,13 +49,13 @@ if mutest_dep.found()
|
|
output: wrapper,
|
|
command: [
|
|
gen_installed_test,
|
|
- '--testdir=@0@'.format(installed_test_bindir),
|
|
+ '--testdir=@0@'.format(test_bindir),
|
|
'--testname=@0@'.format(unit),
|
|
'--outdir=@OUTDIR@',
|
|
'--outfile=@0@'.format(wrapper),
|
|
],
|
|
install: get_option('installed_tests'),
|
|
- install_dir: installed_test_datadir,
|
|
+ install_dir: test_datadir,
|
|
)
|
|
|
|
test(unit,
|
|
@@ -55,7 +64,7 @@ if mutest_dep.found()
|
|
include_directories: graphene_inc,
|
|
c_args: common_cflags,
|
|
install: get_option('installed_tests'),
|
|
- install_dir: installed_test_bindir,
|
|
+ install_dir: test_bindir,
|
|
),
|
|
env: ['MUTEST_OUTPUT=tap'],
|
|
protocol: 'tap',
|
|
@@ -66,17 +75,18 @@ endif
|
|
if build_gir and host_system == 'linux' and not meson.is_cross_build()
|
|
foreach unit: ['introspection.py']
|
|
wrapper = '@0@.test'.format(unit)
|
|
+ install_data(unit, install_dir: test_bindir)
|
|
custom_target(wrapper,
|
|
output: wrapper,
|
|
command: [
|
|
gen_installed_test,
|
|
- '--testdir=@0@'.format(installed_test_bindir),
|
|
+ '--testdir=@0@'.format(test_bindir),
|
|
'--testname=@0@'.format(unit),
|
|
'--outdir=@OUTDIR@',
|
|
'--outfile=@0@'.format(wrapper),
|
|
],
|
|
install: get_option('installed_tests'),
|
|
- install_dir: installed_test_datadir,
|
|
+ install_dir: test_datadir,
|
|
)
|
|
|
|
test(unit,
|
|
--
|
|
2.31.1
|
|
|