summary refs log tree commit diff stats
path: root/docs/sphinx/depfile.py
diff options
context:
space:
mode:
authorMarc-André Lureau <marcandre.lureau@redhat.com>2021-10-08 22:31:06 +0400
committerMarc-André Lureau <marcandre.lureau@redhat.com>2021-11-08 12:27:23 +0400
commitcd0a9e983c984e3a6a08397dc2ca4500886ec48b (patch)
tree2011f35432608aa6855e63268694a5047dcb9106 /docs/sphinx/depfile.py
parent63ed851de474b1e2458cb9b4ba6e02a88f72c25c (diff)
downloadfocaccia-qemu-cd0a9e983c984e3a6a08397dc2ca4500886ec48b.tar.gz
focaccia-qemu-cd0a9e983c984e3a6a08397dc2ca4500886ec48b.zip
docs/sphinx: add loaded modules to generated depfile
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: John Snow <jsnow@redhat.com>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'docs/sphinx/depfile.py')
-rw-r--r--docs/sphinx/depfile.py14
1 files changed, 12 insertions, 2 deletions
diff --git a/docs/sphinx/depfile.py b/docs/sphinx/depfile.py
index 277fdf0f56..b6fb926df1 100644
--- a/docs/sphinx/depfile.py
+++ b/docs/sphinx/depfile.py
@@ -12,6 +12,7 @@
 
 import os
 import sphinx
+import sys
 
 __version__ = '1.0'
 
@@ -20,8 +21,17 @@ def get_infiles(env):
         yield env.doc2path(x)
         yield from ((os.path.join(env.srcdir, dep)
                     for dep in env.dependencies[x]))
+    for mod in sys.modules.values():
+        if hasattr(mod, '__file__'):
+            if mod.__file__:
+                yield mod.__file__
 
-def write_depfile(app, env):
+
+def write_depfile(app, exception):
+    if exception:
+        return
+
+    env = app.env
     if not env.config.depfile:
         return
 
@@ -42,7 +52,7 @@ def write_depfile(app, env):
 def setup(app):
     app.add_config_value('depfile', None, 'env')
     app.add_config_value('depfile_stamp', None, 'env')
-    app.connect('env-updated', write_depfile)
+    app.connect('build-finished', write_depfile)
 
     return dict(
         version = __version__,