From 7c510d6f43b089888da8ce878702b965b8959df6 Mon Sep 17 00:00:00 2001 From: "Dr. Stephen Henson" Date: Tue, 6 Dec 2005 02:04:58 +0000 Subject: Initial attempt at Whirlpool assembler support on VC++. --- util/mk1mf.pl | 8 ++++++++ util/pl/VC-32.pl | 4 +++- 2 files changed, 11 insertions(+), 1 deletion(-) (limited to 'util') diff --git a/util/mk1mf.pl b/util/mk1mf.pl index 25a3801123..606e9209cc 100755 --- a/util/mk1mf.pl +++ b/util/mk1mf.pl @@ -414,6 +414,8 @@ SHA1_ASM_OBJ=$sha1_asm_obj SHA1_ASM_SRC=$sha1_asm_src RMD160_ASM_OBJ=$rmd160_asm_obj RMD160_ASM_SRC=$rmd160_asm_src +WHIRLPOOL_ASM_OBJ=$whirlpool_asm_obj +WHIRLPOOL_ASM_SRC=$whirlpool_asm_src # The output directory for everything intersting OUT_D=$out_dir @@ -657,6 +659,11 @@ foreach (values %lib_nam) $lib_obj =~ s/\s(\S*\/rmd_dgst\S*)/ $1 \$(RMD160_ASM_OBJ)/; $rules.=&do_asm_rule($rmd160_asm_obj,$rmd160_asm_src); } + if (($whirlpool_asm_obj ne "") && ($_ eq "CRYPTO")) + { + $lib_obj =~ s/\s(\S*\/wp_dgst\S*)/ $1 \$(WHIRLPOOL_ASM_OBJ)/; + $rules.=&do_asm_rule($whirlpool_asm_obj,$whirlpool_asm_src); + } $defs.=&do_defs(${_}."OBJ",$lib_obj,"\$(OBJ_D)",$obj); $lib=($slib)?" \$(SHLIB_CFLAGS)".$shlib_ex_cflags{$_}:" \$(LIB_CFLAGS)"; $rules.=&do_compile_rule("\$(OBJ_D)",$lib_obj{$_},$lib); @@ -840,6 +847,7 @@ sub do_defs elsif ($_ =~ /MD5_ASM/) { $t="$_ "; } elsif ($_ =~ /SHA1_ASM/){ $t="$_ "; } elsif ($_ =~ /RMD160_ASM/){ $t="$_ "; } + elsif ($_ =~ /WHIRLPOOL_ASM/){ $t="$_ "; } else { $t="$location${o}$_$pf "; } $Vars{$var}.="$t "; diff --git a/util/pl/VC-32.pl b/util/pl/VC-32.pl index 58bf9934dd..bbdb537329 100644 --- a/util/pl/VC-32.pl +++ b/util/pl/VC-32.pl @@ -194,7 +194,9 @@ if (!$no_asm) $sha1_asm_src='crypto\sha\asm\s1_win32.asm'; $rmd160_asm_obj='crypto\ripemd\asm\rm_win32.obj'; $rmd160_asm_src='crypto\ripemd\asm\rm_win32.asm'; - $cflags.=" -DBN_ASM -DMD5_ASM -DSHA1_ASM -DRMD160_ASM"; + $whirlpool_asm_obj='crypto\whrlpool\asm\wp_win32.obj'; + $whirlpool_asm_src='crypto\whrlpool\asm\wp_win32.asm'; + $cflags.=" -DBN_ASM -DMD5_ASM -DSHA1_ASM -DRMD160_ASM -DWHIRLPOOL_ASM"; } if ($shlib && $FLAVOR !~ /CE/) -- cgit v1.2.3