]> git.ipfire.org Git - thirdparty/openssl.git/blame - util/mkfiles.pl
Constify
[thirdparty/openssl.git] / util / mkfiles.pl
CommitLineData
e2d795cb
DSH
1#!/usr/local/bin/perl
2#
3# This is a hacked version of files.pl for systems that can't do a 'make files'.
4# Do a perl util/mkminfo.pl >MINFO to build MINFO
5# Written by Steve Henson 1999.
6
7# List of directories to process
8
9my @dirs = (
ee0508d4 10".",
e2d795cb
DSH
11"crypto",
12"crypto/md2",
3009458e 13"crypto/md4",
e2d795cb
DSH
14"crypto/md5",
15"crypto/sha",
16"crypto/mdc2",
17"crypto/hmac",
18"crypto/ripemd",
19"crypto/des",
20"crypto/rc2",
21"crypto/rc4",
22"crypto/rc5",
23"crypto/idea",
24"crypto/bf",
25"crypto/cast",
6f9079fd 26"crypto/aes",
e2d795cb
DSH
27"crypto/bn",
28"crypto/rsa",
29"crypto/dsa",
9ec0126e 30"crypto/dso",
e2d795cb 31"crypto/dh",
b4f682d3 32"crypto/ec",
b2be73e4 33"crypto/ecdh",
01682a8b 34"crypto/ecdsa",
e2d795cb
DSH
35"crypto/buffer",
36"crypto/bio",
37"crypto/stack",
38"crypto/lhash",
39"crypto/rand",
40"crypto/err",
41"crypto/objects",
42"crypto/evp",
43"crypto/asn1",
44"crypto/pem",
45"crypto/x509",
46"crypto/x509v3",
47"crypto/conf",
48"crypto/txt_db",
49"crypto/pkcs7",
ee0508d4 50"crypto/pkcs12",
e2d795cb 51"crypto/comp",
5270e702 52"crypto/engine",
eb64730b 53"crypto/ocsp",
14056ee2 54"crypto/ui",
d1149393 55"crypto/krb5",
e2d795cb 56"ssl",
e2d795cb
DSH
57"apps",
58"test",
59"tools"
60);
61
e2d795cb
DSH
62foreach (@dirs) {
63 &files_dir ($_, "Makefile.ssl");
64}
65
66exit(0);
67
68sub files_dir
69{
70my ($dir, $makefile) = @_;
71
72my %sym;
73
74open (IN, "$dir/$makefile") || die "Can't open $dir/$makefile";
75
76my $s="";
77
78while (<IN>)
79 {
80 chop;
81 s/#.*//;
82 if (/^(\S+)\s*=\s*(.*)$/)
83 {
84 $o="";
85 ($s,$b)=($1,$2);
86 for (;;)
87 {
88 if ($b =~ /\\$/)
89 {
90 chop($b);
91 $o.=$b." ";
92 $b=<IN>;
93 chop($b);
94 }
95 else
96 {
97 $o.=$b." ";
98 last;
99 }
100 }
101 $o =~ s/^\s+//;
102 $o =~ s/\s+$//;
103 $o =~ s/\s+/ /g;
104
105 $o =~ s/\$[({]([^)}]+)[)}]/$sym{$1}/g;
106 $sym{$s}=$o;
107 }
108 }
109
110print "RELATIVE_DIRECTORY=$dir\n";
111
112foreach (sort keys %sym)
113 {
114 print "$_=$sym{$_}\n";
115 }
116print "RELATIVE_DIRECTORY=\n";
117
118close (IN);
119}