Add a meson flag to make cool URIs optional
authorPierre Le Marre <dev@wismill.eu>
Tue, 27 Jun 2023 18:31:01 +0000 (20:31 +0200)
committerWismill <dev@wismill.eu>
Fri, 30 Jun 2023 15:14:59 +0000 (17:14 +0200)
The script `ensure-stable-doc-urls.py` relies on the Doxygen output files
names. These may change between Doxygen versions, although the Doxygen
developers intend stability.

Since the script is useful mainly for the online documentation of
xkbcommon, make the target `doc-cool-uris` optional.

meson.build
meson_options.txt

index 2cd1ee7..6a79093 100644 (file)
@@ -833,20 +833,22 @@ You can disable the documentation with -Denable-docs=false.''')
         install_dir: docdir,
         build_by_default: true,
     )
-    ensure_stable_urls = find_program('scripts'/'ensure-stable-doc-urls.py')
-    custom_target(
-        'doc-cool-uris',
-        input: [doc_gen, 'doc'/'cool-uris.yaml'],
-        output: 'html-xtra',
-        command: [
-            ensure_stable_urls,
-            'generate-redirections',
-            meson.current_source_dir()/'doc'/'cool-uris.yaml',
-            meson.current_build_dir()/'html'
-        ],
-        install: false,
-        build_by_default: true,
-    )
+    if get_option('enable-cool-uris')
+        ensure_stable_urls = find_program('scripts'/'ensure-stable-doc-urls.py')
+        custom_target(
+            'doc-cool-uris',
+            input: [doc_gen, 'doc'/'cool-uris.yaml'],
+            output: 'html-xtra',
+            command: [
+                ensure_stable_urls,
+                'generate-redirections',
+                meson.current_source_dir()/'doc'/'cool-uris.yaml',
+                meson.current_build_dir()/'html'
+            ],
+            install: false,
+            build_by_default: true,
+        )
+    endif
 endif
 
 configure_file(output: 'config.h', configuration: configh_data)
index 69850b8..924d1f7 100644 (file)
@@ -62,6 +62,12 @@ option(
     description: 'Enable building the documentation',
 )
 option(
+    'enable-cool-uris',
+    type: 'boolean',
+    value: false,
+    description: 'Enable creating redirections to maintain stable documentation pages',
+)
+option(
     'enable-wayland',
     type: 'boolean',
     value: true,