mirror of
https://gitlab.com/qemu-project/qemu.git
synced 2025-10-30 07:57:14 +08:00
We can now delete the old Perl kernel-doc script. For posterity,
this is a complete diff of the local changes that we were carrying
between the kernel's Perl script as of kernel commit 72b97d0b911872ba
(the last time we synced it) and our local copy:
--- /tmp/kdoc 2025-08-14 10:42:47.620331939 +0100
+++ scripts/kernel-doc 2025-02-17 10:44:34.528421457 +0000
@@ -1,5 +1,5 @@
#!/usr/bin/env perl
-# SPDX-License-Identifier: GPL-2.0
+# SPDX-License-Identifier: GPL-2.0-only
use warnings;
use strict;
@@ -224,12 +224,12 @@
my $type_fp_param = '\@(\w+)\(\)'; # Special RST handling for func ptr params
my $type_fp_param2 = '\@(\w+->\S+)\(\)'; # Special RST handling for structs with func ptr params
my $type_env = '(\$\w+)';
-my $type_enum = '\&(enum\s*([_\w]+))';
-my $type_struct = '\&(struct\s*([_\w]+))';
-my $type_typedef = '\&(typedef\s*([_\w]+))';
-my $type_union = '\&(union\s*([_\w]+))';
-my $type_member = '\&([_\w]+)(\.|->)([_\w]+)';
-my $type_fallback = '\&([_\w]+)';
+my $type_enum = '#(enum\s*([_\w]+))';
+my $type_struct = '#(struct\s*([_\w]+))';
+my $type_typedef = '#(([A-Z][_\w]*))';
+my $type_union = '#(union\s*([_\w]+))';
+my $type_member = '#([_\w]+)(\.|->)([_\w]+)';
+my $type_fallback = '(?!)'; # this never matches
my $type_member_func = $type_member . '\(\)';
# Output conversion substitutions.
@@ -1745,6 +1745,9 @@
)+
\)\)\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
@@ -2057,7 +2060,7 @@
}
elsif (/$doc_decl/o) {
$identifier = $1;
- if (/\s*([\w\s]+?)(\(\))?\s*-/) {
+ if (/\s*([\w\s]+?)(\s*-|:)/) {
$identifier = $1;
}
@@ -2067,7 +2070,7 @@
$contents = "";
$section = $section_default;
$new_start_line = $. + 1;
- if (/-(.*)/) {
+ if (/[-:](.*)/) {
# strip leading/trailing/multiple spaces
$descr= $1;
$descr =~ s/^\s*//;
These changes correspond to:
06e2329636 license: Update deprecated SPDX tag GPL-2.0 to GPL-2.0-only
(a bulk change which we won't bother to re-apply to this third-party script)
b30df2751e scripts/kernel-doc: strip QEMU_ from function definitions
4cf4179441 docs: tweak kernel-doc for QEMU coding standards
We have already applied the equivalent of these changes to the
Python code in libs/kdoc/ in the preceding commits.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
63 lines
1.2 KiB
INI
63 lines
1.2 KiB
INI
# EditorConfig is a file format and collection of text editor plugins
|
|
# for maintaining consistent coding styles between different editors
|
|
# and IDEs. Most popular editors support this either natively or via
|
|
# plugin.
|
|
#
|
|
# Check https://editorconfig.org for details.
|
|
#
|
|
# Emacs: you need https://github.com/10sr/editorconfig-custom-majormode-el
|
|
# to automatically enable the appropriate major-mode for your files
|
|
# that aren't already caught by your existing config.
|
|
#
|
|
|
|
root = true
|
|
|
|
[*]
|
|
end_of_line = lf
|
|
insert_final_newline = true
|
|
charset = utf-8
|
|
|
|
[*.mak]
|
|
indent_style = tab
|
|
indent_size = 8
|
|
emacs_mode = makefile
|
|
|
|
[Makefile*]
|
|
indent_style = tab
|
|
indent_size = 8
|
|
emacs_mode = makefile
|
|
|
|
[*.{c,h,c.inc,h.inc}]
|
|
indent_style = space
|
|
indent_size = 4
|
|
emacs_mode = c
|
|
|
|
[*.sh]
|
|
indent_style = space
|
|
indent_size = 4
|
|
|
|
[*.{s,S}]
|
|
indent_style = tab
|
|
indent_size = 8
|
|
emacs_mode = asm
|
|
|
|
[*.{vert,frag}]
|
|
emacs_mode = glsl
|
|
|
|
[*.json]
|
|
indent_style = space
|
|
emacs_mode = python
|
|
|
|
# by default follow QEMU's style
|
|
[*.pl]
|
|
indent_style = space
|
|
indent_size = 4
|
|
emacs_mode = perl
|
|
|
|
# but user kernel "style" for imported scripts
|
|
[scripts/{get_maintainer.pl,checkpatch.pl}]
|
|
indent_style = tab
|
|
indent_size = 8
|
|
emacs_mode = perl
|
|
|