summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@aleksander.es>2021-11-03 10:57:51 +0100
committerAleksander Morgado <aleksander@aleksander.es>2021-11-03 10:57:53 +0100
commit295b75e9c8dc895e281e36b1e8121d09fd556af0 (patch)
tree899d11450625ed05c8029703739abea59a6206d5
parentd960af37d8e7e487962f785210e9cf43bb3666f6 (diff)
build: add an option to not build man pages
When cross-compiling, the compiled binaries cannot be run on the build machine, unless one defines a helper (e.g. qemu) in the meson configuration, which is most of the time undesirable. If help2man is installed on the build machine, then the build would fail because of this, so add an option to disable generating the man pages. With later versions of meson, it will be possible to automatically detect this condition. Based on the same fix done in libmbim by Nicolas Cavallari, see https://gitlab.freedesktop.org/mobile-broadband/libmbim/-/commit/792af73ea90e9689703ab526dd444fdb1c2f8e40 Fixes https://gitlab.freedesktop.org/mobile-broadband/libqmi/-/issues/75
-rw-r--r--meson.build8
-rw-r--r--meson_options.txt1
2 files changed, 8 insertions, 1 deletions
diff --git a/meson.build b/meson.build
index e88b43a..c731214 100644
--- a/meson.build
+++ b/meson.build
@@ -223,7 +223,12 @@ if enable_gtk_doc
subdir('docs/reference/libqmi-glib')
endif
-help2man = find_program('help2man', required: false)
+help2man = find_program(
+ 'help2man',
+# When meson >= 0.59 is popular enough, replace with
+# required: get_option('man').require(meson.can_run_host_binaries())
+ required: get_option('man'),
+)
subdir('docs/man', if_found: help2man)
configure_file(
@@ -237,6 +242,7 @@ summary({
'Documentation': enable_gtk_doc,
'bash completion': enable_bash_completion,
'gobject introspection': enable_gir,
+ 'man pages': help2man.found(),
}, section: 'Build')
summary({
diff --git a/meson_options.txt b/meson_options.txt
index 4d4f913..bee5daa 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -16,5 +16,6 @@ option('udevdir', type: 'string', value: '', description: 'where udev base direc
option('introspection', type: 'feature', value: 'auto', description: 'build introspection support')
option('gtk_doc', type: 'boolean', value: false, description: 'use gtk-doc to build documentation')
+option('man', type: 'feature', value: 'auto', description: 'build man pages using help2man')
option('bash_completion', type: 'boolean', value: true, description: 'install bash completion files')