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
|
From 7820465f078e9655af70036d8c570fd644b38f22 Mon Sep 17 00:00:00 2001
From: Martin Gysel <me@bearsh.org>
Date: Thu, 19 Nov 2020 07:04:10 +0100
Subject: [PATCH 1/2] add test feature and make tests optional
---
meson.build | 14 ++++++++++----
meson_options.txt | 4 ++++
2 files changed, 14 insertions(+), 4 deletions(-)
diff --git a/meson.build b/meson.build
index 66aa2f7..ba44788 100644
--- a/meson.build
+++ b/meson.build
@@ -125,7 +125,7 @@ endif
polkit_policy_directory = polkit_gobject_dep.get_pkgconfig_variable('policydir')
# Tests dependencies
-pam_wrapper_dep = dependency('pam_wrapper', required: get_option('pam'))
+pam_wrapper_dep = dependency('pam_wrapper', required: get_option('pam') and get_option('test').enabled() )
xmllint = find_program('xmllint', required: false)
python3 = find_program('python3') # No meson without it!
@@ -139,11 +139,13 @@ python3_test_modules = {
}
python3_available_modules = []
+if get_option('test').enabled()
foreach module, required : python3_test_modules
if required and run_command(python3, '-c', 'import @0@'.format(module)).returncode() != 0
error('Python3 module \'' + module + '\' required by test suite not found')
endif
endforeach
+endif
cdata = configuration_data()
cdata.set_quoted('GETTEXT_PACKAGE', meson.project_name())
@@ -167,7 +169,9 @@ endif
if get_option('gtk_doc')
subdir('doc')
endif
-subdir('tests')
+if get_option('test').enabled()
+ subdir('tests')
+endif
subdir('po')
output = []
@@ -189,7 +193,9 @@ output += ' PAM module: ' + pam_dep.found().to_string()
output += ' Manuals: ' + get_option('man').to_string()
output += ' GTK Doc: ' + get_option('gtk_doc').to_string()
output += ' XML Linter ' + xmllint.found().to_string()
-output += '\nTest setup:\n'
-output += ' With address sanitizer: ' + address_sanitizer.to_string()
+if get_option('test').enabled()
+ output += '\nTest setup:\n'
+ output += ' With address sanitizer: ' + address_sanitizer.to_string()
+endif
message('\n'+'\n'.join(output)+'\n')
diff --git a/meson_options.txt b/meson_options.txt
index be31fe1..92c01cd 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -19,3 +19,7 @@ option('gtk_doc',
type: 'boolean',
value: false,
description: 'Use gtk-doc to build documentation')
+option('test',
+ type: 'feature',
+ value: 'disabled',
+ description: 'Enable tests')
--
2.29.2
|