Commit 9635af4d authored by Jim Meyering's avatar Jim Meyering
Browse files

check-module: revive

* check-module: Ignore legit, duplicate-inclusion violations.
parent f176f43f
#!/usr/bin/perl -w #!/usr/bin/perl -w
# Check a gnulib module. # Check a gnulib module.
# Copyright (C) 2005, 2006, 2007 Free Software Foundation, Inc. # Copyright (C) 2005, 2006, 2007, 2009 Free Software Foundation, Inc.
# This file is free software: you can redistribute it and/or modify it # This file is free software: you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by # under the terms of the GNU General Public License as published by
...@@ -37,6 +37,7 @@ ...@@ -37,6 +37,7 @@
use strict; use strict;
use Getopt::Long; use Getopt::Long;
use File::Basename;
#use Coda; #use Coda;
my $COPYRIGHT_NOTICE = "Copyright (C) 2006 Free Software Foundation, Inc.\n". my $COPYRIGHT_NOTICE = "Copyright (C) 2006 Free Software Foundation, Inc.\n".
...@@ -158,7 +159,16 @@ sub find_included_lib_files ($) ...@@ -158,7 +159,16 @@ sub find_included_lib_files ($)
# Special cases... # Special cases...
my %special_non_dup = ( 'fnmatch_loop.c' => 1, my %special_non_dup = ( 'fnmatch_loop.c' => 1,
'regex.c' => 1, 'at-func.c' => 1 ); 'regex.c' => 1, 'at-func.c' => 1,
'vasnprintf.c' => 1
);
my %dup_include_ok;
$dup_include_ok{'vasnprintf.c'}{'isnand-nolibm.h'} = 1;
$dup_include_ok{'vasnprintf.c'}{'isnanl-nolibm.h'} = 1;
$dup_include_ok{'vasnprintf.c'}{'fpucw.h'} = 1;
$dup_include_ok{'gen-uni-tables.c'}{'3level.h'} = 1;
$dup_include_ok{'csharpexec.c'}{'classpath.c'} = 1;
$dup_include_ok{'csharpexec.c'}{'classpath.h'} = 1;
my %inc; my %inc;
open FH, '<', $file open FH, '<', $file
...@@ -176,6 +186,7 @@ sub find_included_lib_files ($) ...@@ -176,6 +186,7 @@ sub find_included_lib_files ($)
chomp $line; chomp $line;
$line =~ s/".*//; $line =~ s/".*//;
exists $inc{$line} && ! exists $special_non_dup{$line} exists $inc{$line} && ! exists $special_non_dup{$line}
&& ! exists $dup_include_ok{basename $file}{$line}
and warn "$ME: $file: duplicate inclusion of $line\n"; and warn "$ME: $file: duplicate inclusion of $line\n";
$inc{$line} = 1; $inc{$line} = 1;
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment