X-Git-Url: https://git.openssl.org/gitweb/?p=openssl.git;a=blobdiff_plain;f=makevms.com;h=860540001e78037062f4056b2e2668c7e6e7e6d3;hp=638d61b4703c9659424011aadc977d562b22fa48;hb=42ba5d2329a2705d45417db3dd374c677eb47e05;hpb=c2e4f17c1a0d4d5115c6ede9492de1615fe392ac diff --git a/makevms.com b/makevms.com index 638d61b470..860540001e 100755 --- a/makevms.com +++ b/makevms.com @@ -9,7 +9,7 @@ $! $! Changes by Richard Levitte $! $! This procedure creates the SSL libraries of "[.xxx.EXE.CRYPTO]LIBCRYPTO.OLB" -$! "[.xxx.EXE.SSL]LIBSSL.OLB" and if specified "[.xxx.EXE.RSAREF]LIBRSAGLUE.OLB". +$! "[.xxx.EXE.SSL]LIBSSL.OLB" $! The "xxx" denotes the machine architecture of AXP or VAX. $! $! This procedures accepts two command line options listed below. @@ -21,7 +21,6 @@ $! CONFIG Just build the "[.CRYPTO]OPENSSLCONF.H" file. $! BUILDINF Just build the "[.CRYPTO]BUILDINF.H" file. $! SOFTLINKS Just fix the Unix soft links. $! BUILDALL Same as ALL, except CONFIG, BUILDINF and SOFTILNKS aren't done. -$! RSAREF Just build the "[.xxx.EXE.RSAREF]LIBRSAGLUE.OLB" library. $! CRYPTO Just build the "[.xxx.EXE.CRYPTO]LIBCRYPTO.OLB" library. $! CRYPTO/x Just build the x part of the $! "[.xxx.EXE.CRYPTO]LIBCRYPTO.OLB" library. @@ -29,18 +28,11 @@ $! SSL Just build the "[.xxx.EXE.SSL]LIBSSL.OLB" library. $! SSL_TASK Just build the "[.xxx.EXE.SSL]SSL_TASK.EXE" program. $! TEST Just build the "[.xxx.EXE.TEST]" test programs for OpenSSL. $! APPS Just build the "[.xxx.EXE.APPS]" application programs for OpenSSL. +$! ENGINES Just build the "[.xxx.EXE.ENGINES]" application programs for OpenSSL. $! $! -$! Specify RSAREF as P2 to compile using the RSAREF Library. -$! If you specify NORSAREF, it will compile without using RSAREF. -$! (If in the United States, You Must Compile Using RSAREF). -$! -$! Note: The RSAREF libraries are NOT INCLUDED and you have to -$! download it from "ftp://ftp.rsa.com/rsaref". You have to -$! get the ".tar-Z" file as the ".zip" file dosen't have the -$! directory structure stored. You have to extract the file -$! into the [.RSAREF] directory as that is where the scripts -$! will look for the files. +$! P2 is ignored (it was used to denote if RSAref should be used or not, +$! and is simply kept so surrounding scripts don't get confused) $! $! Speficy DEBUG or NODEBUG as P3 to compile with or without debugging $! information. @@ -56,11 +48,16 @@ $! $! If you don't speficy a compiler, it will try to determine which $! "C" compiler to use. $! -$! P5, if defined, sets a TCP/IP library to use, through one of the following -$! keywords: +$! P5, if defined, sets a TCP/IP library to use, through one of the following +$! keywords: $! $! UCX for UCX or UCX emulation +$! TCPIP for TCP/IP Services or TCP/IP Services emulation +$! (this is prefered over UCX) $! SOCKETSHR for SOCKETSHR+NETLIB +$! NONE to avoid specifying which TCP/IP implementation to +$! use at build time (this works with DEC C). This is +$! the default. $! $! P6, if defined, sets a compiler thread NOT needed on OpenVMS 7.1 (and up) $! @@ -122,20 +119,6 @@ $! $ IF (BUILDCOMMAND.EQS."ALL".OR.BUILDCOMMAND.EQS."BUILDALL") $ THEN $! -$! Check To See If We Are Going To Be Building The -$! [.xxx.EXE.RSAREF]LIBRSAGLUE.OLB Library. -$! -$ IF (RSAREF.EQS."RSAREF") -$ THEN -$! -$! Build The [.xxx.EXE.RSAREF]LIBRSAGLUE.OLB Library. -$! -$ GOSUB RSAREF -$! -$! End The RSAREF Check. -$! -$ ENDIF -$! $! Build The [.xxx.EXE.CRYPTO]LIBCRYPTO.OLB Library. $! $ GOSUB CRYPTO @@ -156,6 +139,10 @@ $! Build The [.xxx.EXE.APPS] OpenSSL Application Utilities. $! $ GOSUB APPS $! +$! Build The [.xxx.EXE.ENGINES] OpenSSL Shareable Engines. +$! +$ GOSUB ENGINES +$! $! Else... $! $ ELSE @@ -232,6 +219,9 @@ $ ENDIF $ ENDIF $ GOTO CONFIG_LOG_LOOP $ CONFIG_LOG_LOOP_END: +$ WRITE H_FILE "#ifndef OPENSSL_NO_STATIC_ENGINE" +$ WRITE H_FILE "# define OPENSSL_NO_STATIC_ENGINE" +$ WRITE H_FILE "#endif" $ WRITE H_FILE "#ifndef OPENSSL_THREADS" $ WRITE H_FILE "# define OPENSSL_THREADS" $ WRITE H_FILE "#endif" @@ -249,8 +239,14 @@ $ IF F$SEARCH("[.CRYPTO]OPENSSLCONF_H.IN") .NES. "" $ THEN $ TYPE [.CRYPTO]OPENSSLCONF_H.IN /OUTPUT=H_FILE: $ ELSE -$ WRITE SYS$ERROR "Couldn't find a [.CRYPTO]OPENSSLCONF.H_IN. Exiting!" -$ EXIT 0 +$ ! For ODS-5 +$ IF F$SEARCH("[.CRYPTO]OPENSSLCONF.H.IN") .NES. "" +$ THEN +$ TYPE [.CRYPTO]OPENSSLCONF.H.IN /OUTPUT=H_FILE: +$ ELSE +$ WRITE SYS$ERROR "Couldn't find a [.CRYPTO]OPENSSLCONF.H_IN. Exiting!" +$ EXIT 0 +$ ENDIF $ ENDIF $ ENDIF $ IF ARCH .EQS. "AXP" @@ -369,9 +365,9 @@ $! Copy a lot of files around. $! $ SOFTLINKS: $! -$! Tell The User We Are Partly Rebuilding The [.TEST] Directory. +$! Tell The User We Are Partly Rebuilding The [.APPS] Directory. $! -$ WRITE SYS$OUTPUT "Rebuilding The '[.APPS]MD5.C' And '[.APPS]RMD160.C' Files." +$ WRITE SYS$OUTPUT "Rebuilding The '[.APPS]MD4.C', '[.APPS]MD5.C' And '[.APPS]RMD160.C' Files." $! $ DELETE SYS$DISK:[.APPS]MD4.C;*,MD5.C;*,RMD160.C;* $! @@ -400,6 +396,7 @@ $! $! Copy all the *TEST.C files from [.CRYPTO...] into [.TEST] $! $ COPY SYS$DISK:[.CRYPTO.*]%*TEST.C SYS$DISK:[.TEST] +$ COPY SYS$DISK:[.CRYPTO.SHA]SHA%%%T.C SYS$DISK:[.TEST] $ COPY SYS$DISK:[.CRYPTO.EVP]EVPTESTS.TXT SYS$DISK:[.TEST] $! $! Copy all the *TEST.C files from [.SSL...] into [.TEST] @@ -422,13 +419,17 @@ $ COPY 'EXHEADER' SYS$DISK:[.INCLUDE.OPENSSL] $! $! Copy All The ".H" Files From The [.CRYPTO] Directory Tree. $! -$ SDIRS := ,MD2,MD4,MD5,SHA,MDC2,HMAC,RIPEMD,- +$ SDIRS := ,- + OBJECTS,- + MD2,MD4,MD5,SHA,MDC2,HMAC,RIPEMD,- DES,RC2,RC4,RC5,IDEA,BF,CAST,- - BN,EC,RSA,DSA,DH,DSO,ENGINE,RIJNDAEL,- - BUFFER,BIO,STACK,LHASH,RAND,ERR,OBJECTS,- - EVP,ASN1,PEM,X509,X509V3,CONF,TXT_DB,PKCS7,PKCS12,COMP,OCSP,UI,KRB5 + BN,EC,RSA,DSA,ECDSA,DH,ECDH,DSO,ENGINE,AES,- + BUFFER,BIO,STACK,LHASH,RAND,ERR,- + EVP,ASN1,PEM,X509,X509V3,CONF,TXT_DB,PKCS7,PKCS12,COMP,OCSP,UI,KRB5,- + STORE $ EXHEADER_ := crypto.h,tmdiff.h,opensslv.h,opensslconf.h,ebcdic.h,symhacks.h,- ossl_typ.h +$ EXHEADER_OBJECTS := objects.h,obj_mac.h $ EXHEADER_MD2 := md2.h $ EXHEADER_MD4 := md4.h $ EXHEADER_MD5 := md5.h @@ -447,17 +448,18 @@ $ EXHEADER_BN := bn.h $ EXHEADER_EC := ec.h $ EXHEADER_RSA := rsa.h $ EXHEADER_DSA := dsa.h +$ EXHEADER_ECDSA := ecdsa.h $ EXHEADER_DH := dh.h +$ EXHEADER_ECDH := ecdh.h $ EXHEADER_DSO := dso.h $ EXHEADER_ENGINE := engine.h -$ EXHEADER_RIJNDAEL := rd_fst.h,rijndael.h +$ EXHEADER_AES := aes.h $ EXHEADER_BUFFER := buffer.h $ EXHEADER_BIO := bio.h $ EXHEADER_STACK := stack.h,safestack.h $ EXHEADER_LHASH := lhash.h $ EXHEADER_RAND := rand.h $ EXHEADER_ERR := err.h -$ EXHEADER_OBJECTS := objects.h,obj_mac.h $ EXHEADER_EVP := evp.h $ EXHEADER_ASN1 := asn1.h,asn1_mac.h,asn1t.h $ EXHEADER_PEM := pem.h,pem2.h @@ -471,6 +473,8 @@ $ EXHEADER_COMP := comp.h $ EXHEADER_OCSP := ocsp.h $ EXHEADER_UI := ui.h,ui_compat.h $ EXHEADER_KRB5 := krb5_asn.h +$!EXHEADER_STORE := store.h,str_compat.h +$ EXHEADER_STORE := store.h $ $ I = 0 $ LOOP_SDIRS: @@ -487,11 +491,6 @@ $ ENDIF $ GOTO LOOP_SDIRS $ LOOP_SDIRS_END: $! -$! Copy All The ".H" Files From The [.RSAREF] Directory. -$! -$! EXHEADER := rsaref.h -$! COPY SYS$DISK:[.RSAREF]'EXHEADER' SYS$DISK:[.INCLUDE.OPENSSL] -$! $! Copy All The ".H" Files From The [.SSL] Directory. $! $ EXHEADER := ssl.h,ssl2.h,ssl3.h,ssl23.h,tls1.h,kssl.h @@ -520,11 +519,11 @@ $ SET DEFAULT SYS$DISK:[.CRYPTO] $! $! Build The [.xxx.EXE.CRYPTO]LIBCRYPTO.OLB Library. $! -$ @CRYPTO-LIB LIBRARY 'RSAREF' 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" "''ISSEVEN'" "''BUILDPART'" +$ @CRYPTO-LIB LIBRARY 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" "''ISSEVEN'" "''BUILDPART'" $! $! Build The [.xxx.EXE.CRYPTO]*.EXE Test Applications. $! -$ @CRYPTO-LIB APPS 'RSAREF' 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" 'ISSEVEN' +$ @CRYPTO-LIB APPS 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" 'ISSEVEN' "''BUILDPART'" $! $! Go Back To The Main Directory. $! @@ -534,34 +533,6 @@ $! Time To RETURN. $! $ RETURN $! -$! Build The [.xxx.EXE.RSAREF]LIBRSAGLUE Library. -$! -$ RSAREF: -$ WRITE SYS$OUTPUT "" -$ WRITE SYS$OUTPUT "RSAref glue library not built, since it's no longer needed" -$ RETURN -$! -$! Tell The User What We Are Doing. -$! -$ WRITE SYS$OUTPUT "" -$ WRITE SYS$OUTPUT "Building The [.",ARCH,".EXE.RSAREF]LIBRSAGLUE.OLB Library." -$! -$! Go To The [.RSAREF] Directory. -$! -$ SET DEFAULT SYS$DISK:[.RSAREF] -$! -$! Build The [.xxx.EXE.RSAREF]LIBRSAGLUE.OLB Library. -$! -$ @RSAREF-LIB LIBRARY 'DEBUGGER' "''COMPILER'" 'ISSEVEN' -$! -$! Go Back To The Main Directory. -$! -$ SET DEFAULT [-] -$! -$! Time To Return. -$! -$ RETURN -$! $! Build The "[.xxx.EXE.SSL]LIBSSL.OLB" Library. $! $ SSL: @@ -577,7 +548,7 @@ $ SET DEFAULT SYS$DISK:[.SSL] $! $! Build The [.xxx.EXE.SSL]LIBSSL.OLB Library. $! -$ @SSL-LIB LIBRARY 'RSAREF' 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" 'ISSEVEN' +$ @SSL-LIB LIBRARY 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" 'ISSEVEN' $! $! Go Back To The Main Directory. $! @@ -602,7 +573,7 @@ $ SET DEFAULT SYS$DISK:[.SSL] $! $! Build The [.xxx.EXE.SSL]SSL_TASK.EXE $! -$ @SSL-LIB SSL_TASK 'RSAREF' 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" 'ISSEVEN' +$ @SSL-LIB SSL_TASK 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" 'ISSEVEN' $! $! Go Back To The Main Directory. $! @@ -627,7 +598,7 @@ $ SET DEFAULT SYS$DISK:[.TEST] $! $! Build The Test Programs. $! -$ @MAKETESTS 'RSAREF' 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" 'ISSEVEN' +$ @MAKETESTS 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" 'ISSEVEN' $! $! Go Back To The Main Directory. $! @@ -652,7 +623,32 @@ $ SET DEFAULT SYS$DISK:[.APPS] $! $! Build The Application Programs. $! -$ @MAKEAPPS 'RSAREF' 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" 'ISSEVEN' +$ @MAKEAPPS 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" 'ISSEVEN' +$! +$! Go Back To The Main Directory. +$! +$ SET DEFAULT [-] +$! +$! That's All, Time To RETURN. +$! +$ RETURN +$! +$! Build The OpenSSL Application Programs. +$! +$ ENGINES: +$! +$! Tell The User What We Are Doing. +$! +$ WRITE SYS$OUTPUT "" +$ WRITE SYS$OUTPUT "Building OpenSSL [.",ARCH,".EXE.ENGINES] Engines." +$! +$! Go To The [.ENGINES] Directory. +$! +$ SET DEFAULT SYS$DISK:[.ENGINES] +$! +$! Build The Application Programs. +$! +$ @MAKEENGINES ENGINES 'DEBUGGER' "''COMPILER'" "''TCPIP_TYPE'" 'ISSEVEN' "''BUILDPART'" $! $! Go Back To The Main Directory. $! @@ -693,7 +689,7 @@ $! Else, Check To See If P1 Has A Valid Arguement. $! $ IF (P1.EQS."CONFIG").OR.(P1.EQS."BUILDINF").OR.(P1.EQS."SOFTLINKS") - .OR.(P1.EQS."BUILDALL") - - .OR.(P1.EQS."CRYPTO").OR.(P1.EQS."SSL").OR.(P1.EQS."RSAREF") - + .OR.(P1.EQS."CRYPTO").OR.(P1.EQS."SSL") - .OR.(P1.EQS."SSL_TASK").OR.(P1.EQS."TEST").OR.(P1.EQS."APPS") $ THEN $! @@ -741,54 +737,6 @@ $! End The P1 Check. $! $ ENDIF $! -$! Check To See If P2 Is Blank. -$! -$ P2 = "NORSAREF" -$ IF (P2.EQS."NORSAREF") -$ THEN -$! -$! P2 Is NORSAREF, So Compile Without RSAREF. -$! -$ RSAREF = "NORSAREF" -$! -$! Else... -$! -$ ELSE -$! -$! Check To See If We Are To Compile Using The RSAREF Library. -$! -$ IF (P2.EQS."RSAREF") -$ THEN -$! -$! Compile With RSAREF Library. -$! -$ RSAREF = "RSAREF" -$! -$! Else... -$! -$ ELSE -$! -$! Tell The User Entered An Invalid Option.. -$! -$ WRITE SYS$OUTPUT "" -$ WRITE SYS$OUTPUT "The Option ",P2," Is Invalid. The Valid Options Are:" -$ WRITE SYS$OUTPUT "" -$ WRITE SYS$OUTPUT " RSAREF : To Compile With The RSAREF Library." -$ WRITE SYS$OUTPUT " NORSAREF : To Compile With The Regular RSA Library." -$ WRITE SYS$OUTPUT "" -$! -$! Time To EXIT. -$! -$ EXIT -$! -$! End The Valid Arguemnt Check. -$! -$ ENDIF -$! -$! End The P2 Check. -$! -$ ENDIF -$! $! Check To See If P3 Is Blank. $! $ IF (P3.EQS."NODEBUG") @@ -995,7 +943,8 @@ $ ENDIF $! $! Time to check the contents of P5, and to make sure we get the correct library. $! -$ IF P5.EQS."SOCKETSHR" .OR. P5.EQS."MULTINET" .OR. P5.EQS."UCX" +$ IF P5.EQS."SOCKETSHR" .OR. P5.EQS."MULTINET" .OR. P5.EQS."UCX" - + .OR. P5.EQS."TCPIP" .OR. P5.EQS."NONE" $ THEN $! $! Check to see if SOCKETSHR was chosen @@ -1005,7 +954,7 @@ $ THEN $! $! Set the library to use SOCKETSHR $! -$ TCPIP_LIB = "[-.VMS]SOCKETSHR_SHR.OPT/OPT" +$ TCPIP_LIB = "SYS$DISK:[-.VMS]SOCKETSHR_SHR.OPT/OPT" $! $! Tell the user $! @@ -1039,7 +988,7 @@ $ THEN $! $! Set the library to use UCX. $! -$ TCPIP_LIB = "[-.VMS]UCX_SHR_DECC.OPT/OPT" +$ TCPIP_LIB = "SYS$DISK:[-.VMS]UCX_SHR_DECC.OPT/OPT" $! $! Tell the user $! @@ -1049,6 +998,40 @@ $! Done with UCX $! $ ENDIF $! +$! Check to see if TCPIP was chosen +$! +$ IF P5.EQS."TCPIP" +$ THEN +$! +$! Set the library to use TCPIP (post UCX). +$! +$ TCPIP_LIB = "SYS$DISK:[-.VMS]TCPIP_SHR_DECC.OPT/OPT" +$! +$! Tell the user +$! +$ WRITE SYS$OUTPUT "Using TCPIP (post UCX) for TCP/IP" +$! +$! Done with TCPIP +$! +$ ENDIF +$! +$! Check to see if NONE was chosen +$! +$ IF P5.EQS."NONE" +$ THEN +$! +$! Do not use a TCPIP library. +$! +$ TCPIP_LIB = "" +$! +$! Tell the user +$! +$ WRITE SYS$OUTPUT "A specific TCPIP library will not be used." +$! +$! Done with NONE. +$! +$ ENDIF +$! $! Set the TCPIP_TYPE symbol $! $ TCPIP_TYPE = P5 @@ -1070,6 +1053,8 @@ $ WRITE SYS$OUTPUT "The Option ",P5," Is Invalid. The Valid Options Are:" $ WRITE SYS$OUTPUT "" $ WRITE SYS$OUTPUT " SOCKETSHR : To link with SOCKETSHR TCP/IP library." $ WRITE SYS$OUTPUT " UCX : To link with UCX TCP/IP library." +$ WRITE SYS$OUTPUT " TCPIP : To link with TCPIP TCP/IP (post UCX) library." +$ WRITE SYS$OUTPUT " NONE : To not link with a specific TCP/IP library." $ WRITE SYS$OUTPUT "" $! $! Time To EXIT. @@ -1077,9 +1062,19 @@ $! $ EXIT $ ELSE $! +$! If TCPIP is not defined, then hardcode it to make +$! it clear that no TCPIP is desired. +$! +$ IF P5 .EQS. "" +$ THEN +$ TCPIP_LIB = "" +$ TCPIP_TYPE = "NONE" +$ ELSE +$! $! Set the TCPIP_TYPE symbol $! -$ TCPIP_TYPE = P5 +$ TCPIP_TYPE = P5 +$ ENDIF $ ENDIF $! $! Done with TCP/IP libraries