bat.sh revision 55714
155714Skris#!/usr/local/bin/perl 255714Skris 355714Skris$infile="/home/eay/ssl/SSLeay/MINFO"; 455714Skris 555714Skrisopen(IN,"<$infile") || die "unable to open $infile:$!\n"; 655714Skris$_=<IN>; 755714Skrisfor (;;) 855714Skris { 955714Skris chop; 1055714Skris 1155714Skris ($key,$val)=/^([^=]+)=(.*)/; 1255714Skris if ($key eq "RELATIVE_DIRECTORY") 1355714Skris { 1455714Skris if ($lib ne "") 1555714Skris { 1655714Skris $uc=$lib; 1755714Skris $uc =~ s/^lib(.*)\.a/$1/; 1855714Skris $uc =~ tr/a-z/A-Z/; 1955714Skris $lib_nam{$uc}=$uc; 2055714Skris $lib_obj{$uc}.=$libobj." "; 2155714Skris } 2255714Skris last if ($val eq "FINISHED"); 2355714Skris $lib=""; 2455714Skris $libobj=""; 2555714Skris $dir=$val; 2655714Skris } 2755714Skris 2855714Skris if ($key eq "TEST") 2955714Skris { $test.=&var_add($dir,$val); } 3055714Skris 3155714Skris if (($key eq "PROGS") || ($key eq "E_OBJ")) 3255714Skris { $e_exe.=&var_add($dir,$val); } 3355714Skris 3455714Skris if ($key eq "LIB") 3555714Skris { 3655714Skris $lib=$val; 3755714Skris $lib =~ s/^.*\/([^\/]+)$/$1/; 3855714Skris } 3955714Skris 4055714Skris if ($key eq "EXHEADER") 4155714Skris { $exheader.=&var_add($dir,$val); } 4255714Skris 4355714Skris if ($key eq "HEADER") 4455714Skris { $header.=&var_add($dir,$val); } 4555714Skris 4655714Skris if ($key eq "LIBSRC") 4755714Skris { $libsrc.=&var_add($dir,$val); } 4855714Skris 4955714Skris if (!($_=<IN>)) 5055714Skris { $_="RELATIVE_DIRECTORY=FINISHED\n"; } 5155714Skris } 5255714Skrisclose(IN); 5355714Skris 5455714Skris@a=split(/\s+/,$libsrc); 5555714Skrisforeach (@a) 5655714Skris { 5755714Skris print "${_}.c\n"; 5855714Skris } 5955714Skris 6055714Skrissub var_add 6155714Skris { 6255714Skris local($dir,$val)=@_; 6355714Skris local(@a,$_,$ret); 6455714Skris 6555714Skris return("") if $no_idea && $dir =~ /\/idea/; 6655714Skris return("") if $no_rc2 && $dir =~ /\/rc2/; 6755714Skris return("") if $no_rc4 && $dir =~ /\/rc4/; 6855714Skris return("") if $no_rsa && $dir =~ /\/rsa/; 6955714Skris return("") if $no_rsa && $dir =~ /^rsaref/; 7055714Skris return("") if $no_dsa && $dir =~ /\/dsa/; 7155714Skris return("") if $no_dh && $dir =~ /\/dh/; 7255714Skris if ($no_des && $dir =~ /\/des/) 7355714Skris { 7455714Skris if ($val =~ /read_pwd/) 7555714Skris { return("$dir/read_pwd "); } 7655714Skris else 7755714Skris { return(""); } 7855714Skris } 7955714Skris return("") if $no_mdc2 && $dir =~ /\/mdc2/; 8055714Skris return("") if $no_sock && $dir =~ /\/proxy/; 8155714Skris return("") if $no_bf && $dir =~ /\/bf/; 8255714Skris return("") if $no_cast && $dir =~ /\/cast/; 8355714Skris 8455714Skris $val =~ s/^\s*(.*)\s*$/$1/; 8555714Skris @a=split(/\s+/,$val); 8655714Skris grep(s/\.[och]$//,@a); 8755714Skris 8855714Skris @a=grep(!/^e_.*_3d$/,@a) if $no_des; 8955714Skris @a=grep(!/^e_.*_d$/,@a) if $no_des; 9055714Skris @a=grep(!/^e_.*_i$/,@a) if $no_idea; 9155714Skris @a=grep(!/^e_.*_r2$/,@a) if $no_rc2; 9255714Skris @a=grep(!/^e_.*_bf$/,@a) if $no_bf; 9355714Skris @a=grep(!/^e_.*_c$/,@a) if $no_cast; 9455714Skris @a=grep(!/^e_rc4$/,@a) if $no_rc4; 9555714Skris 9655714Skris @a=grep(!/(^s2_)|(^s23_)/,@a) if $no_ssl2; 9755714Skris @a=grep(!/(^s3_)|(^s23_)/,@a) if $no_ssl3; 9855714Skris 9955714Skris @a=grep(!/(_sock$)|(_acpt$)|(_conn$)|(^pxy_)/,@a) if $no_sock; 10055714Skris 10155714Skris @a=grep(!/(^md2)|(_md2$)/,@a) if $no_md2; 10255714Skris @a=grep(!/(^md5)|(_md5$)/,@a) if $no_md5; 10355714Skris 10455714Skris @a=grep(!/(^d2i_r_)|(^i2d_r_)/,@a) if $no_rsa; 10555714Skris @a=grep(!/(^p_open$)|(^p_seal$)/,@a) if $no_rsa; 10655714Skris @a=grep(!/(^pem_seal$)/,@a) if $no_rsa; 10755714Skris 10855714Skris @a=grep(!/(m_dss$)|(m_dss1$)/,@a) if $no_dsa; 10955714Skris @a=grep(!/(^d2i_s_)|(^i2d_s_)|(_dsap$)/,@a) if $no_dsa; 11055714Skris 11155714Skris @a=grep(!/^n_pkey$/,@a) if $no_rsa || $no_rc4; 11255714Skris 11355714Skris @a=grep(!/_dhp$/,@a) if $no_dh; 11455714Skris 11555714Skris @a=grep(!/(^sha[^1])|(_sha$)|(m_dss$)/,@a) if $no_sha; 11655714Skris @a=grep(!/(^sha1)|(_sha1$)|(m_dss1$)/,@a) if $no_sha1; 11755714Skris @a=grep(!/_mdc2$/,@a) if $no_mdc2; 11855714Skris 11955714Skris @a=grep(!/(^rsa$)|(^genrsa$)|(^req$)|(^ca$)/,@a) if $no_rsa; 12055714Skris @a=grep(!/(^dsa$)|(^gendsa$)|(^dsaparam$)/,@a) if $no_dsa; 12155714Skris @a=grep(!/^gendsa$/,@a) if $no_sha1; 12255714Skris @a=grep(!/(^dh$)|(^gendh$)/,@a) if $no_dh; 12355714Skris 12455714Skris @a=grep(!/(^dh)|(_sha1$)|(m_dss1$)/,@a) if $no_sha1; 12555714Skris 12655714Skris grep($_="$dir/$_",@a); 12755714Skris @a=grep(!/(^|\/)s_/,@a) if $no_sock; 12855714Skris @a=grep(!/(^|\/)bio_sock/,@a) if $no_sock; 12955714Skris $ret=join(' ',@a)." "; 13055714Skris return($ret); 13155714Skris } 13255714Skris 133