headers_install: use local file handles
Better practice to use 3 arg open and local file handles. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Acked-by: WANG Cong <amwang@redhat.com> Cc: Michal Marek <mmarek@suse.cz> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Michal Marek <mmarek@suse.cz>
This commit is contained in:
Родитель
dbbe33e99f
Коммит
bae4cecc09
|
@ -23,13 +23,13 @@ my ($readdir, $installdir, $arch, @files) = @ARGV;
|
|||
my $unifdef = "scripts/unifdef -U__KERNEL__ -D__EXPORTED_HEADERS__";
|
||||
|
||||
foreach my $file (@files) {
|
||||
local *INFILE;
|
||||
local *OUTFILE;
|
||||
my $tmpfile = "$installdir/$file.tmp";
|
||||
open(INFILE, "<$readdir/$file")
|
||||
or die "$readdir/$file: $!\n";
|
||||
open(OUTFILE, ">$tmpfile") or die "$tmpfile: $!\n";
|
||||
while (my $line = <INFILE>) {
|
||||
|
||||
open(my $in, '<', "$readdir/$file")
|
||||
or die "$readdir/$file: $!\n";
|
||||
open(my $out, '>', $tmpfile)
|
||||
or die "$tmpfile: $!\n";
|
||||
while (my $line = <$in>) {
|
||||
$line =~ s/([\s(])__user\s/$1/g;
|
||||
$line =~ s/([\s(])__force\s/$1/g;
|
||||
$line =~ s/([\s(])__iomem\s/$1/g;
|
||||
|
@ -39,10 +39,11 @@ foreach my $file (@files) {
|
|||
$line =~ s/(^|\s)(inline)\b/$1__$2__/g;
|
||||
$line =~ s/(^|\s)(asm)\b(\s|[(]|$)/$1__$2__$3/g;
|
||||
$line =~ s/(^|\s|[(])(volatile)\b(\s|[(]|$)/$1__$2__$3/g;
|
||||
printf OUTFILE "%s", $line;
|
||||
printf {$out} "%s", $line;
|
||||
}
|
||||
close OUTFILE;
|
||||
close INFILE;
|
||||
close $out;
|
||||
close $in;
|
||||
|
||||
system $unifdef . " $tmpfile > $installdir/$file";
|
||||
unlink $tmpfile;
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче