diff options
Diffstat (limited to 'openssl/ms/do_fips.bat')
-rw-r--r-- | openssl/ms/do_fips.bat | 204 |
1 files changed, 204 insertions, 0 deletions
diff --git a/openssl/ms/do_fips.bat b/openssl/ms/do_fips.bat new file mode 100644 index 000000000..8d27eb05b --- /dev/null +++ b/openssl/ms/do_fips.bat @@ -0,0 +1,204 @@ +@echo off + +SET ASM=%1 + +if NOT X%PROCESSOR_ARCHITECTURE% == X goto defined + +echo Processor Architecture Undefined: defaulting to X86 + +goto X86 + +:defined + +if %PROCESSOR_ARCHITECTURE% == x86 goto X86 + +if %PROCESSOR_ARCHITECTURE% == IA64 goto IA64 + +if %PROCESSOR_ARCHITECTURE% == AMD64 goto AMD64 + +echo Processor Architecture Unrecognized: defaulting to X86 + +:X86 +echo Auto Configuring for X86 + +SET TARGET=VC-WIN32 + +if x%ASM% == xno-asm goto compile +echo Generating x86 for NASM assember +SET ASM=nasm +SET ASMOPTS=-DOPENSSL_IA32_SSE2 + +echo Bignum +cd crypto\bn\asm +perl bn-586.pl win32n %ASMOPTS% > bn_win32.asm +if ERRORLEVEL 1 goto error +perl co-586.pl win32n %ASMOPTS% > co_win32.asm +if ERRORLEVEL 1 goto error +perl mo-586.pl win32n %ASMOPTS% > mt_win32.asm +if ERRORLEVEL 1 goto error +cd ..\..\.. + +echo AES +cd crypto\aes\asm +perl aes-586.pl win32n %ASMOPTS% > a_win32.asm +if ERRORLEVEL 1 goto error +cd ..\..\.. + +echo DES +cd crypto\des\asm +perl des-586.pl win32n %ASMOPTS% > d_win32.asm +if ERRORLEVEL 1 goto error +cd ..\..\.. + +echo "crypt(3)" + +cd crypto\des\asm +perl crypt586.pl win32n %ASMOPTS% > y_win32.asm +if ERRORLEVEL 1 goto error +cd ..\..\.. + +echo Blowfish + +cd crypto\bf\asm +perl bf-586.pl win32n %ASMOPTS% > b_win32.asm +if ERRORLEVEL 1 goto error +cd ..\..\.. + +echo CAST5 +cd crypto\cast\asm +perl cast-586.pl win32n %ASMOPTS% > c_win32.asm +if ERRORLEVEL 1 goto error +cd ..\..\.. + +echo RC4 +cd crypto\rc4\asm +perl rc4-586.pl win32n %ASMOPTS% > r4_win32.asm +if ERRORLEVEL 1 goto error +cd ..\..\.. + +echo MD5 +cd crypto\md5\asm +perl md5-586.pl win32n %ASMOPTS% > m5_win32.asm +if ERRORLEVEL 1 goto error +cd ..\..\.. + +echo SHA1 +cd crypto\sha\asm +perl sha1-586.pl win32n %ASMOPTS% > s1_win32.asm +if ERRORLEVEL 1 goto error +perl sha512-sse2.pl win32n %ASMOPTS% > sha512-sse2.asm +if ERRORLEVEL 1 goto error +cd ..\..\.. + +echo RIPEMD160 +cd crypto\ripemd\asm +perl rmd-586.pl win32n %ASMOPTS% > rm_win32.asm +if ERRORLEVEL 1 goto error +cd ..\..\.. + +echo RC5\32 +cd crypto\rc5\asm +perl rc5-586.pl win32n %ASMOPTS% > r5_win32.asm +if ERRORLEVEL 1 goto error +cd ..\..\.. + +echo CPU-ID +cd crypto +perl x86cpuid.pl win32n %ASMOPTS% > cpu_win32.asm +if ERRORLEVEL 1 goto error +cd .. + +goto compile + +:IA64 + +echo Auto Configuring for IA64 +SET TARGET=VC-WIN64I +perl ms\uplink.pl win64i > ms\uptable.asm +if ERRORLEVEL 1 goto error +ias -o ms\uptable.obj ms\uptable.asm +if ERRORLEVEL 1 goto error + +goto compile + +:AMD64 + +echo Auto Configuring for AMD64 +SET TARGET=VC-WIN64A +perl ms\uplink.pl win64a > ms\uptable.asm +if ERRORLEVEL 1 goto error +ml64 -c -Foms\uptable.obj ms\uptable.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 crypto\bn\asm +perl x86_64-mont.pl x86_64-mont.asm +if ERRORLEVEL 1 goto error +cd ..\..\.. + +echo AES +cd crypto\aes\asm +perl aes-x86_64.pl aes-x86_64.asm +if ERRORLEVEL 1 goto error +cd ..\..\.. + +echo SHA +cd crypto\sha\asm +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 + +perl util\mkfiles.pl >MINFO +@if ERRORLEVEL 1 goto error +perl util\mk1mf.pl dll %ASM% %TARGET% >ms\ntdll.mak +@if ERRORLEVEL 1 goto error + +perl util\mkdef.pl 32 libeay > ms\libeay32.def +@if ERRORLEVEL 1 goto error +perl util\mkdef.pl 32 ssleay > ms\ssleay32.def +@if ERRORLEVEL 1 goto error + +nmake -f ms\ntdll.mak clean +nmake -f ms\ntdll.mak +@if ERRORLEVEL 1 goto error + +@echo. +@echo. +@echo. +@echo *************************** +@echo ****FIPS BUILD SUCCESS***** +@echo *************************** + +@goto end + +:error + +@echo. +@echo. +@echo. +@echo *************************** +@echo ****FIPS BUILD FAILURE***** +@echo *************************** + +:end |