Re: [PATCH v1] checkpatch: allow build files to reference other build files

From: Joe Perches
Date: Fri Jan 12 2024 - 13:49:21 EST


On Fri, 2024-01-12 at 10:34 -0800, Will McVicker wrote:
> Add an exception to the EMBEDDED_FILENAME warning for build files. This
> fixes the below warnings where the Kconfig and Makefile files reference
> other similarly named build files.
>
> WARNING:EMBEDDED_FILENAME: It's generally not useful to have the
> filename in the file
> #24: FILE: Kconfig:34:
> +source "drivers/willmcvicker/Kconfig"
>
> WARNING:EMBEDDED_FILENAME: It's generally not useful to have the
> filename in the file
> #36: FILE: Makefile:667:
> + } > Makefile

No need to wrap here I think.

> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
[]
> @@ -3785,7 +3785,9 @@ sub process {
> }
>
> # check for embedded filenames
> - if ($rawline =~ /^\+.*\b\Q$realfile\E\b/) {
> + if ($rawline =~ /^\+.*\b\Q$realfile\E\b/ &&
> + $realfile !~ /Kconfig.*/ &&
> + $realfile !~ /Makefile.*/) {

Align to open parenthesis please.
It's not useful to have .* before the /

So perhaps better to be

if ($rawline =~ /^\+.*\b\Q$realfile\E\b/ &&
$realfile !~ /(?:Kconfig|Makefile)/) {

> WARN("EMBEDDED_FILENAME",
> "It's generally not useful to have the filename in the file\n" . $herecurr);
> }