summaryrefslogtreecommitdiff
path: root/app-misc/tracker/files/tracker-3.2.1-build-Add-an-option-to-control-building-tests.patch
blob: 9480a6269c7568cafb802842006e364a203ff345 (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
From db36d010737d5eeceff300e3dd5e315c5d0382a2 Mon Sep 17 00:00:00 2001
From: Matt Turner <mattst88@gmail.com>
Date: Wed, 16 Feb 2022 10:59:33 -0800
Subject: [PATCH] build: Add an option to control building tests

Commit 8569c99d2926 ("Look for a Python installation with the tap
module") correctly added a dependency on the gi Python module for tests.
Commit 51ca035697a4 ("Make tracker:endpoint test work on macOS")
restructured Python probing by moving it to the top-level meson.build.

These two commits have the side-effect of exposing the fact that the
gi Python module is really only a test dependency, and should not be
required if building without tests.

As such, add a -Dtests=bool option to disable building tests. This
reduces the number of ninja targets from 232 to 188 on my non-test
build.
---
 meson.build       | 13 +++++++++----
 meson_options.txt |  2 ++
 2 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/meson.build b/meson.build
index 4e59b8240..f4dd58fd4 100644
--- a/meson.build
+++ b/meson.build
@@ -75,9 +75,12 @@ if get_option('man')
   a2x = find_program('a2x')
 endif
 
-py_modules = ['gi']
-if get_option('tests_tap_protocol')
-  py_modules += 'tap'
+py_modules = []
+if get_option('tests')
+  py_modules += 'gi'
+  if get_option('tests_tap_protocol')
+    py_modules += 'tap'
+  endif
 endif
 python = import('python').find_installation('python3', modules: py_modules)
 
@@ -358,7 +361,9 @@ tracker_uninstalled_nepomuk_ontologies_dir = join_paths(meson.current_source_dir
 tracker_uninstalled_stop_words_dir = join_paths(meson.current_source_dir(), 'src', 'libtracker-common', 'stop-words')
 tracker_uninstalled_testutils_dir = join_paths(meson.current_source_dir(), 'utils')
 
-subdir('tests')
+if get_option('tests')
+  subdir('tests')
+endif
 subdir('examples')
 
 subdir('po')
diff --git a/meson_options.txt b/meson_options.txt
index a7e647d02..ec8ea8bc2 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -20,6 +20,8 @@ option('systemd_user_services', type: 'boolean', value: true, yield: true,
        description: 'Whether to install systemd user .service files')
 option('systemd_user_services_dir', type: 'string', value: '', yield: true,
        description: 'Directory to install systemd user unit files (or empty to use default)')
+option('tests', type: 'boolean', value: true,
+       description: 'Whether to build tests')
 option('test_utils', type: 'boolean', value: true,
        description: 'Whether to install the trackertestutils Python package')
 option('test_utils_dir', type: 'string', value: '',
-- 
2.34.1