summaryrefslogtreecommitdiff
blob: 868ef9a76a1a8885406ec1c516e2a7a75c45ae2c (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
From 02845c57b2bf1b6170efb57c59db5ea0a2b60091 Mon Sep 17 00:00:00 2001
From: Gilles Dartiguelongue <eva@gentoo.org>
Date: Wed, 30 May 2018 08:44:18 +0200
Subject: [PATCH] Add control for optional dependencies

---
 meson.build       | 18 ++++++++++++++----
 meson_options.txt |  3 +++
 src/meson.build   | 12 ++++++++----
 3 files changed, 25 insertions(+), 8 deletions(-)
 create mode 100644 meson_options.txt

diff --git a/meson.build b/meson.build
index cd2e452..f39ca51 100644
--- a/meson.build
+++ b/meson.build
@@ -25,10 +25,20 @@ zlib_dep = dependency ('zlib')
 cairo_dep = dependency ('cairo')
 gdk_pixbuf_dep = dependency ('gdk-pixbuf-2.0')
 gusb_dep = dependency ('gusb', version: '>= 0.2.7')
-colord_dep = dependency ('colord', required: false)
-packagekit_dep = dependency ('packagekit-glib2', version: '>= 1.1.5', required: false)
-webp_dep = dependency ('libwebp', required: false)
-webpmux_dep = dependency ('libwebpmux', required: false)
+
+if get_option('colord')
+    colord_dep = dependency ('colord')
+endif
+
+if get_option('packagekit')
+    packagekit_dep = dependency ('packagekit-glib2', version: '>= 1.1.5')
+endif
+
+if get_option('webp')
+    webp_dep = dependency ('libwebp')
+    webpmux_dep = dependency ('libwebpmux')
+endif
+
 sane_dep = dependency ('sane-backends')
 msgfmt = find_program  ('msgfmt')
 itstool = find_program  ('itstool')
diff --git a/meson_options.txt b/meson_options.txt
new file mode 100644
index 0000000..570ecdd
--- /dev/null
+++ b/meson_options.txt
@@ -0,0 +1,3 @@
+option('colord', type: 'boolean', value: false)
+option('packagekit', type: 'boolean', value: false)
+option('webp', type: 'boolean', value: false)
diff --git a/src/meson.build b/src/meson.build
index 9e40e42..83ca3a9 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -4,17 +4,21 @@ resources = gnome.compile_resources ('resources', 'simple-scan.gresource.xml',
 
 vala_args = [ '--pkg=posix', '--vapidir=' + meson.current_source_dir () ]
 dependencies = [ glib_dep, gtk_dep, zlib_dep, cairo_dep, gdk_pixbuf_dep, gusb_dep, sane_dep ]
-if colord_dep.found ()
+if get_option('colord')
     vala_args += [ '-D', 'HAVE_COLORD' ]
     dependencies += colord_dep
 endif
-if packagekit_dep.found ()
+if get_option('packagekit')
     vala_args += [ '-D', 'HAVE_PACKAGEKIT' ]
     dependencies += packagekit_dep
 endif
-if webp_dep.found () and (not colord_dep.found () or webpmux_dep.found ()) # Webpmux only required if colord
+if get_option('webp')
     vala_args += [ '-D', 'HAVE_WEBP' ]
-    dependencies += [ webp_dep, webpmux_dep ]
+    dependencies += [ webp_dep ]
+    # Webpmux only required if colord
+    if get_option('colord')
+        dependencies += [ webpmux_dep ]
+    endif
 endif
 
 simple_scan = executable ('simple-scan',
-- 
2.17.0