diff options
author | Richard Levitte <levitte@openssl.org> | 2016-03-09 14:33:37 +0100 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2016-03-09 14:53:30 +0100 |
commit | 635bd409b354a6444728bb4ddf07272cf58e1cc9 (patch) | |
tree | c5b81d74b3c13c1e0f416c84ce3e66773fb63ed5 /Configure | |
parent | 4a4e250c2ad187e0b078ca10b77ff00e69e5eca9 (diff) |
In build.info, an IF within a clause that's skipped over shouldn't apply
If we find an IF within a clause that's skipped over, set it to be
skipped as well.
Reviewed-by: Matt Caswell <matt@openssl.org>
Diffstat (limited to 'Configure')
-rwxr-xr-x | Configure | 8 |
1 files changed, 7 insertions, 1 deletions
@@ -1333,7 +1333,13 @@ if ($builder eq "unified") { $l1 =~ s/\\$//; $l1.$l2 }), # Info we're looking for qr/^\s*IF\[((?:\\.|[^\\\]])*)\]\s*$/ - => sub { push @skip, !! $1; }, + => sub { + if (! @skip || $skip[$#skip] >= 0) { + push @skip, !! $1; + } else { + push @skip, -1; + } + }, qr/^\s*ELSIF\[((?:\\.|[^\\\]])*)\]\s*$/ => sub { die "ELSIF out of scope" if ! @skip; die "ELSIF following ELSE" if abs($skip[$#skip]) == 2; |