X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;ds=sidebyside;f=bin%2Fblhc;h=57ea0005df4f17712ef3e775d0e6ba8f1a829f12;hb=5bba87ced3180480ea9d147b300517b79ac15136;hp=3f17428a424befb116ed17ecb9b90da4fae55fd0;hpb=6baf992d954332df75b8374876455734415dadac;p=blhc%2Fblhc.git diff --git a/bin/blhc b/bin/blhc index 3f17428..57ea000 100755 --- a/bin/blhc +++ b/bin/blhc @@ -575,7 +575,7 @@ if (scalar @option_ignore_flag > 0) { # Same for arch specific ignore flags, but only prepare here. if (scalar @option_ignore_arch_flag > 0) { foreach my $ignore (@option_ignore_arch_flag) { - my ($ignore_arch, $ignore_flag) = split ':', $ignore, 2; + my ($ignore_arch, $ignore_flag) = split /:/, $ignore, 2; if (not $ignore_arch or not $ignore_flag) { printf STDERR 'Value "%s" invalid for option ignore-arch-flag ' @@ -601,7 +601,7 @@ foreach my $ignore (@option_ignore_line) { # Same for arch specific ignore lines. if (scalar @option_ignore_arch_line > 0) { foreach my $ignore (@option_ignore_arch_line) { - my ($ignore_arch, $ignore_line) = split ':', $ignore, 2; + my ($ignore_arch, $ignore_line) = split /:/, $ignore, 2; if (not $ignore_arch or not $ignore_line) { printf STDERR 'Value "%s" invalid for option ignore-arch-line ' @@ -641,8 +641,8 @@ foreach my $file (@ARGV) { # only, doesn't use the dpkg-buildpackage header. Necessary to ignore # build logs which aren't built (wrong architecture, build error, # etc.). - if (not $arch and $line =~ /^Architecture: (.+)$/) { - $arch = $1; + if (not $arch and index($line, 'Architecture: ') == 0) { + $arch = substr $line, 14, -1; # -1 to ignore '\n' at the end } # dpkg-buildflags only provides hardening flags since 1.16.1, don't @@ -713,12 +713,13 @@ foreach my $file (@ARGV) { # And stop at the end of the build log. Package details (reported by # the buildd logs) are not important for us. This also prevents false # positives. - last if $line =~ /^Build finished at \d{8}-\d{4}$/; + last if index($line, 'Build finished at ') == 0 + and $line =~ /^Build finished at \d{8}-\d{4}$/; # Detect architecture automatically unless overridden. if (not $arch - and $line =~ /^dpkg-buildpackage: host architecture (.+)$/) { - $arch = $1; + and index($line, 'dpkg-buildpackage: host architecture ') == 0) { + $arch = substr $line, 37, -1; # -1 to ignore '\n' at the end } # Ignore compiler warnings for now. @@ -907,9 +908,9 @@ foreach my $file (@ARGV) { # Ignore flags for this arch if requested. if ($arch and exists $option_ignore_arch_flag{$arch}) { - my @flag_refs = (\@cflags, \@cxxflags, \@cppflags, \@ldflags); + my @local_flag_refs = (\@cflags, \@cxxflags, \@cppflags, \@ldflags); - remove_flags(\@flag_refs, + remove_flags(\@local_flag_refs, \%flag_renames, @{$option_ignore_arch_flag{$arch}}); } @@ -1386,7 +1387,7 @@ Simon Ruderich, Esimon@ruderich.orgE Thanks to to Bernhard R. Link Ebrlink@debian.orgE and Jaria Alto Ejari.aalto@cante.netE for their valuable input and suggestions. -=head1 COPYRIGHT AND LICENSE +=head1 LICENSE AND COPYRIGHT Copyright (C) 2012 by Simon Ruderich