While this doesn't make sense for production Kernels, in order to avoid regressions when documents are touched, let's add a check target at the make file.
Unified · Split
| @@ -0,0 +1,13 @@ | ||
| 1 | +config WARN_MISSING_DOCUMENTS | |
| 2 | + | |
| 3 | + bool "Warn if there's a missing documentation file" | |
| 4 | + depends on COMPILE_TEST | |
| 5 | + help | |
| 6 | + It is not uncommon that a document gets renamed. | |
| 7 | + This option makes the Kernel to check for missing dependencies, | |
| 8 | + warning when something is missing. Works only if the Kernel | |
| 9 | + is built from a git tree. | |
| 10 | + | |
| 11 | + If unsure, select 'N'. | |
| 12 | + | |
| 13 | + | |
| @@ -4,6 +4,11 @@ · 3 unmodified lines | ||
| 4 | 4 | |
| 5 | 5 | subdir-y := devicetree/bindings/ |
| 6 | 6 | |
| 7 | +# Check for broken documentation file references | |
| 8 | +ifeq ($(CONFIG_WARN_MISSING_DOCUMENTS),y) | |
| 9 | +$(shell $(srctree)/scripts/documentation-file-ref-check --warn) | |
| 10 | +endif | |
| 11 | + | |
| 7 | 12 | # You can set these variables from the command line. |
| 8 | 13 | SPHINXBUILD = sphinx-build |
| 9 | 14 | SPHINXOPTS = |
| @@ -30,3 +30,5 @@ source "crypto/Kconfig" · 29 unmodified lines | ||
| 30 | 30 | source "lib/Kconfig" |
| 31 | 31 | |
| 32 | 32 | source "lib/Kconfig.debug" |
| 33 | + | |
| 34 | +source "Documentation/Kconfig" | |
| @@ -22,9 +22,16 @@ $scriptname =~ s,.*/([^/]+/),$1,; · 21 unmodified lines | ||
| 22 | 22 | # Parse arguments |
| 23 | 23 | my $help = 0; |
| 24 | 24 | my $fix = 0; |
| 25 | +my $warn = 0; | |
| 26 | + | |
| 27 | +if (! -d ".git") { | |
| 28 | + printf "Warning: can't check if file exists, as this is not a git tree"; | |
| 29 | + exit 0; | |
| 30 | +} | |
| 25 | 31 | |
| 26 | 32 | GetOptions( |
| 27 | 33 | 'fix' => \$fix, |
| 34 | + 'warn' => \$warn, | |
| 28 | 35 | 'h|help|usage' => \$help, |
| 29 | 36 | ); |
| 30 | 37 | |
| @@ -139,6 +146,8 @@ while (<IN>) { · 108 unmodified lines | ||
| 139 | 146 | if (!($ref =~ m/(scripts|Kconfig|Kbuild)/)) { |
| 140 | 147 | $broken_ref{$ref}++; |
| 141 | 148 | } |
| 149 | + } elsif ($warn) { | |
| 150 | + print STDERR "Warning: $f references a file that doesn't exist: $fulref\n"; | |
| 142 | 151 | } else { |
| 143 | 152 | print STDERR "$f: $fulref\n"; |
| 144 | 153 | } |