]> ruderich.org/simon Gitweb - blhc/blhc.git/blobdiff - bin/blhc
Improve compiler regex to be more compatible.
[blhc/blhc.git] / bin / blhc
index 0b4b681086bb009f85d9658882b49c88164dd4e4..a29313dfffb97dc2bee2b74f9c9f8e729f045ac6 100755 (executable)
--- a/bin/blhc
+++ b/bin/blhc
@@ -30,7 +30,9 @@ our $VERSION = '0.01';
 # CONSTANTS/VARIABLES
 
 # Regex to catch compiler commands.
-my $cc_regex = qr/(?:x86_64-linux-gnu-)?(?:(?<!\.)cc|gcc|g\+\+|c\+\+)(?:-[\d.]+)?/;
+my $cc_regex = qr/(?:[a-z0-9_]+-(?:linux|kfreebsd)-gnu(?:eabi|eabihf)?-)?
+                  (?:(?<!\.)cc|gcc|g\+\+|c\+\+)
+                  (?:-[\d.]+)?/x;
 # Regex to catch (GCC) compiler warnings.
 my $warning_regex = qr/^(.+?):([0-9]+):[0-9]+: warning: (.+?) \[(.+?)\]$/;
 
@@ -335,7 +337,11 @@ while (my $line = <>) {
             #
             # `./configure` output.
             next if not $non_verbose and $line =~ /^checking /;
-            next if $line =~ /^\s*(?:C|c)ompiler[\s.]*:\s+$cc_regex(?:\s-std=[a-z0-9:+]+)?\s*$/
+            next if $line =~ /^\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*-- Check for working (?:C|CXX) compiler: /
                     or $line =~ /^\s*(?:echo )?Using [A-Z_]+\s*=\s*/;