]> ruderich.org/simon Gitweb - blhc/blhc.git/blobdiff - bin/blhc
Handle more configure false positives.
[blhc/blhc.git] / bin / blhc
index 5f37c79023690487f34844969c538c39ef51560c..bf5f8ff58dc1edddd4208c703ee8c702d808266a 100755 (executable)
--- a/bin/blhc
+++ b/bin/blhc
@@ -134,9 +134,7 @@ sub all_flags_used {
         }
     }
 
-    if (scalar @missing_flags == 0) {
-        return 1;
-    }
+    return 1 if scalar @missing_flags == 0;
 
     @{$missing_flags_ref} = @missing_flags;
     return 0;
@@ -168,7 +166,7 @@ sub is_non_verbose_build {
     my ($line, $next_line, $skip_ref) = @_;
 
     if (not ($line =~ /^checking if you want to see long compiling messages\.\.\. no/
-                or $line =~ /^\s*\[?(?:CC|CCLD|CXX|CXXLD|LD)\]?\s+(.+?)$/
+                or $line =~ /^\s*\[?(?:CC|CCLD|CXX|CXXLD|LD|LINK)\]?\s+(.+?)$/
                 or $line =~ /^\s*(?:C|c)ompiling\s+(.+?)(?:\.\.\.)?$/
                 or $line =~ /^\s*(?:B|b)uilding (?:program|shared library)\s+(.+?)$/
                 or $line =~ /^\s*\[[\d ]+%\] Building (?:C|CXX) object (.+?)$/)) {
@@ -292,8 +290,8 @@ while (my $line = <>) {
         }
     }
 
-    # We skip over unimportant lines at the beginning to prevent false
-    # positives.
+    # We skip over unimportant lines at the beginning of the log to prevent
+    # false positives.
     $start = 1 if $line =~ /^dpkg-buildpackage:/;
     next if not $start;
 
@@ -309,7 +307,7 @@ while (my $line = <>) {
     # Remove all ANSI color sequences which are sometimes used in non-verbose
     # builds.
     $line = Term::ANSIColor::colorstrip($line);
-    # Also strip '\0xf' (delete previous character), used by Elink's build
+    # Also strip '\0xf' (delete previous character), used by Elinks' build
     # system.
     $line =~ s/\x0f//g;
     # And "ESC(B" which seems to be used on armhf and hurd (not sure what it
@@ -359,12 +357,12 @@ while (my $line = <>) {
             #
             # `./configure` output.
             next if not $non_verbose and $line =~ /^checking /;
-            next if $line =~ /^\s*(?:C\s+)?
-                               (?:C|c)ompiler[\s.]*:\s+
+            next if $line =~ /^\s*(?:Host\s+)?(?:C\s+)?
+                               (?:C|c)ompiler[\s.]*:?\s+
                                $cc_regex
                                (?:\s-std=[a-z0-9:+]+)?\s*$
                              /x
-                    or $line =~ /^\s*(?:- )?(?:CC|CXX)\s*=\s*$cc_regex\s*$/
+                    or $line =~ /^\s*(?:- )?(?:HOST_)?(?:CC|CXX)\s*=\s*$cc_regex\s*$/
                     or $line =~ /^\s*-- Check for working (?:C|CXX) compiler: /
                     or $line =~ /^\s*(?:echo )?Using [A-Z_]+\s*=\s*/;
             # Debian buildd output.