[PATCH 04/32] docs: meson: Add dependencies for RST docs

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

 



Prepare for splitting out parts of RST documents into separate files by
introducing 'includes' property in the build system. While the include
itself is handled by docutils, it allows us to declare dependencies
between the files so that they are rebuilt properly.

Signed-off-by: Peter Krempa <pkrempa@xxxxxxxxxx>
---
 docs/meson.build | 23 ++++++++++++++++++++++-
 1 file changed, 22 insertions(+), 1 deletion(-)

diff --git a/docs/meson.build b/docs/meson.build
index 001b1fe6f0..1e1383daa9 100644
--- a/docs/meson.build
+++ b/docs/meson.build
@@ -112,6 +112,7 @@ docs_html_in_files = [
 # docs_rst_files:
 #   each entry is a dictionary with following items:
 #   name - base file name (required)
+#   includes - rst files included by this file (optional)
 docs_rst_files = [
   { 'name': 'advanced-tests' },
   { 'name': 'best-practices' },
@@ -212,9 +213,29 @@ endforeach

 foreach data : docs_rst_files
   rst_file = '@0@.rst'.format(data['name'])
+  html_in_file = '@0@xxxxxxxx'.format(data['name'])
+  depend_files = []
+
+  if data.has_key('includes')
+    depend_files = files(data['includes'])
+  endif
+
+  out_file = custom_target(
+    html_in_file,
+    input: rst_file,
+    output: html_in_file,
+    command: [
+      rst2html_prog,
+      '--strict',
+      '@INPUT@',
+      '@OUTPUT@',
+    ],
+    depend_files: depend_files,
+  )
+
   docs_html_in_gen += {
     'name': data['name'],
-    'file': docs_rst2html_gen.process(rst_file),
+    'file': out_file,
   }
 endforeach

-- 
2.26.2




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux