# Regex to catch libtool commands and not lines which show commands executed
# by libtool (e.g. libtool: link: ...).
my $libtool_regex = qr/\blibtool\s.*--mode=/;
+my $libtool_link_regex = qr/\blibtool: link: /;
# List of source file extensions which require preprocessing.
my @source_preprocess_compile_cpp = (
# is_non_verbose_build()).
next if $skip;
+ my $orig_line = $line;
+
# Remove everything until and including the compiler command. Makes
# checks easier and faster.
$line =~ s/^.*?$cc_regex//o;
}
# These file types require preprocessing.
if (extension_found(\%extensions_preprocess, @extensions)) {
- $preprocess = 1;
+ # Prevent false positives with "libtool: link: g++ -include test.h
+ # .." compiler lines.
+ if ($orig_line !~ /$libtool_link_regex/o) {
+ $preprocess = 1;
+ }
}
if (not $flag_preprocess) {