[igt-dev] [PATCH i-g-t] man/build: Fix dependency handling
Arkadiusz Hiler
arkadiusz.hiler at intel.com
Fri May 24 05:28:29 UTC 2019
build_man is a 'feature' option, which means that we get an opaque
object, so comparing it to 'yes' is always false.
It should have been 'if build_man.enabled()'.
But going even further we can prune the whole check, as rst2man is
defined as follows:
rst2man = find_program('rst2man-3', 'rst2man', required : build_man)
>From the patch overhauling those options:
get_option() on a feature returns opaque object that can be passed as
a 'required' argument of a dependency. Auto is equivalent to 'required
: false', enabled is equivalent to 'required : true' and disabled
introduces new behavior forcing the dependency to be considered not
found.
This would cause the build to fail if build_man is enabled (aka
'required') and rst2man is not found. So...
if rst2man.found()
# rst2man found
# buildu buildu
else
# rst2man not found, but considered optional because
# we haven't erred out on find_program
if build_man.enabled() # cannot be, it's optional!
error('...')
endif
endif
We can get rid of the whole else block here.
Cc: Antonio Argenziano <antonio.argenziano at intel.com>
Cc: Petri Latvala <petri.latvala at intel.com>
Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler at intel.com>
---
man/meson.build | 8 ++------
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git a/man/meson.build b/man/meson.build
index 0f0a6dd4..2c1396af 100644
--- a/man/meson.build
+++ b/man/meson.build
@@ -38,10 +38,6 @@ if rst2man.found()
install : true,
install_dir : join_paths(mandir, 'man1'))
endforeach
- build_info += 'Build man pages: true'
-else
- if build_man == 'yes'
- error('Cannot build man pages due to missing dependencies')
- endif
- build_info += 'Build man pages: false'
endif
+
+build_info += 'Build man pages: @0@'.format(rst2man.found())
--
2.21.0
More information about the igt-dev
mailing list