X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=bin%2Fblhc;h=3abb9791e189b0e3f43139de7d0182218469414d;hb=cb96ed22d2d46c34a1a06fea374eeb0c6cf0269b;hp=dc71cc1c940d1130660dd9574ba27aa7c72e6bb1;hpb=6bd8ae07ae91c53c36d219975bc3296b7af81045;p=blhc%2Fblhc.git diff --git a/bin/blhc b/bin/blhc index dc71cc1..3abb979 100755 --- a/bin/blhc +++ b/bin/blhc @@ -176,7 +176,8 @@ my $file_extension_regex = qr/ # terminated with "\n". /x; -# Expected (hardening) flags. All flags are used as regexps. +# Expected (hardening) flags. All flags are used as regexps (and compiled to +# real regexps below for better execution speed). my @def_cflags = ( '-g', '-O(?:2|3)', @@ -475,6 +476,7 @@ sub is_non_verbose_build { return 1; } +# Remove @flags from $flag_refs_ref, and $flag_renames_ref. sub remove_flags { my ($flag_refs_ref, $flag_renames_ref, @flags) = @_; @@ -492,6 +494,7 @@ sub remove_flags { return; } +# Modifies $flag_renames_ref hash. sub compile_flag_regexp { my ($flag_renames_ref, @flags) = @_; @@ -510,17 +513,16 @@ sub compile_flag_regexp { return @result; } +# Does any extension in @extensions exist in %{$extensions_ref}? sub extension_found { my ($extensions_ref, @extensions) = @_; - my $found = 0; foreach my $extension (@extensions) { if (exists $extensions_ref->{$extension}) { - $found = 1; - last; + return 1; } } - return $found; + return 0; } @@ -1023,7 +1025,8 @@ LINE: } next; } - # Even if it's a verbose build, we might have to skip this line. + # Even if it's a verbose build, we might have to skip this line (see + # is_non_verbose_build()). next if $skip; # Remove everything until and including the compiler command. Makes