You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

83 lines
2.6 KiB

From a5f01beb41a81f483d90eb4dd785822a8615f65f Mon Sep 17 00:00:00 2001
From: Gilles Dartiguelongue <eva@gentoo.org>
Date: Wed, 30 May 2018 08:44:18 +0200
Subject: [PATCH] build: 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 1e1522c..45d7ed7 100644
--- a/meson.build
+++ b/meson.build
@@ -34,10 +34,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 3f699eb..0c8965e 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -1,16 +1,20 @@
vala_args = [ '--pkg=posix', '--vapidir=' + meson.current_source_dir () ]
dependencies = [ glib_dep, gtk_dep, libhandy_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.26.3