Commit 635bd409 authored by Richard Levitte's avatar Richard Levitte
Browse files

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: default avatarMatt Caswell <matt@openssl.org>
parent 4a4e250c
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -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;