]> git.ipfire.org Git - thirdparty/openssl.git/blobdiff - util/pl/VC-32.pl
Include Mont asm files in WIN32 build.
[thirdparty/openssl.git] / util / pl / VC-32.pl
index dfde1aa2b1afa9d043b4b07313d025a3942ef1a7..5cdf62264f1a4bdf6d11c40227be8e6a7c90e29a 100644 (file)
@@ -9,7 +9,7 @@ $crypto="libeay32";
 $o='\\';
 $cp='$(PERL) util/copy.pl';
 $mkdir='$(PERL) util/mkdir-p.pl';
-$rm='del';
+$rm='del /Q';
 
 $zlib_lib="zlib1.lib";
 
@@ -163,7 +163,10 @@ $lfile='/out:';
 $shlib_ex_obj="";
 $app_ex_obj="setargv.obj" if ($FLAVOR !~ /CE/);
 if ($nasm) {
-       $asm='nasmw -f win32';
+       my $ver=`nasm -v 2>NUL`;
+       my $vew=`nasmw -v 2>NUL`;
+       # pick newest version
+       $asm=($ver gt $vew?"nasm":"nasmw")." -f win32";
        $afile='-o ';
 } else {
        $asm='ml /Cp /coff /c /Cx';
@@ -180,8 +183,12 @@ $bf_enc_src='';
 
 if (!$no_asm)
        {
-       $bn_asm_obj='crypto\bn\asm\bn_win32.obj';
-       $bn_asm_src='crypto\bn\asm\bn_win32.asm';
+       $aes_asm_obj='crypto\aes\asm\a_win32.obj';
+       $aes_asm_src='crypto\aes\asm\a_win32.asm';
+       $bn_asm_obj='crypto\bn\asm\bn_win32.obj crypto\bn\asm\mo_win32.obj';
+       $bn_asm_src='crypto\bn\asm\bn_win32.asm crypto\bn\asm\mo_win32.asm';
+       $bnco_asm_obj='crypto\bn\asm\co_win32.obj';
+       $bnco_asm_src='crypto\bn\asm\co_win32.asm';
        $des_enc_obj='crypto\des\asm\d_win32.obj crypto\des\asm\y_win32.obj';
        $des_enc_src='crypto\des\asm\d_win32.asm crypto\des\asm\y_win32.asm';
        $bf_enc_obj='crypto\bf\asm\b_win32.obj';
@@ -194,15 +201,18 @@ if (!$no_asm)
        $rc5_enc_src='crypto\rc5\asm\r5_win32.asm';
        $md5_asm_obj='crypto\md5\asm\m5_win32.obj';
        $md5_asm_src='crypto\md5\asm\m5_win32.asm';
-       $sha1_asm_obj='crypto\sha\asm\s1_win32.obj';
-       $sha1_asm_src='crypto\sha\asm\s1_win32.asm';
+       $sha1_asm_obj='crypto\sha\asm\s1_win32.obj crypto\sha\asm\sha256_win32.obj crypto\sha\asm\sha512_win32.obj';
+       $sha1_asm_src='crypto\sha\asm\s1_win32.asm crypto\sha\asm\sha256_win32.asm crypto\sha\asm\sha512_win32.asm';
        $rmd160_asm_obj='crypto\ripemd\asm\rm_win32.obj';
        $rmd160_asm_src='crypto\ripemd\asm\rm_win32.asm';
        $whirlpool_asm_obj='crypto\whrlpool\asm\wp_win32.obj';
        $whirlpool_asm_src='crypto\whrlpool\asm\wp_win32.asm';
        $cpuid_asm_obj='crypto\cpu_win32.obj';
        $cpuid_asm_src='crypto\cpu_win32.asm';
-       $cflags.=" -DOPENSSL_CPUID_OBJ -DBN_ASM -DMD5_ASM -DSHA1_ASM -DRMD160_ASM -DWHIRLPOOL_ASM";
+       $cflags.=" -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2";
+       $cflags.=" -DOPENSSL_BN_ASM_PART_WORDS -DBN_ASM -DOPENSSL_BN_ASM_MONT";
+        $cflags.=" -DAES_ASM -DMD5_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM";
+       $cflags.=" -DRMD160_ASM -DWHIRLPOOL_ASM";
        }
 
 if ($shlib && $FLAVOR !~ /CE/)