OpenSSL CVS Repository
http://cvs.openssl.org/
____________________________________________________________
________________
Server: cvs.openssl.org Name: Andy
Polyakov
Root: /v/openssl/cvs Email: appro openssl.org
Module: openssl Date:
23-Aug-2007 14:13:56
Branch: OpenSSL-fips-0_9_8-stable Handle:
2007082313135401
Modified files: (Branch:
OpenSSL-fips-0_9_8-stable)
openssl/ms do_fips.bat segrenam.pl
openssl/util mk1mf.pl
openssl/util/pl VC-32.pl
Log:
Engage x86_64 assembler in Win64 build.
Summary:
Revision Changes Path
1.1.2.5 +62 -35 openssl/ms/do_fips.bat
1.1.2.2 +1 -0 openssl/ms/segrenam.pl
1.61.2.15.2.14+1 -0 openssl/util/mk1mf.pl
1.16.2.21.2.13+19 -0 openssl/util/pl/VC-32.pl
____________________________________________________________
________________
patch -p0 <<' .'
Index: openssl/ms/do_fips.bat
============================================================
================
$ cvs diff -u -r1.1.2.4 -r1.1.2.5 do_fips.bat
--- openssl/ms/do_fips.bat 25 Jul 2007 23:38:11
-0000 1.1.2.4
+++ openssl/ms/do_fips.bat 23 Aug 2007 12:13:54
-0000 1.1.2.5
 -1,8 +1,6 
-
echo off
-SET ASMOPTS=-DOPENSSL_IA32_SSE2
-SET ASM=no-asm
+SET ASM=%1
if NOT X%PROCESSOR_ARCHITECTURE% == X goto defined
 -25,38 +23,10 
SET TARGET=VC-WIN32
-if NOT x%1% == xno-asm SET ASM=nasm
-
-goto compile
-
-:IA64
-
-echo Auto Configuring for IA64
-SET TARGET=VC-WIN64I
-perl msuplink.pl win64i > msuptable.asm
-if ERRORLEVEL 1 goto error
-ias -o msuptable.obj msuptable.asm
-if ERRORLEVEL 1 goto error
-
-goto compile
-
-:AMD64
-
-echo Auto Configuring for AMD64
-SET TARGET=VC-WIN64A
-perl msuplink.pl win64a > msuptable.asm
-if ERRORLEVEL 1 goto error
-ml64 -c -Fomsuptable.obj msuptable.asm
-if ERRORLEVEL 1 goto error
-
-
-:compile
-
-perl Configure %TARGET% fipscanisterbuild
-pause
-
-if %ASM% == no-asm goto skipasm
+if x%ASM% == xno-asm goto compile
echo Generating x86 for NASM assember
+SET ASM=nasm
+SET ASMOPTS=-DOPENSSL_IA32_SSE2
echo Bignum
cd cryptobnasm
 -138,7 +108,64 
if ERRORLEVEL 1 goto error
cd ..
-:skipasm
+goto compile
+
+:IA64
+
+echo Auto Configuring for IA64
+SET TARGET=VC-WIN64I
+perl msuplink.pl win64i > msuptable.asm
+if ERRORLEVEL 1 goto error
+ias -o msuptable.obj msuptable.asm
+if ERRORLEVEL 1 goto error
+
+goto compile
+
+:AMD64
+
+echo Auto Configuring for AMD64
+SET TARGET=VC-WIN64A
+perl msuplink.pl win64a > msuptable.asm
+if ERRORLEVEL 1 goto error
+ml64 -c -Fomsuptable.obj msuptable.asm
+if ERRORLEVEL 1 goto error
+
+if x%ASM% == xno-asm goto compile
+echo Generating x86_64 for ML64 assember
+SET ASM=ml64
+
+echo Bignum
+cd cryptobnasm
+perl x86_64-mont.pl x86_64-mont.asm
+if ERRORLEVEL 1 goto error
+cd ......
+
+echo AES
+cd cryptoaesasm
+perl aes-x86_64.pl aes-x86_64.asm
+if ERRORLEVEL 1 goto error
+cd ......
+
+echo SHA
+cd cryptoshaasm
+perl sha1-x86_64.pl sha1-x86_64.asm
+if ERRORLEVEL 1 goto error
+perl sha512-x86_64.pl sha256-x86_64.asm
+if ERRORLEVEL 1 goto error
+perl sha512-x86_64.pl sha512-x86_64.asm
+if ERRORLEVEL 1 goto error
+cd ......
+
+echo CPU-ID
+cd crypto
+perl x86_64cpuid.pl cpuid-x86_64.asm
+if ERRORLEVEL 1 goto error
+cd ..
+
+:compile
+
+perl Configure %TARGET% fipscanisterbuild
+pause
echo on
 .
