Mingw32.pl revision 63249
1#!/usr/local/bin/perl 2# 3# Mingw32.pl -- Mingw32 with GNU cp (Mingw32f.pl uses DOS tools) 4# $FreeBSD: head/crypto/openssl/util/pl/Mingw32.pl 59287 2000-04-16 17:49:31Z markm $ 5# 6 7$o='/'; 8$cp='cp'; 9$rm='rem'; # use 'rm -f' if using GNU file utilities 10$mkdir='gmkdir'; 11 12# gcc wouldn't accept backslashes in paths 13#$o='\\'; 14#$cp='copy'; 15#$rm='del'; 16 17# C compiler stuff 18 19$cc='gcc'; 20if ($debug) 21 { $cflags="-g2 -ggdb"; } 22else 23 { $cflags="-DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall"; } 24 25$obj='.o'; 26$ofile='-o '; 27 28# EXE linking stuff 29$link='${CC}'; 30$lflags='${CFLAGS}'; 31$efile='-o '; 32$exep=''; 33$ex_libs="-lwsock32 -lgdi32"; 34 35# static library stuff 36$mklib='ar r'; 37$mlflags=''; 38$ranlib='ranlib'; 39$plib='lib'; 40$libp=".a"; 41$shlibp=".a"; 42$lfile=''; 43 44$asm='as'; 45$afile='-o '; 46$bn_asm_obj=""; 47$bn_asm_src=""; 48$des_enc_obj=""; 49$des_enc_src=""; 50$bf_enc_obj=""; 51$bf_enc_src=""; 52 53sub do_lib_rule 54 { 55 local($obj,$target,$name,$shlib)=@_; 56 local($ret,$_,$Name); 57 58 $target =~ s/\//$o/g if $o ne '/'; 59 $target="$target"; 60 ($Name=$name) =~ tr/a-z/A-Z/; 61 62 $ret.="$target: \$(${Name}OBJ)\n"; 63 $ret.="\t\$(RM) $target\n"; 64 $ret.="\t\$(MKLIB) $target \$(${Name}OBJ)\n"; 65 $ret.="\t\$(RANLIB) $target\n\n"; 66 } 67 68sub do_link_rule 69 { 70 local($target,$files,$dep_libs,$libs)=@_; 71 local($ret,$_); 72 73 $file =~ s/\//$o/g if $o ne '/'; 74 $n=&bname($target); 75 $ret.="$target: $files $dep_libs\n"; 76 $ret.="\t\$(LINK) ${efile}$target \$(LFLAGS) $files $libs\n\n"; 77 return($ret); 78 } 791; 80 81