mkfiles.pl revision 55714
155714Skris#!/usr/local/bin/perl 255714Skris# 355714Skris# This is a hacked version of files.pl for systems that can't do a 'make files'. 455714Skris# Do a perl util/mkminfo.pl >MINFO to build MINFO 555714Skris# Written by Steve Henson 1999. 655714Skris 755714Skris# List of directories to process 855714Skris 955714Skrismy @dirs = ( 1055714Skris".", 1155714Skris"crypto", 1255714Skris"crypto/md2", 1355714Skris"crypto/md5", 1455714Skris"crypto/sha", 1555714Skris"crypto/mdc2", 1655714Skris"crypto/hmac", 1755714Skris"crypto/ripemd", 1855714Skris"crypto/des", 1955714Skris"crypto/rc2", 2055714Skris"crypto/rc4", 2155714Skris"crypto/rc5", 2255714Skris"crypto/idea", 2355714Skris"crypto/bf", 2455714Skris"crypto/cast", 2555714Skris"crypto/bn", 2655714Skris"crypto/rsa", 2755714Skris"crypto/dsa", 2855714Skris"crypto/dh", 2955714Skris"crypto/buffer", 3055714Skris"crypto/bio", 3155714Skris"crypto/stack", 3255714Skris"crypto/lhash", 3355714Skris"crypto/rand", 3455714Skris"crypto/err", 3555714Skris"crypto/objects", 3655714Skris"crypto/evp", 3755714Skris"crypto/asn1", 3855714Skris"crypto/pem", 3955714Skris"crypto/x509", 4055714Skris"crypto/x509v3", 4155714Skris"crypto/conf", 4255714Skris"crypto/txt_db", 4355714Skris"crypto/pkcs7", 4455714Skris"crypto/pkcs12", 4555714Skris"crypto/comp", 4655714Skris"ssl", 4755714Skris"rsaref", 4855714Skris"apps", 4955714Skris"test", 5055714Skris"tools" 5155714Skris); 5255714Skris 5355714Skrisforeach (@dirs) { 5455714Skris &files_dir ($_, "Makefile.ssl"); 5555714Skris} 5655714Skris 5755714Skrisexit(0); 5855714Skris 5955714Skrissub files_dir 6055714Skris{ 6155714Skrismy ($dir, $makefile) = @_; 6255714Skris 6355714Skrismy %sym; 6455714Skris 6555714Skrisopen (IN, "$dir/$makefile") || die "Can't open $dir/$makefile"; 6655714Skris 6755714Skrismy $s=""; 6855714Skris 6955714Skriswhile (<IN>) 7055714Skris { 7155714Skris chop; 7255714Skris s/#.*//; 7355714Skris if (/^(\S+)\s*=\s*(.*)$/) 7455714Skris { 7555714Skris $o=""; 7655714Skris ($s,$b)=($1,$2); 7755714Skris for (;;) 7855714Skris { 7955714Skris if ($b =~ /\\$/) 8055714Skris { 8155714Skris chop($b); 8255714Skris $o.=$b." "; 8355714Skris $b=<IN>; 8455714Skris chop($b); 8555714Skris } 8655714Skris else 8755714Skris { 8855714Skris $o.=$b." "; 8955714Skris last; 9055714Skris } 9155714Skris } 9255714Skris $o =~ s/^\s+//; 9355714Skris $o =~ s/\s+$//; 9455714Skris $o =~ s/\s+/ /g; 9555714Skris 9655714Skris $o =~ s/\$[({]([^)}]+)[)}]/$sym{$1}/g; 9755714Skris $sym{$s}=$o; 9855714Skris } 9955714Skris } 10055714Skris 10155714Skrisprint "RELATIVE_DIRECTORY=$dir\n"; 10255714Skris 10355714Skrisforeach (sort keys %sym) 10455714Skris { 10555714Skris print "$_=$sym{$_}\n"; 10655714Skris } 10755714Skrisprint "RELATIVE_DIRECTORY=\n"; 10855714Skris 10955714Skrisclose (IN); 11055714Skris} 111