235 lines
6.5 KiB
Batchfile
235 lines
6.5 KiB
Batchfile
@echo off
|
|
|
|
rem ========================================================================
|
|
rem Batch file to automate building OpenSSL for NetWare.
|
|
rem
|
|
rem usage:
|
|
rem build [target] [debug opts] [assembly opts] [configure opts]
|
|
rem
|
|
rem target - "netware-clib" - CLib NetWare build (WinSock Sockets)
|
|
rem - "netware-clib-bsdsock" - CLib NetWare build (BSD Sockets)
|
|
rem - "netware-libc" - LibC NetWare build (WinSock Sockets)
|
|
rem - "netware-libc-bsdsock" - LibC NetWare build (BSD Sockets)
|
|
rem
|
|
rem debug opts - "debug" - build debug
|
|
rem
|
|
rem assembly opts - "nw-mwasm" - use Metrowerks assembler
|
|
rem - "nw-nasm" - use NASM assembler
|
|
rem - "no-asm" - don't use assembly
|
|
rem
|
|
rem configure opts- all unrecognized arguments are passed to the
|
|
rem perl configure script
|
|
rem
|
|
rem If no arguments are specified the default is to build non-debug with
|
|
rem no assembly. NOTE: there is no default BLD_TARGET.
|
|
rem
|
|
|
|
|
|
|
|
rem No assembly is the default - Uncomment section below to change
|
|
rem the assembler default
|
|
set ASM_MODE=
|
|
set ASSEMBLER=
|
|
set NO_ASM=no-asm
|
|
|
|
rem Uncomment to default to the Metrowerks assembler
|
|
rem set ASM_MODE=nw-mwasm
|
|
rem set ASSEMBLER=Metrowerks
|
|
rem set NO_ASM=
|
|
|
|
rem Uncomment to default to the NASM assembler
|
|
rem set ASM_MODE=nw-nasm
|
|
rem set ASSEMBLER=NASM
|
|
rem set NO_ASM=
|
|
|
|
rem No default Bld target
|
|
set BLD_TARGET=no_target
|
|
rem set BLD_TARGET=netware-clib
|
|
rem set BLD_TARGET=netware-libc
|
|
|
|
|
|
rem Default to build non-debug
|
|
set DEBUG=
|
|
|
|
rem Uncomment to default to debug build
|
|
rem set DEBUG=debug
|
|
|
|
|
|
set CONFIG_OPTS=
|
|
set ARG_PROCESSED=NO
|
|
|
|
|
|
rem Process command line args
|
|
:opts
|
|
if "a%1" == "a" goto endopt
|
|
if "%1" == "no-asm" set NO_ASM=no-asm
|
|
if "%1" == "no-asm" set ARG_PROCESSED=YES
|
|
if "%1" == "debug" set DEBUG=debug
|
|
if "%1" == "debug" set ARG_PROCESSED=YES
|
|
if "%1" == "nw-nasm" set ASM_MODE=nw-nasm
|
|
if "%1" == "nw-nasm" set ASSEMBLER=NASM
|
|
if "%1" == "nw-nasm" set NO_ASM=
|
|
if "%1" == "nw-nasm" set ARG_PROCESSED=YES
|
|
if "%1" == "nw-mwasm" set ASM_MODE=nw-mwasm
|
|
if "%1" == "nw-mwasm" set ASSEMBLER=Metrowerks
|
|
if "%1" == "nw-mwasm" set NO_ASM=
|
|
if "%1" == "nw-mwasm" set ARG_PROCESSED=YES
|
|
if "%1" == "netware-clib" set BLD_TARGET=netware-clib
|
|
if "%1" == "netware-clib" set ARG_PROCESSED=YES
|
|
if "%1" == "netware-clib-bsdsock" set BLD_TARGET=netware-clib-bsdsock
|
|
if "%1" == "netware-clib-bsdsock" set ARG_PROCESSED=YES
|
|
if "%1" == "netware-libc" set BLD_TARGET=netware-libc
|
|
if "%1" == "netware-libc" set ARG_PROCESSED=YES
|
|
if "%1" == "netware-libc-bsdsock" set BLD_TARGET=netware-libc-bsdsock
|
|
if "%1" == "netware-libc-bsdsock" set ARG_PROCESSED=YES
|
|
|
|
rem If we didn't recognize the argument, consider it an option for config
|
|
if "%ARG_PROCESSED%" == "NO" set CONFIG_OPTS=%CONFIG_OPTS% %1
|
|
if "%ARG_PROCESSED%" == "YES" set ARG_PROCESSED=NO
|
|
|
|
shift
|
|
goto opts
|
|
:endopt
|
|
|
|
rem make sure a valid BLD_TARGET was specified
|
|
if "%BLD_TARGET%" == "no_target" goto no_target
|
|
|
|
rem build the nlm make file name which includes target and debug info
|
|
set NLM_MAKE=
|
|
if "%BLD_TARGET%" == "netware-clib" set NLM_MAKE=netware\nlm_clib
|
|
if "%BLD_TARGET%" == "netware-clib-bsdsock" set NLM_MAKE=netware\nlm_clib_bsdsock
|
|
if "%BLD_TARGET%" == "netware-libc" set NLM_MAKE=netware\nlm_libc
|
|
if "%BLD_TARGET%" == "netware-libc-bsdsock" set NLM_MAKE=netware\nlm_libc_bsdsock
|
|
if "%DEBUG%" == "" set NLM_MAKE=%NLM_MAKE%.mak
|
|
if "%DEBUG%" == "debug" set NLM_MAKE=%NLM_MAKE%_dbg.mak
|
|
|
|
if "%NO_ASM%" == "no-asm" set ASM_MODE=
|
|
if "%NO_ASM%" == "no-asm" set ASSEMBLER=
|
|
if "%NO_ASM%" == "no-asm" set CONFIG_OPTS=%CONFIG_OPTS% no-asm
|
|
if "%NO_ASM%" == "no-asm" goto do_config
|
|
|
|
|
|
rem ==================================================
|
|
echo Generating x86 for %ASSEMBLER% assembler
|
|
|
|
echo Bignum
|
|
cd crypto\bn\asm
|
|
rem perl x86.pl %ASM_MODE% > bn-nw.asm
|
|
perl bn-586.pl %ASM_MODE% > bn-nw.asm
|
|
perl co-586.pl %ASM_MODE% > co-nw.asm
|
|
cd ..\..\..
|
|
|
|
echo AES
|
|
cd crypto\aes\asm
|
|
perl aes-586.pl %ASM_MODE% > a-nw.asm
|
|
cd ..\..\..
|
|
|
|
echo DES
|
|
cd crypto\des\asm
|
|
perl des-586.pl %ASM_MODE% > d-nw.asm
|
|
cd ..\..\..
|
|
|
|
echo "crypt(3)"
|
|
|
|
cd crypto\des\asm
|
|
perl crypt586.pl %ASM_MODE% > y-nw.asm
|
|
cd ..\..\..
|
|
|
|
echo Blowfish
|
|
|
|
cd crypto\bf\asm
|
|
perl bf-586.pl %ASM_MODE% > b-nw.asm
|
|
cd ..\..\..
|
|
|
|
echo CAST5
|
|
cd crypto\cast\asm
|
|
perl cast-586.pl %ASM_MODE% > c-nw.asm
|
|
cd ..\..\..
|
|
|
|
echo RC4
|
|
cd crypto\rc4\asm
|
|
perl rc4-586.pl %ASM_MODE% > r4-nw.asm
|
|
cd ..\..\..
|
|
|
|
echo MD5
|
|
cd crypto\md5\asm
|
|
perl md5-586.pl %ASM_MODE% > m5-nw.asm
|
|
cd ..\..\..
|
|
|
|
echo SHA1
|
|
cd crypto\sha\asm
|
|
perl sha1-586.pl %ASM_MODE% > s1-nw.asm
|
|
perl sha256-586.pl %ASM_MODE% > sha256-nw.asm
|
|
perl sha512-586.pl %ASM_MODE% > sha512-nw.asm
|
|
cd ..\..\..
|
|
|
|
echo RIPEMD160
|
|
cd crypto\ripemd\asm
|
|
perl rmd-586.pl %ASM_MODE% > rm-nw.asm
|
|
cd ..\..\..
|
|
|
|
echo RC5\32
|
|
cd crypto\rc5\asm
|
|
perl rc5-586.pl %ASM_MODE% > r5-nw.asm
|
|
cd ..\..\..
|
|
|
|
echo WHIRLPOOL
|
|
cd crypto\whrlpool\asm
|
|
perl wp-mmx.pl %ASM_MODE% > wp-nw.asm
|
|
cd ..\..\..
|
|
|
|
echo CPUID
|
|
cd crypto
|
|
perl x86cpuid.pl %ASM_MODE% > x86cpuid-nw.asm
|
|
cd ..\
|
|
|
|
rem ===============================================================
|
|
rem
|
|
:do_config
|
|
|
|
echo .
|
|
echo configure options: %CONFIG_OPTS% %BLD_TARGET%
|
|
echo .
|
|
perl configure %CONFIG_OPTS% %BLD_TARGET%
|
|
|
|
perl util\mkfiles.pl >MINFO
|
|
|
|
echo .
|
|
echo mk1mf.pl options: %DEBUG% %ASM_MODE% %CONFIG_OPTS% %BLD_TARGET%
|
|
echo .
|
|
perl util\mk1mf.pl %DEBUG% %ASM_MODE% %CONFIG_OPTS% %BLD_TARGET% >%NLM_MAKE%
|
|
|
|
make -f %NLM_MAKE% vclean
|
|
echo .
|
|
echo The makefile "%NLM_MAKE%" has been created use your maketool to
|
|
echo build (ex: make -f %NLM_MAKE%)
|
|
goto end
|
|
|
|
rem ===============================================================
|
|
rem
|
|
:no_target
|
|
echo .
|
|
echo . No build target specified!!!
|
|
echo .
|
|
echo . usage: build [target] [debug opts] [assembly opts] [configure opts]
|
|
echo .
|
|
echo . target - "netware-clib" - CLib NetWare build (WinSock Sockets)
|
|
echo . - "netware-clib-bsdsock" - CLib NetWare build (BSD Sockets)
|
|
echo . - "netware-libc" - LibC NetWare build (WinSock Sockets)
|
|
echo . - "netware-libc-bsdsock" - LibC NetWare build (BSD Sockets)
|
|
echo .
|
|
echo . debug opts - "debug" - build debug
|
|
echo .
|
|
echo . assembly opts - "nw-mwasm" - use Metrowerks assembler
|
|
echo . "nw-nasm" - use NASM assembler
|
|
echo . "no-asm" - don't use assembly
|
|
echo .
|
|
echo . configure opts- all unrecognized arguments are passed to the
|
|
echo . perl configure script
|
|
echo .
|
|
echo . If no debug or assembly opts are specified the default is to build
|
|
echo . non-debug without assembly
|
|
echo .
|
|
|
|
|
|
:end
|