X-Git-Url: https://git.openssl.org/?p=openssl.git;a=blobdiff_plain;f=makevms.com;h=b5eea542367527465fbf9deb8911640fc0b275d0;hp=f55231e2a00bfa3867d5d877afa53f46b6a7e9e0;hb=9226e2187c14979352cb78886ab8f0a90b3aef46;hpb=eec79f9bab5ec799eace3cd1c87a470f32ef43d3 diff --git a/makevms.com b/makevms.com index f55231e2a0..b5eea54236 100755 --- a/makevms.com +++ b/makevms.com @@ -56,11 +56,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) $! @@ -187,6 +192,59 @@ $! $ WRITE H_FILE "/* This file was automatically built using makevms.com */" $ WRITE H_FILE "/* and [.CRYPTO]OPENSSLCONF.H_IN */" $ +$! +$! Write a few macros that indicate how this system was built. +$! +$ WRITE H_FILE "" +$ WRITE H_FILE "#ifndef OPENSSL_SYS_VMS" +$ WRITE H_FILE "# define OPENSSL_SYS_VMS" +$ WRITE H_FILE "#endif" +$ CONFIG_LOGICALS := NO_ASM,NO_RSA,NO_DSA,NO_DH,NO_MD2,NO_MD5,NO_RIPEMD,- + NO_SHA,NO_SHA0,NO_SHA1,NO_DES/NO_MDC2;NO_MDC2,NO_RC2,NO_RC4,NO_RC5,- + NO_IDEA,NO_BF,NO_CAST,NO_HMAC,NO_SSL2 +$ CONFIG_LOG_I = 0 +$ CONFIG_LOG_LOOP: +$ CONFIG_LOG_E1 = F$ELEMENT(CONFIG_LOG_I,",",CONFIG_LOGICALS) +$ CONFIG_LOG_I = CONFIG_LOG_I + 1 +$ IF CONFIG_LOG_E1 .EQS. "" THEN GOTO CONFIG_LOG_LOOP +$ IF CONFIG_LOG_E1 .EQS. "," THEN GOTO CONFIG_LOG_LOOP_END +$ CONFIG_LOG_E2 = F$EDIT(CONFIG_LOG_E1,"TRIM") +$ CONFIG_LOG_E1 = F$ELEMENT(0,";",CONFIG_LOG_E2) +$ CONFIG_LOG_E2 = F$ELEMENT(1,";",CONFIG_LOG_E2) +$ CONFIG_LOG_E0 = F$ELEMENT(0,"/",CONFIG_LOG_E1) +$ CONFIG_LOG_E1 = F$ELEMENT(1,"/",CONFIG_LOG_E1) +$ IF F$TRNLNM("OPENSSL_"+CONFIG_LOG_E0) +$ THEN +$ WRITE H_FILE "#ifndef OPENSSL_",CONFIG_LOG_E0 +$ WRITE H_FILE "# define OPENSSL_",CONFIG_LOG_E0 +$ WRITE H_FILE "#endif" +$ IF CONFIG_LOG_E1 .NES. "/" +$ THEN +$ WRITE H_FILE "#ifndef OPENSSL_",CONFIG_LOG_E1 +$ WRITE H_FILE "# define OPENSSL_",CONFIG_LOG_E1 +$ WRITE H_FILE "#endif" +$ ENDIF +$ ELSE +$ IF CONFIG_LOG_E2 .NES. ";" +$ THEN +$ IF F$TRNLNM("OPENSSL_"+CONFIG_LOG_E2) +$ THEN +$ WRITE H_FILE "#ifndef OPENSSL_",CONFIG_LOG_E2 +$ WRITE H_FILE "# define OPENSSL_",CONFIG_LOG_E2 +$ WRITE H_FILE "#endif" +$ ENDIF +$ ENDIF +$ ENDIF +$ GOTO CONFIG_LOG_LOOP +$ CONFIG_LOG_LOOP_END: +$ WRITE H_FILE "#ifndef OPENSSL_THREADS" +$ WRITE H_FILE "# define OPENSSL_THREADS" +$ WRITE H_FILE "#endif" +$ WRITE H_FILE "#ifndef OPENSSL_NO_KRB5" +$ WRITE H_FILE "# define OPENSSL_NO_KRB5" +$ WRITE H_FILE "#endif" +$ WRITE H_FILE "" +$! $! Different tar version may have named the file differently $ IF F$SEARCH("[.CRYPTO]OPENSSLCONF.H_IN") .NES. "" $ THEN @@ -196,11 +254,16 @@ $ 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" $ THEN $! @@ -233,6 +296,8 @@ $ WRITE H_FILE "#undef THIRTY_TWO_BIT" $ WRITE H_FILE "#undef SIXTEEN_BIT" $ WRITE H_FILE "#undef EIGHT_BIT" $ WRITE H_FILE "#endif" +$ +$ WRITE H_FILE "#undef OPENSSL_EXPORT_VAR_AS_FUNCTION" $! $! Else... $! @@ -265,6 +330,9 @@ $ WRITE H_FILE "#define THIRTY_TWO_BIT" $ WRITE H_FILE "#undef SIXTEEN_BIT" $ WRITE H_FILE "#undef EIGHT_BIT" $ WRITE H_FILE "#endif" +$ +$ WRITE H_FILE "#undef OPENSSL_EXPORT_VAR_AS_FUNCTION" +$ WRITE H_FILE "#define OPENSSL_EXPORT_VAR_AS_FUNCTION" $! $! End $! @@ -314,7 +382,7 @@ $ SOFTLINKS: $! $! Tell The User We Are Partly Rebuilding The [.TEST] 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;* $! @@ -338,10 +406,12 @@ $! First, We Have To "Rebuild" The "[.TEST]" Directory, So Delete $! All The "C" Files That Are Currently There Now. $! $ DELETE SYS$DISK:[.TEST]*.C;* +$ DELETE SYS$DISK:[.TEST]EVPTESTS.TXT;* $! $! Copy all the *TEST.C files from [.CRYPTO...] into [.TEST] $! $ COPY SYS$DISK:[.CRYPTO.*]%*TEST.C SYS$DISK:[.TEST] +$ COPY SYS$DISK:[.CRYPTO.EVP]EVPTESTS.TXT SYS$DISK:[.TEST] $! $! Copy all the *TEST.C files from [.SSL...] into [.TEST] $! @@ -358,17 +428,18 @@ $ IF F$PARSE("SYS$DISK:[.INCLUDE.OPENSSL]") .EQS. "" THEN - $! $! Copy All The ".H" Files From The Main Directory. $! -$ EXHEADER := e_os.h,e_os2.h +$ EXHEADER := e_os2.h $ COPY 'EXHEADER' SYS$DISK:[.INCLUDE.OPENSSL] $! $! Copy All The ".H" Files From The [.CRYPTO] Directory Tree. $! $ SDIRS := ,MD2,MD4,MD5,SHA,MDC2,HMAC,RIPEMD,- DES,RC2,RC4,RC5,IDEA,BF,CAST,- - BN,RSA,DSA,DH,DSO,ENGINE,- + BN,EC,RSA,DSA,ECDSA,DH,ECDH,DSO,ENGINE,AES,- BUFFER,BIO,STACK,LHASH,RAND,ERR,OBJECTS,- - EVP,ASN1,PEM,X509,X509V3,CONF,TXT_DB,PKCS7,PKCS12,COMP -$ EXHEADER_ := crypto.h,tmdiff.h,opensslv.h,opensslconf.h,ebcdic.h,symhacks.h + EVP,ASN1,PEM,X509,X509V3,CONF,TXT_DB,PKCS7,PKCS12,COMP,OCSP,UI,KRB5 +$ EXHEADER_ := crypto.h,tmdiff.h,opensslv.h,opensslconf.h,ebcdic.h,symhacks.h,- + ossl_typ.h $ EXHEADER_MD2 := md2.h $ EXHEADER_MD4 := md4.h $ EXHEADER_MD5 := md5.h @@ -376,7 +447,7 @@ $ EXHEADER_SHA := sha.h $ EXHEADER_MDC2 := mdc2.h $ EXHEADER_HMAC := hmac.h $ EXHEADER_RIPEMD := ripemd.h -$ EXHEADER_DES := des.h +$ EXHEADER_DES := des.h,des_old.h $ EXHEADER_RC2 := rc2.h $ EXHEADER_RC4 := rc4.h $ EXHEADER_RC5 := rc5.h @@ -384,11 +455,15 @@ $ EXHEADER_IDEA := idea.h $ EXHEADER_BF := blowfish.h $ EXHEADER_CAST := cast.h $ 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_AES := aes.h $ EXHEADER_BUFFER := buffer.h $ EXHEADER_BIO := bio.h $ EXHEADER_STACK := stack.h,safestack.h @@ -397,7 +472,7 @@ $ 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 +$ EXHEADER_ASN1 := asn1.h,asn1_mac.h,asn1t.h $ EXHEADER_PEM := pem.h,pem2.h $ EXHEADER_X509 := x509.h,x509_vfy.h $ EXHEADER_X509V3 := x509v3.h @@ -406,6 +481,9 @@ $ EXHEADER_TXT_DB := txt_db.h $ EXHEADER_PKCS7 := pkcs7.h $ EXHEADER_PKCS12 := pkcs12.h $ EXHEADER_COMP := comp.h +$ EXHEADER_OCSP := ocsp.h +$ EXHEADER_UI := ui.h,ui_compat.h +$ EXHEADER_KRB5 := krb5_asn.h $ $ I = 0 $ LOOP_SDIRS: @@ -424,12 +502,12 @@ $ LOOP_SDIRS_END: $! $! Copy All The ".H" Files From The [.RSAREF] Directory. $! -$ EXHEADER := rsaref.h -$ COPY SYS$DISK:[.RSAREF]'EXHEADER' SYS$DISK:[.INCLUDE.OPENSSL] +$! 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 +$ EXHEADER := ssl.h,ssl2.h,ssl3.h,ssl23.h,tls1.h,kssl.h $ COPY SYS$DISK:[.SSL]'EXHEADER' SYS$DISK:[.INCLUDE.OPENSSL] $! $! Purge all doubles @@ -472,6 +550,9 @@ $! $! 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. $! @@ -647,7 +728,6 @@ $ WRITE SYS$OUTPUT " CONFIG : Just build the [.CRYPTO]OPENSSLCONF.H fi $ WRITE SYS$OUTPUT " BUILDINF : Just build the [.CRYPTO]BUILDINF.H file." $ WRITE SYS$OUTPUT " SOFTLINKS: Just Fix The Unix soft links." $ WRITE SYS$OUTPUT " BUILDALL : Same as ALL, except CONFIG, BUILDINF and SOFTILNKS aren't done." -$ WRITE SYS$OUTPUT " RSAREF : To Build Just The [.xxx.EXE.RSAREF]LIBRSAGLUE.OLB Library." $ WRITE SYS$OUTPUT " CRYPTO : To Build Just The [.xxx.EXE.CRYPTO]LIBCRYPTO.OLB Library." $ WRITE SYS$OUTPUT " CRYPTO/x : To Build Just The x Part Of The" $ WRITE SYS$OUTPUT " [.xxx.EXE.CRYPTO]LIBCRYPTO.OLB Library." @@ -676,6 +756,7 @@ $ ENDIF $! $! Check To See If P2 Is Blank. $! +$ P2 = "NORSAREF" $ IF (P2.EQS."NORSAREF") $ THEN $! @@ -927,7 +1008,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 @@ -937,7 +1019,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 $! @@ -971,7 +1053,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 $! @@ -981,6 +1063,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 @@ -1002,6 +1118,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. @@ -1009,9 +1127,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