mkfiles.pl revision 238405
121673Sjkh#!/usr/local/bin/perl 216359Sasami# 316359Sasami# This is a hacked version of files.pl for systems that can't do a 'make files'. 416359Sasami# Do a perl util/mkminfo.pl >MINFO to build MINFO 516359Sasami# Written by Steve Henson 1999. 616359Sasami 716359Sasami# List of directories to process 816359Sasami 916359Sasamimy @dirs = ( 1016359Sasami".", 1116359Sasami"crypto", 1216359Sasami"crypto/md2", 1316359Sasami"crypto/md4", 1416359Sasami"crypto/md5", 1516359Sasami"crypto/sha", 1616359Sasami"crypto/mdc2", 1716359Sasami"crypto/hmac", 1819248Sasami"crypto/cmac", 1919248Sasami"crypto/ripemd", 2019326Sasami"crypto/des", 2116359Sasami"crypto/rc2", 2216359Sasami"crypto/rc4", 2316359Sasami"crypto/rc5", 2419122Sasami"crypto/idea", 2519122Sasami"crypto/bf", 2616359Sasami"crypto/cast", 2716359Sasami"crypto/aes", 2816359Sasami"crypto/camellia", 2916359Sasami"crypto/seed", 3017256Sasami"crypto/modes", 3118846Sasami"crypto/bn", 3218846Sasami"crypto/rsa", 3320129Sasami"crypto/dsa", 3419269Sasami"crypto/dso", 3518846Sasami"crypto/dh", 3617256Sasami"crypto/ec", 3717256Sasami"crypto/ecdh", 3817256Sasami"crypto/ecdsa", 3918208Sasami"crypto/buffer", 4019122Sasami"crypto/bio", 4119122Sasami"crypto/stack", 4219122Sasami"crypto/lhash", 4319122Sasami"crypto/rand", 4419122Sasami"crypto/err", 4518846Sasami"crypto/objects", 4618265Sasami"crypto/evp", 4718265Sasami"crypto/asn1", 4818208Sasami"crypto/pem", 4921773Skato"crypto/x509", 5021773Skato"crypto/x509v3", 5121773Skato"crypto/cms", 5221773Skato"crypto/conf", 5321773Skato"crypto/jpake", 5421773Skato"crypto/txt_db", 5521773Skato"crypto/pkcs7", 5621773Skato"crypto/pkcs12", 5721773Skato"crypto/comp", 5818208Sasami"crypto/engine", 5918208Sasami"crypto/ocsp", 6018265Sasami"crypto/ui", 6118265Sasami"crypto/krb5", 6218265Sasami#"crypto/store", 6318846Sasami"crypto/pqueue", 64"crypto/whrlpool", 65"crypto/ts", 66"crypto/srp", 67"ssl", 68"apps", 69"engines", 70"engines/ccgost", 71"test", 72"tools" 73); 74 75%top; 76 77foreach (@dirs) { 78 &files_dir ($_, "Makefile"); 79} 80 81exit(0); 82 83sub files_dir 84{ 85my ($dir, $makefile) = @_; 86 87my %sym; 88 89open (IN, "$dir/$makefile") || die "Can't open $dir/$makefile"; 90 91my $s=""; 92 93while (<IN>) 94 { 95 chop; 96 s/#.*//; 97 if (/^(\S+)\s*=\s*(.*)$/) 98 { 99 $o=""; 100 ($s,$b)=($1,$2); 101 for (;;) 102 { 103 if ($b =~ /\\$/) 104 { 105 chop($b); 106 $o.=$b." "; 107 $b=<IN>; 108 chop($b); 109 } 110 else 111 { 112 $o.=$b." "; 113 last; 114 } 115 } 116 $o =~ s/^\s+//; 117 $o =~ s/\s+$//; 118 $o =~ s/\s+/ /g; 119 120 $o =~ s/\$[({]([^)}]+)[)}]/$top{$1} or $sym{$1}/ge; 121 $sym{$s}=($top{$s} or $o); 122 } 123 } 124 125print "RELATIVE_DIRECTORY=$dir\n"; 126 127foreach (sort keys %sym) 128 { 129 print "$_=$sym{$_}\n"; 130 } 131if ($dir eq "." && defined($sym{"BUILDENV"})) 132 { 133 foreach (split(' ',$sym{"BUILDENV"})) 134 { 135 /^(.+)=/; 136 $top{$1}=$sym{$1}; 137 } 138 } 139 140print "RELATIVE_DIRECTORY=\n"; 141 142close (IN); 143} 144