api_docs = [ 'api-error-handling.txt', 'api-merge.txt', 'api-parse-options.txt', 'api-simple-ipc.txt', 'api-trace2.txt', ] articles = [ 'bitmap-format.txt', 'build-systems.txt', 'bundle-uri.txt', 'commit-graph.txt', 'directory-rename-detection.txt', 'hash-function-transition.txt', 'long-running-process-protocol.txt', 'multi-pack-index.txt', 'packfile-uri.txt', 'pack-heuristics.txt', 'parallel-checkout.txt', 'partial-clone.txt', 'platform-support.txt', 'racy-git.txt', 'reftable.txt', 'remembering-renames.txt', 'repository-version.txt', 'rerere.txt', 'scalar.txt', 'send-pack-pipeline.txt', 'shallow.txt', 'sparse-checkout.txt', 'sparse-index.txt', 'trivial-merge.txt', 'unit-tests.txt', ] api_index = custom_target( command: [ shell, meson.current_source_dir() / 'api-index.sh', meson.current_source_dir(), '@OUTPUT@', ], env: script_environment, input: api_docs, output: 'api-index.txt', ) custom_target( command: asciidoc_html_options, input: api_index, output: 'api-index.html', depends: documentation_deps, install: true, install_dir: get_option('datadir') / 'doc/git-doc/technical', ) foreach article : api_docs + articles custom_target( command: asciidoc_html_options, input: article, output: fs.stem(article) + '.html', depends: documentation_deps, install: true, install_dir: get_option('datadir') / 'doc/git-doc/technical', ) endforeach