summary refs log tree commit diff stats
path: root/scripts/kernel-doc
diff options
context:
space:
mode:
authorAlex Bennée <alex.bennee@linaro.org>2021-03-23 16:52:47 +0000
committerAlex Bennée <alex.bennee@linaro.org>2021-03-24 14:24:40 +0000
commitb30df2751e581ea24999ff2263df99208b8e3ed3 (patch)
tree7f06d565f5f5294e5c5182eba3e61a200ed3f86f /scripts/kernel-doc
parent01874b15d36e3f9a3506c47941a92ccf8d8bed98 (diff)
downloadfocaccia-qemu-b30df2751e581ea24999ff2263df99208b8e3ed3.tar.gz
focaccia-qemu-b30df2751e581ea24999ff2263df99208b8e3ed3.zip
scripts/kernel-doc: strip QEMU_ from function definitions
Some packaged versions of Sphinx (fedora33/alpine so far) have issues
with the annotated C code that kernel-doc spits out. Without knowing
about things like QEMU_PLUGIN_EXPORT it chokes trying to understand
the code. Evidently this is a problem for the kernel as well as the
long stream of regex substitutions we add to in this patch can attest.

Fortunately we have a fairly common format for all our compiler
shenanigans as applied to functions so lets just filter them all out.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20210323165308.15244-2-alex.bennee@linaro.org>
Diffstat (limited to 'scripts/kernel-doc')
-rwxr-xr-xscripts/kernel-doc3
1 files changed, 3 insertions, 0 deletions
diff --git a/scripts/kernel-doc b/scripts/kernel-doc
index 4b19851b2d..240923d509 100755
--- a/scripts/kernel-doc
+++ b/scripts/kernel-doc
@@ -1745,6 +1745,9 @@ sub dump_function($$) {
             )+
           \)\)\s+//x;
 
+    # Strip QEMU specific compiler annotations
+    $prototype =~ s/QEMU_[A-Z_]+ +//;
+
     # Yes, this truly is vile.  We are looking for:
     # 1. Return type (may be nothing if we're looking at a macro)
     # 2. Function name