summary refs log tree commit diff
path: root/contrib/scripts/nm-ci-patch-gtkdoc.sh
diff options
context:
space:
mode:
authorMichael Biebl <biebl@debian.org>2024-05-05 00:07:30 +0200
committerMichael Biebl <biebl@debian.org>2024-05-05 00:07:30 +0200
commit34bb501be08aa2b313d88e67d6e0a7e0a3f9cfa6 (patch)
tree4e6220877828be4c6f261de09ec0cb2d80e32389 /contrib/scripts/nm-ci-patch-gtkdoc.sh
parentbba2e4b4de668db525cbfdfc35292e5a0b51671a (diff)
New upstream version 1.47.90 upstream/1.47.90
Diffstat (limited to 'contrib/scripts/nm-ci-patch-gtkdoc.sh')
-rwxr-xr-xcontrib/scripts/nm-ci-patch-gtkdoc.sh40
1 files changed, 40 insertions, 0 deletions
diff --git a/contrib/scripts/nm-ci-patch-gtkdoc.sh b/contrib/scripts/nm-ci-patch-gtkdoc.sh
new file mode 100755
index 00000000..e72a0a8f
--- /dev/null
+++ b/contrib/scripts/nm-ci-patch-gtkdoc.sh
@@ -0,0 +1,40 @@
+#!/bin/bash
+
+# patch gtk-doc for https://gitlab.gnome.org/GNOME/gtk-doc/merge_requests/2
+
+cd /
+
+patch -f -p 1 --fuzz 0 --reject-file=- <<EOF
+diff --git a/usr/share/gtk-doc/python/gtkdoc/scan.py b/usr/share/gtk-doc/python/gtkdoc/scan.py
+index f1f167235ab2e4c62676fbcfb87ebbe55c95b944..b59dd17abfa5f42b7bb06d239f9c78e5efffbf5d 100644
+--- a/usr/share/gtk-doc/python/gtkdoc/scan.py
++++ b/usr/share/gtk-doc/python/gtkdoc/scan.py
+@@ -427,20 +427,26 @@ def ScanHeader(input_file, section_list, decl_list, get_types, options):
+             elif m9:
+                 # We've found a 'typedef struct _<name> <name>;'
+                 # This could be an opaque data structure, so we output an
+                 # empty declaration. If the structure is actually found that
+                 # will override this.
+                 structsym = m9.group(1).upper()
+                 logging.info('%s typedef: "%s"', structsym, m9.group(2))
+                 forward_decls[m9.group(2)] = '<%s>\n<NAME>%s</NAME>\n%s</%s>\n' % (
+                     structsym, m9.group(2), deprecated, structsym)
+ 
++                bm = re.search(r'^(\S+)(Class|Iface|Interface)\b', m9.group(2))
++                if bm:
++                    objectname = bm.group(1)
++                    logging.info('Found object: "%s"', objectname)
++                    title = '<TITLE>%s</TITLE>' % objectname
++
+             elif re.search(r'^\s*(?:struct|union)\s+_(\w+)\s*;', line):
+                 # Skip private structs/unions.
+                 logging.info('private struct/union')
+ 
+             elif m10:
+                 # Do a similar thing for normal structs as for typedefs above.
+                 # But we output the declaration as well in this case, so we
+                 # can differentiate it from a typedef.
+                 structsym = m10.group(1).upper()
+                 logging.info('%s:%s', structsym, m10.group(2))
+EOF
+