2021-07-27 03:00:17

by Randy Dunlap

[permalink] [raw]
Subject: [PATCH] scripts: checkversion: modernize linux/version.h search strings

Update scripts/checkversion.pl to recognize the current contents
of <linux/version.h> and both of its current locations.

Also update my email address.

Signed-off-by: Randy Dunlap <[email protected]>
Cc: Masahiro Yamada <[email protected]>
Cc: Andrew Morton <[email protected]>
---
scripts/checkversion.pl | 18 +++++++++++-------
1 file changed, 11 insertions(+), 7 deletions(-)

--- linux-next-20210723.orig/scripts/checkversion.pl
+++ linux-next-20210723/scripts/checkversion.pl
@@ -1,10 +1,10 @@
#! /usr/bin/env perl
# SPDX-License-Identifier: GPL-2.0
#
-# checkversion find uses of LINUX_VERSION_CODE or KERNEL_VERSION
-# without including <linux/version.h>, or cases of
-# including <linux/version.h> that don't need it.
-# Copyright (C) 2003, Randy Dunlap <[email protected]>
+# checkversion finds uses of all macros in <linux/version.h>
+# where the source files do not #include <linux/version.h>; or cases
+# of including <linux/version.h> where it is not needed.
+# Copyright (C) 2003, Randy Dunlap <[email protected]>

use strict;

@@ -13,7 +13,8 @@ $| = 1;
my $debugging;

foreach my $file (@ARGV) {
- next if $file =~ "include/linux/version\.h";
+ next if $file =~ "include/generated/uapi/linux/version\.h";
+ next if $file =~ "usr/include/linux/version\.h";
# Open this file.
open( my $f, '<', $file )
or die "Can't open $file: $!\n";
@@ -41,8 +42,11 @@ foreach my $file (@ARGV) {
$iLinuxVersion = $. if m/^\s*#\s*include\s*<linux\/version\.h>/o;
}

- # Look for uses: LINUX_VERSION_CODE, KERNEL_VERSION, UTS_RELEASE
- if (($_ =~ /LINUX_VERSION_CODE/) || ($_ =~ /\WKERNEL_VERSION/)) {
+ # Look for uses: LINUX_VERSION_CODE, KERNEL_VERSION,
+ # LINUX_VERSION_MAJOR, LINUX_VERSION_PATCHLEVEL, LINUX_VERSION_SUBLEVEL
+ if (($_ =~ /LINUX_VERSION_CODE/) || ($_ =~ /\WKERNEL_VERSION/) ||
+ ($_ =~ /LINUX_VERSION_MAJOR/) || ($_ =~ /LINUX_VERSION_PATCHLEVEL/) ||
+ ($_ =~ /LINUX_VERSION_SUBLEVEL/)) {
$fUseVersion = 1;
last if $iLinuxVersion;
}


2021-08-01 03:02:28

by Masahiro Yamada

[permalink] [raw]
Subject: Re: [PATCH] scripts: checkversion: modernize linux/version.h search strings

On Tue, Jul 27, 2021 at 11:57 AM Randy Dunlap <[email protected]> wrote:
>
> Update scripts/checkversion.pl to recognize the current contents
> of <linux/version.h> and both of its current locations.
>
> Also update my email address.
>
> Signed-off-by: Randy Dunlap <[email protected]>
> Cc: Masahiro Yamada <[email protected]>
> Cc: Andrew Morton <[email protected]>
> ---
> scripts/checkversion.pl | 18 +++++++++++-------
> 1 file changed, 11 insertions(+), 7 deletions(-)


Applied to linux-kbuild. Thanks.


> --- linux-next-20210723.orig/scripts/checkversion.pl
> +++ linux-next-20210723/scripts/checkversion.pl
> @@ -1,10 +1,10 @@
> #! /usr/bin/env perl
> # SPDX-License-Identifier: GPL-2.0
> #
> -# checkversion find uses of LINUX_VERSION_CODE or KERNEL_VERSION
> -# without including <linux/version.h>, or cases of
> -# including <linux/version.h> that don't need it.
> -# Copyright (C) 2003, Randy Dunlap <[email protected]>
> +# checkversion finds uses of all macros in <linux/version.h>
> +# where the source files do not #include <linux/version.h>; or cases
> +# of including <linux/version.h> where it is not needed.
> +# Copyright (C) 2003, Randy Dunlap <[email protected]>
>
> use strict;
>
> @@ -13,7 +13,8 @@ $| = 1;
> my $debugging;
>
> foreach my $file (@ARGV) {
> - next if $file =~ "include/linux/version\.h";
> + next if $file =~ "include/generated/uapi/linux/version\.h";
> + next if $file =~ "usr/include/linux/version\.h";
> # Open this file.
> open( my $f, '<', $file )
> or die "Can't open $file: $!\n";
> @@ -41,8 +42,11 @@ foreach my $file (@ARGV) {
> $iLinuxVersion = $. if m/^\s*#\s*include\s*<linux\/version\.h>/o;
> }
>
> - # Look for uses: LINUX_VERSION_CODE, KERNEL_VERSION, UTS_RELEASE
> - if (($_ =~ /LINUX_VERSION_CODE/) || ($_ =~ /\WKERNEL_VERSION/)) {
> + # Look for uses: LINUX_VERSION_CODE, KERNEL_VERSION,
> + # LINUX_VERSION_MAJOR, LINUX_VERSION_PATCHLEVEL, LINUX_VERSION_SUBLEVEL
> + if (($_ =~ /LINUX_VERSION_CODE/) || ($_ =~ /\WKERNEL_VERSION/) ||
> + ($_ =~ /LINUX_VERSION_MAJOR/) || ($_ =~ /LINUX_VERSION_PATCHLEVEL/) ||
> + ($_ =~ /LINUX_VERSION_SUBLEVEL/)) {
> $fUseVersion = 1;
> last if $iLinuxVersion;
> }



--
Best Regards
Masahiro Yamada