Re: [PATCH] docs: license-rules.txt: cover SPDX headers on Python scripts

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Em Thu, 05 Sep 2019 10:45:36 -0700
Joe Perches <joe@xxxxxxxxxxx> escreveu:

> On Thu, 2019-09-05 at 09:07 -0300, Mauro Carvalho Chehab wrote:
> > There are currently 227 files that don't complain with the "up to line 3"
> > rule, including COPYING (with should probably be excluded from the check).
> > 
> > Patches are at:
> > 
> > 	https://git.linuxtv.org/mchehab/experimental.git/log/?h=spdx_pedantic
> > 
> > Btw, most violations are due to:
> > 
> > /*
> >  * SPDX...  
> 
> Hey Mauro.
> 
> Here's a little script to move all of the improperly located
> SPDX-License-Identifier lines in [.ch] files.
> 
> Using this command line:
> 
> $ git grep -n 'SPDX-License-Identifier: ' -- '*.[ch]' | \
>   grep -v ':1:' | perl move_spdx.pl
> 
> and
> 
> $ cat move_spdx.pl
> while (<>) {
>     /^([^:]+):([^:]+):(.*)/;
>     my ($file, $line, $spdx) = ($1, $2, $3);
>     $spdx =~ s/^\s*\/?\*\s*//;
>     $spdx =~ s/\s*\*\/\s*$//;
>     if ($file =~ /\.h$/) {
> 	$spdx = "/* $spdx */";
>     } else {
> 	$spdx = "// $spdx";
>     }
>     open(FH, '<', $file) or die $!;
>     my @lines = <FH>;
>     close FH;
>     open(FH, '>', $file) or die $!;
>     print FH "$spdx\n";
>     my $count = 0;
>     foreach (@lines) {
> 	$count++;
> 	next if ($count == $line);
> 	next if ($count == $line - 1 && $_ =~ /^\s*\*\s*$/);
> 	next if ($count == $line + 1 && $_ =~ /^\s*\*\s*$/);
> 	print FH "$_";
>     }
>     close FH;
> }
> 
> which gives this diff for today's -next

Nice script!

I did some changes on it, plus one change at the pedantic mode of
scripts/spdxcheck.py, and placed the corresponding patches at:

	https://git.linuxtv.org/mchehab/experimental.git/log/?h=spdx_pedantic

With that, we now have (next-20190904):

Warning: SPDX header for file Documentation/networking/caif/caif.rst is at line 2
Warning: SPDX header for file Documentation/networking/mac80211_hwsim/mac80211_hwsim.rst is at line 2
Warning: SPDX header for file tools/thermal/tmon/tmon.8 is at line 2

The first two are due to a ":orphan:" tag at the RST files. IMO, it makes
sense to have this at the very beginning of the files with weren't added
yet at the documentation body. Having them generating a warning is a plus.

The last one is interesting... what's the "very first line" where a
SPDX header tag should be on a man page?

Thanks,
Mauro



[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux