summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/util/mkfiles.pl
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/util/mkfiles.pl')
-rw-r--r--src/lib/libcrypto/util/mkfiles.pl141
1 files changed, 141 insertions, 0 deletions
diff --git a/src/lib/libcrypto/util/mkfiles.pl b/src/lib/libcrypto/util/mkfiles.pl
new file mode 100644
index 0000000000..6d15831450
--- /dev/null
+++ b/src/lib/libcrypto/util/mkfiles.pl
@@ -0,0 +1,141 @@
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 = (
10".",
11"crypto",
12"crypto/md2",
13"crypto/md4",
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",
26"crypto/aes",
27"crypto/camellia",
28"crypto/seed",
29"crypto/modes",
30"crypto/bn",
31"crypto/rsa",
32"crypto/dsa",
33"crypto/dso",
34"crypto/dh",
35"crypto/ec",
36"crypto/ecdh",
37"crypto/ecdsa",
38"crypto/buffer",
39"crypto/bio",
40"crypto/stack",
41"crypto/lhash",
42"crypto/rand",
43"crypto/err",
44"crypto/objects",
45"crypto/evp",
46"crypto/asn1",
47"crypto/pem",
48"crypto/x509",
49"crypto/x509v3",
50"crypto/cms",
51"crypto/conf",
52"crypto/jpake",
53"crypto/txt_db",
54"crypto/pkcs7",
55"crypto/pkcs12",
56"crypto/comp",
57"crypto/engine",
58"crypto/ocsp",
59"crypto/ui",
60"crypto/krb5",
61#"crypto/store",
62"crypto/pqueue",
63"crypto/whrlpool",
64"crypto/ts",
65"ssl",
66"apps",
67"engines",
68"engines/ccgost",
69"test",
70"tools"
71);
72
73%top;
74
75foreach (@dirs) {
76 &files_dir ($_, "Makefile");
77}
78
79exit(0);
80
81sub files_dir
82{
83my ($dir, $makefile) = @_;
84
85my %sym;
86
87open (IN, "$dir/$makefile") || die "Can't open $dir/$makefile";
88
89my $s="";
90
91while (<IN>)
92 {
93 chop;
94 s/#.*//;
95 if (/^(\S+)\s*=\s*(.*)$/)
96 {
97 $o="";
98 ($s,$b)=($1,$2);
99 for (;;)
100 {
101 if ($b =~ /\\$/)
102 {
103 chop($b);
104 $o.=$b." ";
105 $b=<IN>;
106 chop($b);
107 }
108 else
109 {
110 $o.=$b." ";
111 last;
112 }
113 }
114 $o =~ s/^\s+//;
115 $o =~ s/\s+$//;
116 $o =~ s/\s+/ /g;
117
118 $o =~ s/\$[({]([^)}]+)[)}]/$top{$1} or $sym{$1}/ge;
119 $sym{$s}=($top{$s} or $o);
120 }
121 }
122
123print "RELATIVE_DIRECTORY=$dir\n";
124
125foreach (sort keys %sym)
126 {
127 print "$_=$sym{$_}\n";
128 }
129if ($dir eq "." && defined($sym{"BUILDENV"}))
130 {
131 foreach (split(' ',$sym{"BUILDENV"}))
132 {
133 /^(.+)=/;
134 $top{$1}=$sym{$1};
135 }
136 }
137
138print "RELATIVE_DIRECTORY=\n";
139
140close (IN);
141}