3 rem ========================================================================
4 rem Batch file to automate building OpenSSL for NetWare.
7 rem build [target] [debug opts] [assembly opts] [configure opts]
9 rem target - "netware-clib" - CLib NetWare build
10 rem - "netware-libc" - LibC NKS NetWare build
12 rem debug opts - "debug" - build debug
14 rem assembly opts - "nw-mwasm" - use Metrowerks assembler
15 rem "nw-nasm" - use NASM assembler
16 rem "no-asm" - don't use assembly
18 rem configure opts- all unrecognized arguments are passed to the
19 rem perl configure script
21 rem If no arguments are specified the default is to build non-debug with
22 rem no assembly. NOTE: there is no default BLD_TARGET.
27 rem No assembly is the default - Uncomment section below to change
28 rem the assembler default
33 rem Uncomment to default to the Metrowerks assembler
34 rem set ASM_MODE=nw-mwasm
35 rem set ASSEMBLER=Metrowerks
38 rem Uncomment to default to the NASM assembler
39 rem set ASM_MODE=nw-nasm
40 rem set ASSEMBLER=NASM
43 rem No default Bld target
44 set BLD_TARGET
=no_target
45 rem set BLD_TARGET=netware-clib
46 rem set BLD_TARGET=netware-libc
49 rem Default to build non-debug
52 rem Uncomment to default to debug build
60 rem Process command line args
62 if "a%1" == "a" goto endopt
63 if "%1" == "no-asm" set NO_ASM
=no
-asm
64 if "%1" == "no-asm" set ARG_PROCESSED
=YES
65 if "%1" == "debug" set DEBUG=debug
66 if "%1" == "debug" set ARG_PROCESSED
=YES
67 if "%1" == "nw-nasm" set ASM_MODE
=nw
-nasm
68 if "%1" == "nw-nasm" set ASSEMBLER
=NASM
69 if "%1" == "nw-nasm" set NO_ASM
=
70 if "%1" == "nw-nasm" set ARG_PROCESSED
=YES
71 if "%1" == "nw-mwasm" set ASM_MODE
=nw
-mwasm
72 if "%1" == "nw-mwasm" set ASSEMBLER
=Metrowerks
73 if "%1" == "nw-mwasm" set NO_ASM
=
74 if "%1" == "nw-mwasm" set ARG_PROCESSED
=YES
75 if "%1" == "netware-clib" set BLD_TARGET
=netware
-clib
76 if "%1" == "netware-clib" set ARG_PROCESSED
=YES
77 if "%1" == "netware-libc" set BLD_TARGET
=netware
-libc
78 if "%1" == "netware-libc" set ARG_PROCESSED
=YES
80 rem If we didn't recognize the argument, consider it an option for config
81 if "%ARG_PROCESSED%" == "NO" set CONFIG_OPTS
=%CONFIG_OPTS% %1
82 if "%ARG_PROCESSED%" == "YES" set ARG_PROCESSED
=NO
88 rem make sure a valid BLD_TARGET was specified
89 if "%BLD_TARGET%" == "no_target" goto no_target
91 rem build the nlm make file name which includes target and debug info
93 if "%BLD_TARGET%" == "netware-clib" set NLM_MAKE
=netware
\nlm_clib
94 if "%BLD_TARGET%" == "netware-libc" set NLM_MAKE
=netware
\nlm_libc
95 if "%DEBUG%" == "" set NLM_MAKE
=%NLM_MAKE%.mak
96 if "%DEBUG%" == "debug" set NLM_MAKE
=%NLM_MAKE%_dbg.mak
98 if "%NO_ASM%" == "no-asm" set ASM_MODE
=
99 if "%NO_ASM%" == "no-asm" set ASSEMBLER
=
100 if "%NO_ASM%" == "no-asm" set CONFIG_OPTS
=%CONFIG_OPTS% no
-asm
101 if "%NO_ASM%" == "no-asm" goto do_config
104 rem ==================================================
105 echo Generating x86
for %ASSEMBLER% assembler
109 perl x86.pl
%ASM_MODE% > bn
-nw.asm
114 perl des
-586.pl
%ASM_MODE% > d
-nw.asm
120 perl crypt586.pl
%ASM_MODE% > y
-nw.asm
126 perl bf
-586.pl
%ASM_MODE% > b
-nw.asm
131 perl cast
-586.pl
%ASM_MODE% > c
-nw.asm
136 perl rc4
-586.pl
%ASM_MODE% > r4
-nw.asm
141 perl md5
-586.pl
%ASM_MODE% > m5
-nw.asm
146 perl sha1
-586.pl
%ASM_MODE% > s1
-nw.asm
151 perl rmd
-586.pl
%ASM_MODE% > rm
-nw.asm
156 perl rc5
-586.pl
%ASM_MODE% > r5
-nw.asm
159 rem ===============================================================
164 echo configure options
: %CONFIG_OPTS% %BLD_TARGET%
166 perl configure
%CONFIG_OPTS% %BLD_TARGET%
168 perl util\mkfiles.pl
>MINFO
171 echo mk1mf.pl options
: %DEBUG% %ASM_MODE% %CONFIG_OPTS% %BLD_TARGET%
173 perl util\mk1mf.pl
%DEBUG% %ASM_MODE% %CONFIG_OPTS% %BLD_TARGET% >%NLM_MAKE%
175 echo The makefile
"%NLM_MAKE%" has been created
use your maketool to
176 echo build
(ex
: gmake
-f
%NLM_MAKE%)
179 rem ===============================================================
183 echo . No build target specified
!!!
185 echo . usage
: build
[target
] [debug opts
] [assembly opts
] [configure opts
]
187 echo . target
- "netware-clib" - CLib NetWare build
188 echo .
- "netware-libc" - LibC NKS NetWare build
190 echo .
debug opts
- "debug" - build
debug
192 echo . assembly opts
- "nw-mwasm" - use Metrowerks assembler
193 echo .
"nw-nasm" - use NASM assembler
194 echo .
"no-asm" - don
't use assembly
196 echo . configure opts- all unrecognized arguments are passed to the
197 echo . perl configure script
199 echo . If no debug or assembly opts are specified the default is to build
200 echo . non-debug without assembly