patch -p0 <<' .'
Index: openssl/ms/segrenam.pl
============================================================
================
$ cvs diff -u -r1.1.2.1 -r1.1.2.2 segrenam.pl
--- openssl/ms/segrenam.pl 27 Mar 2007 00:04:54
-0000 1.1.2.1
+++ openssl/ms/segrenam.pl 23 Aug 2007 12:13:54
-0000 1.1.2.2
 -9,6 +9,7 
############################################################
#####
# rename segments in COFF modules according to %map table
below #
%map=( ".text" =>
"fipstx$suffix", #
+ ".text$"=>
"fipstx$suffix", #
".rdata"=> "fipsrd$suffix", #
".data" =>
"fipsda$suffix" ); #
############################################################
#####
 .
patch -p0 <<' .'
Index: openssl/util/mk1mf.pl
============================================================
================
$ cvs diff -u -r1.61.2.15.2.13 -r1.61.2.15.2.14 mk1mf.pl
--- openssl/util/mk1mf.pl 15 Aug 2007 13:35:50
-0000 1.61.2.15.2.13
+++ openssl/util/mk1mf.pl 23 Aug 2007 12:13:55
-0000 1.61.2.15.2.14
 -1277,6 +1277,7 
"no-hmac" => $no_hmac,
"no-asm" => $no_asm,
"nasm" => $nasm,
+ "ml64" => $ml64,
"nw-nasm" => $nw_nasm,
"nw-mwasm" => $nw_mwasm,
"gaswin" => $gaswin,
 .
patch -p0 <<' .'
Index: openssl/util/pl/VC-32.pl
============================================================
================
$ cvs diff -u -r1.16.2.21.2.12 -r1.16.2.21.2.13 VC-32.pl
--- openssl/util/pl/VC-32.pl 15 Aug 2007 13:35:51
-0000 1.16.2.21.2.12
+++ openssl/util/pl/VC-32.pl 23 Aug 2007 12:13:55
-0000 1.16.2.21.2.13
 -172,6 +172,10 
if ($nasm) {
$asm='nasmw -f win32';
$afile='-o ';
+} elsif ($ml64) {
+ $asm='ml64 /c /Cp /Cx';
+ $asm.=' /Zi' if $debug;
+ $afile='/Fo';
} else {
$asm='ml /Cp /coff /c /Cx';
$asm.=" /Zi" if $debug;
 -187,6 +191,8 
$bf_enc_src='';
if (!$no_asm)
+ {
+ if ($FLAVOR =~ "WIN32")
{
$aes_asm_obj='cryptoaesasma_win32.obj';
$aes_asm_src='cryptoaesasma_win32.asm';
 -214,6 +220,19 
$cpuid_asm_src='cryptocpu_win32.asm';
$cflags.=" -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2
-DAES_ASM -DBN_ASM -DOPENSSL_BN_ASM_PART_WORDS
-DOPENSSL_BN_ASM_MONT -DMD5_ASM -DSHA1_ASM
-DRMD160_ASM";
}
+ elsif ($FLAVOR =~ "WIN64A")
+ {
+ $aes_asm_obj='$(OBJ_D)aes-x86_64.obj';
+ $aes_asm_src='cryptoaesasmaes-x86_64.asm';
+ $bn_asm_obj='$(OBJ_D)x86_64-mont.obj
$(OBJ_D)bn_asm.obj';
+ $bn_asm_src='cryptobnasmx86_64-mont.asm';
+ $sha1_asm_obj='$(OBJ_D)sha1-x86_64.obj
$(OBJ_D)sha256-x86_64.obj $(OBJ_D)sha512-x86_64.obj';
+ $sha1_asm_src='cryptoshaasmsha1-x86_64.asm
cryptoshaasmsha256-x86_64.asm
cryptoshaasmsha512-x86_64.asm';
+ $cpuid_asm_obj='$(OBJ_D)cpuid-x86_64.obj';
+ $cpuid_asm_src='cryptocpuid-x86_64.asm';
+ $cflags.=" -DOPENSSL_CPUID_OBJ -DAES_ASM
-DOPENSSL_BN_ASM_MONT -DSHA1_ASM -DSHA256_ASM
-DSHA512_ASM";
+ }
+ }
if ($shlib && $FLAVOR !~ /CE/)
{
 .
____________________________________________________________
__________
OpenSSL Project http://www.openssl.org
CVS Repository Commit List
openssl-cvs openssl.org
Automated List Manager
majordomo openssl.org
|