X-Git-Url: https://git.openssl.org/gitweb/?p=openssl.git;a=blobdiff_plain;f=INSTALL.NW;h=92715cbbf308299a4c126ea6e4f8e8690316e4c5;hp=22718f774bc4601bec09d1f664f16ff6f2a544ca;hb=0962fbbf98bfb4ef060dc6a54d11636f01706cd0;hpb=4d8743f490a5f96fa26d41985ee12cb6b9815a4c diff --git a/INSTALL.NW b/INSTALL.NW index 22718f774b..92715cbbf3 100644 --- a/INSTALL.NW +++ b/INSTALL.NW @@ -32,6 +32,10 @@ The necessary LibC functionality ships with NetWare 6. However, earlier NetWare 5.x versions will require updates in order to run the OpenSSL LibC build. +As of June 2005, the LibC build can be configured to use BSD sockets instead +of WinSock sockets. Call Configure (usually through netware\build.bat) using +a target of "netware-libc-bsdsock" instead of "netware-libc". + REQUIRED TOOLS: --------------- @@ -95,13 +99,18 @@ following tools may be required: Microsoft SDK. Note: The winsock2.h support headers may change with various versions of winsock2.h. Check the dependencies section on the NDK WinSock2 download page for the latest - information on dependencies. + information on dependencies. These components are unsupported by + Novell. They are provided as a courtesy, but it is strongly + suggested that all development be done using LIBC, not CLIB. + + As of June 2005, the WinSock2 components are available at: + http://forgeftp.novell.com//ws2comp/ NLM and NetWare libraries for C (including CLIB and XPlat): - If you are going to build a CLIB version of OpenSSL, you will - need the CLIB headers and imports. The March, 2001 NDK release or - later is recommended. + If you are going to build a CLIB version of OpenSSL, you will + need the CLIB headers and imports. The March, 2001 NDK release or + later is recommended. Earlier versions should work but haven't been tested. In recent versions the import files have been consolidated and function @@ -115,13 +124,14 @@ following tools may be required: LIBC - BUILDS: Libraries for C (LibC) - LibC headers and import files - If you are going to build a LibC version of OpenSSL, you will - need the LibC headers and imports. The March 14, 2002 NDK release or - later is required. + If you are going to build a LibC version of OpenSSL, you will + need the LibC headers and imports. The March 14, 2002 NDK release or + later is required. NOTE: The LibC SDK includes the necessary WinSock2 support. It It is not necessary to download the WinSock2 Developer when building - for LibC. + for LibC. The LibC SDK also includes the appropriate BSD socket support + if configuring to use BSD sockets. BUILDING: @@ -133,8 +143,8 @@ The set_env.bat file is a template you can use to set up the path and environment variables you will need to build. Modify the various lines to point to YOUR tools and run set_env.bat. - netware\set_env.bat [target] - + netware\set_env.bat [target] + target - "netware-clib" - CLib NetWare build - "netware-libc" - LibC NetWare build @@ -145,23 +155,21 @@ environment variables: MWCIncludes - The location of the NDK include files. - CLIB ex: set MWCIncludes=c:\ndk\nwsdk\include\nlm - LibC ex: set MWCIncludes=c:\ndk\libc\include + CLIB ex: set MWCIncludes=c:\ndk\nwsdk\include\nlm + LibC ex: set MWCIncludes=c:\ndk\libc\include PRELUDE - The absolute path of the prelude object to link with. For - a CLIB build it is recommended you use the "nwpre.obj" file shipped - with the Metrowerks PDK for NetWare. For a LibC build you should - use the "libcpre.o" file delivered with the LibC NDK components. - - CLIB ex: set PRELUDE=c:\codewar\novell support\metrowerks support\ - libraries\runtime\nwpre.obj - - LibC ex: set PRELUDE=c:\ndk\libc\imports\libcpre.o + a CLIB build it is recommended you use the "clibpre.o" files shipped + with the Metrowerks PDK for NetWare. For a LibC build you should + use the "libcpre.o" file delivered with the LibC NDK components. + + CLIB ex: set PRELUDE=c:\ndk\nwsdk\imports\clibpre.o + LibC ex: set PRELUDE=c:\ndk\libc\imports\libcpre.o IMPORTS - The locaton of the NDK import files. - - CLIB ex: set IMPORTS=c:\ndk\nwsdk\imports - LibC ex: set IMPORTS=c:\ndk\libc\imports + + CLIB ex: set IMPORTS=c:\ndk\nwsdk\imports + LibC ex: set IMPORTS=c:\ndk\libc\imports In order to build, you need to run the Perl scripts to configure the build @@ -173,9 +181,10 @@ If an assembly option is specified, it also runs the scripts to generate the assembly code. Always run build.bat from the "openssl" directory. netware\build [target] [debug opts] [assembly opts] [configure opts] - - target - "netware-clib" - CLib NetWare build - - "netware-libc" - LibC NetWare build + + target - "netware-clib" - CLib NetWare build (WinSock Sockets) + - "netware-libc" - LibC NetWare build (WinSock Sockets) + - "netware-libc-bsdsock" - LibC NetWare build (BSD Sockets) debug opts - "debug" - build debug @@ -184,35 +193,39 @@ the assembly code. Always run build.bat from the "openssl" directory. "no-asm" - don't use assembly configure opts- all unrecognized arguments are passed to the - perl configure script + perl configure script examples: - - CLIB build, debug, without assembly: - netware\build.bat netware-clib debug no-asm - - LibC build, non-debug, using NASM assembly: - netware\build.bat netware-libc nw-nasm - + + CLIB build, debug, without assembly: + netware\build.bat netware-clib debug no-asm + + LibC build, non-debug, using NASM assembly: + netware\build.bat netware-libc nw-nasm + + LibC build, BSD sockets, non-debug, without assembly: + netware\build.bat netware-libc-bsdsock no-asm + Running build.bat generates a make file to be processed by your make tool (gmake or nmake): - CLIB ex: gmake -f netware\nlm_clib.mak + CLIB ex: gmake -f netware\nlm_clib_dbg.mak LibC ex: gmake -f netware\nlm_libc.mak + LibC ex: gmake -f netware\nlm_libc_bsdsock.mak You can also run the build scripts manually if you do not want to use the build.bat file. Run the following scripts in the "\openssl" subdirectory (in the order listed below): - perl configure no-asm [other config opts] [netware-clib|netware-libc] + perl configure no-asm [other config opts] [netware-clib|netware-libc|netware-libc-bsdsock] configures no assembly build for specified netware environment - (CLIB or LibC). + (CLIB or LibC). perl util\mkfiles.pl >MINFO generates a listing of source files (used by mk1mf) - perl util\mk1mf.pl no-asm [other config opts] [netware-clib|netware-libc >netware\nlm.mak + perl util\mk1mf.pl no-asm [other config opts] [netware-clib|netware-libc|netware-libc-bsdsock >netware\nlm.mak generates the makefile for NetWare gmake -f netware\nlm.mak @@ -290,13 +303,6 @@ The do_tests.pl script generates a log file "\openssl\test_out\tests.log" which should be reviewed for errors. Any errors will be denoted by the word "ERROR" in the log. -NOTE: Currently (11/2002), the LibC test nlms report an error while loading - when launched from the perl script (do_tests.pl). The problems are - being addressed by the LibC development team and should be fixed in the - next release. Until the problems are corrected, the LibC test nlms - will have to be executed manually. - - DEVELOPING WITH THE OPENSSL SDK: -------------------------------- Now that everything is built and tested, you are ready to use the OpenSSL @@ -434,4 +440,5 @@ functions are actually delivered in the binaries, but they were left out of the import files. The issues should be fixed in the September 2001 release of the NDK. If you experience the problems you can temporarily work around it by manually adding the missing symbols to your version of -"clib.imp". +"clib.imp". +