build: sanity check options
authorSimon Ser <contact@emersion.fr>
Thu, 5 May 2022 09:14:00 +0000 (11:14 +0200)
committerSimon Ser <contact@emersion.fr>
Tue, 10 May 2022 14:02:51 +0000 (14:02 +0000)
Fail when tests/documentation is enabled without libraries. Fail
when neither scanner nor libraries is enabled, because we don't
build anything in that case.

Signed-off-by: Simon Ser <contact@emersion.fr>
doc/meson.build
meson.build
src/meson.build
tests/meson.build

index 57c7180..44fda2a 100644 (file)
@@ -1,3 +1,7 @@
+if not get_option('libraries')
+       error('-Ddocumentation=true requires -Dlibraries=true')
+endif
+
 dot = find_program('dot')
 doxygen = find_program('doxygen')
 xsltproc = find_program('xsltproc')
index e7fc3ee..8e951b9 100644 (file)
@@ -118,12 +118,12 @@ subdir('src')
 if get_option('libraries')
        subdir('cursor')
        subdir('egl')
-       if get_option('tests')
-               subdir('tests')
-       endif
-       if get_option('documentation')
-               subdir('doc')
-       endif
+endif
+if get_option('tests')
+       subdir('tests')
+endif
+if get_option('documentation')
+       subdir('doc')
 endif
 
 if get_option('scanner')
index 266c8b1..a601724 100644 (file)
@@ -1,3 +1,7 @@
+if not (get_option('scanner') or get_option('libraries'))
+       error('Either -Dscanner=true or -Dlibraries=true is required')
+endif
+
 wayland_version_h = configuration_data()
 wayland_version_h.set('WAYLAND_VERSION', meson.project_version())
 wayland_version_h.set('WAYLAND_VERSION_MAJOR', wayland_version[0].to_int())
index ffb5136..5efd6f7 100644 (file)
@@ -1,3 +1,7 @@
+if not get_option('libraries')
+       error('-Dtests=true requires -Dlibraries=true')
+endif
+
 test_runner = static_library(
        'test-runner',
        sources: [