summaryrefslogtreecommitdiffstats
path: root/util/check-buildinfo.pl
blob: f7d3baa9538154ffbaee5f3ad330ae4cb2c775f1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#! /usr/bin/perl

my %MINFO_source = ();

open my $minfo, "MINFO" or die "Couldn't open MINFO: $!\n";
my $reldir = "";
my $searchterm = "";
my $goal = "";
while (<$minfo>) {
    s|\R$||;

    if (/^RELATIVE_DIRECTORY=(.*)$/) {
        $reldir=$1;
        next;
    }

    if (/^LIBSRC=(.*)$/) {
        my @src = sort split(/\s+/, $1);
        if ($reldir =~ m|^crypto(/.*)?$|) {
            $MINFO_source{"libcrypto|$reldir"} = [ @src ];
        } elsif ($reldir eq "ssl") {
            $MINFO_source{"libssl|$reldir"} = [ @src ];
        } elsif ($reldir ne "engines") {
            warn "LIBSRC found in MINFO for $reldir";
        }
        next;
    }

    if (/^(?:TEST)?LIBNAMES=(.*)$/) {
        my @names = sort split(/\s+/, $1);
        if ($reldir eq "engines") {
            push @{$MINFO_source{"engines|$reldir"}}, @names;
        } else {
            warn "(TEST)?LIBNAMES found in MINFO for $reldir";
        }
        next;
    }
    
    } elsif ($reldir eq "apps") {
        $searchterm = "EXE_SRC";
        $goal = "apps|openssl";
    } elsif ($reldir eq "engines") {
        $searchterm = "