[pangomm] meson.build: Check if Perl is required for building documentation



commit ef09de82c4eed684bc2a9b2b2c54ebebcdde9a8f
Author: Kjell Ahlstedt <kjellahlstedt gmail com>
Date:   Sun Feb 27 08:56:13 2022 +0100

    meson.build: Check if Perl is required for building documentation
    
    New versions of mm-common use the Python scripts doc_postprocess.py
    and doc_install.py instead of the Perl scripts doc-postprocess.pl and
    doc-install.pl when documentation is built.

 meson.build | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)
---
diff --git a/meson.build b/meson.build
index ee0b468..aeec718 100644
--- a/meson.build
+++ b/meson.build
@@ -129,7 +129,6 @@ if maintainer_mode and not mm_common_get.found()
   mm_common_get = find_program('mm-common-get', required: true)
 endif
 m4 = find_program('m4', required: maintainer_mode) # Used by gmmproc (in glibmm)
-perl = find_program('perl', required: maintainer_mode or build_documentation)
 doxygen = find_program('doxygen', required: build_documentation)
 dot = find_program('dot', required: build_documentation) # Used by Doxygen
 xsltproc = find_program('xsltproc', required: build_documentation)
@@ -162,6 +161,21 @@ sys.exit(os.path.isfile("@0@"))
   endif
 endif
 
+# Check if perl is required and available.
+doc_perl_prop = run_command(
+  python3, doc_reference_py, 'get_script_property',
+  '', # MMDOCTOOLDIR is not used
+  'requires_perl',
+  check: false,
+)
+doc_requires_perl = true
+if doc_perl_prop.returncode() == 0 and doc_perl_prop.stdout() == 'false'
+  doc_requires_perl = false
+endif
+
+perl = find_program('perl', required: maintainer_mode or \
+  (build_documentation and doc_requires_perl))
+
 # pangomm's own script files.
 pangomm_script_dir = project_source_root / 'tools'
 dummy_header_py = pangomm_script_dir / 'dummy-header.py'


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]