1$! INSTALL.COM -- Installs the files in a given directory tree 2$! 3$! Author: Richard Levitte <richard@levitte.org> 4$! Time of creation: 22-MAY-1998 10:13 5$! 6$! Changes by Zoltan Arpadffy <zoli@polarhome.com> 7$! 8$! P1 root of the directory tree 9$! 10$ IF P1 .EQS. "" 11$ THEN 12$ WRITE SYS$OUTPUT "First argument missing." 13$ WRITE SYS$OUTPUT - 14 "It should be the directory where you want things installed." 15$ EXIT 16$ ENDIF 17$ 18$ IF (F$GETSYI("CPU").LT.128) 19$ THEN 20$ ARCH := VAX 21$ ELSE 22$ ARCH = F$EDIT( F$GETSYI( "ARCH_NAME"), "UPCASE") 23$ IF (ARCH .EQS. "") THEN ARCH = "UNK" 24$ ENDIF 25$ 26$ ROOT = F$PARSE(P1,"[]A.;0",,,"SYNTAX_ONLY,NO_CONCEAL") - "A.;0" 27$ ROOT_DEV = F$PARSE(ROOT,,,"DEVICE","SYNTAX_ONLY") 28$ ROOT_DIR = F$PARSE(ROOT,,,"DIRECTORY","SYNTAX_ONLY") - 29 - "[000000." - "][" - "[" - "]" 30$ ROOT = ROOT_DEV + "[" + ROOT_DIR 31$ 32$ DEFINE/NOLOG WRK_SSLROOT 'ROOT'.] /TRANS=CONC 33$ DEFINE/NOLOG WRK_SSLLIB WRK_SSLROOT:['ARCH'_LIB] 34$ DEFINE/NOLOG WRK_SSLINCLUDE WRK_SSLROOT:[INCLUDE] 35$ 36$ IF F$PARSE("WRK_SSLROOT:[000000]") .EQS. "" THEN - 37 CREATE/DIR/LOG WRK_SSLROOT:[000000] 38$ IF F$PARSE("WRK_SSLLIB:") .EQS. "" THEN - 39 CREATE/DIR/LOG WRK_SSLLIB: 40$ IF F$PARSE("WRK_SSLINCLUDE:") .EQS. "" THEN - 41 CREATE/DIR/LOG WRK_SSLINCLUDE: 42$ 43$ SDIRS := ,- 44 _'ARCH',- 45 OBJECTS,- 46 MD2,MD4,MD5,SHA,MDC2,HMAC,RIPEMD,WHRLPOOL,- 47 DES,AES,RC2,RC4,RC5,IDEA,BF,CAST,CAMELLIA,SEED,- 48 BN,EC,RSA,DSA,ECDSA,DH,ECDH,DSO,ENGINE,- 49 BUFFER,BIO,STACK,LHASH,RAND,ERR,- 50 EVP,ASN1,PEM,X509,X509V3,CONF,TXT_DB,PKCS7,PKCS12,COMP,OCSP,- 51 UI,KRB5,- 52 STORE,CMS,PQUEUE,TS,JPAKE 53$ EXHEADER_ := crypto.h,opensslv.h,ebcdic.h,symhacks.h,ossl_typ.h 54$ EXHEADER__'ARCH' := opensslconf.h 55$ EXHEADER_OBJECTS := objects.h,obj_mac.h 56$ EXHEADER_MD2 := md2.h 57$ EXHEADER_MD4 := md4.h 58$ EXHEADER_MD5 := md5.h 59$ EXHEADER_SHA := sha.h 60$ EXHEADER_MDC2 := mdc2.h 61$ EXHEADER_HMAC := hmac.h 62$ EXHEADER_RIPEMD := ripemd.h 63$ EXHEADER_WHRLPOOL := whrlpool.h 64$ EXHEADER_DES := des.h,des_old.h 65$ EXHEADER_AES := aes.h 66$ EXHEADER_RC2 := rc2.h 67$ EXHEADER_RC4 := rc4.h 68$ EXHEADER_RC5 := rc5.h 69$ EXHEADER_IDEA := idea.h 70$ EXHEADER_BF := blowfish.h 71$ EXHEADER_CAST := cast.h 72$ EXHEADER_CAMELLIA := camellia.h 73$ EXHEADER_SEED := seed.h 74$ EXHEADER_MODES := modes.h 75$ EXHEADER_BN := bn.h 76$ EXHEADER_EC := ec.h 77$ EXHEADER_RSA := rsa.h 78$ EXHEADER_DSA := dsa.h 79$ EXHEADER_ECDSA := ecdsa.h 80$ EXHEADER_DH := dh.h 81$ EXHEADER_ECDH := ecdh.h 82$ EXHEADER_DSO := dso.h 83$ EXHEADER_ENGINE := engine.h 84$ EXHEADER_BUFFER := buffer.h 85$ EXHEADER_BIO := bio.h 86$ EXHEADER_STACK := stack.h,safestack.h 87$ EXHEADER_LHASH := lhash.h 88$ EXHEADER_RAND := rand.h 89$ EXHEADER_ERR := err.h 90$ EXHEADER_EVP := evp.h 91$ EXHEADER_ASN1 := asn1.h,asn1_mac.h,asn1t.h 92$ EXHEADER_PEM := pem.h,pem2.h 93$ EXHEADER_X509 := x509.h,x509_vfy.h 94$ EXHEADER_X509V3 := x509v3.h 95$ EXHEADER_CONF := conf.h,conf_api.h 96$ EXHEADER_TXT_DB := txt_db.h 97$ EXHEADER_PKCS7 := pkcs7.h 98$ EXHEADER_PKCS12 := pkcs12.h 99$ EXHEADER_COMP := comp.h 100$ EXHEADER_OCSP := ocsp.h 101$ EXHEADER_UI := ui.h,ui_compat.h 102$ EXHEADER_KRB5 := krb5_asn.h 103$! EXHEADER_STORE := store.h,str_compat.h 104$ EXHEADER_STORE := store.h 105$ EXHEADER_CMS := cms.h 106$ EXHEADER_PQUEUE := pqueue.h 107$ EXHEADER_TS := ts.h 108$ EXHEADER_JPAKE := jpake.h 109$ LIBS := LIBCRYPTO,LIBCRYPTO32 110$ 111$ EXE_DIR := [-.'ARCH'.EXE.CRYPTO] 112$ 113$ I = 0 114$ LOOP_SDIRS: 115$ D = F$EDIT(F$ELEMENT(I, ",", SDIRS),"TRIM") 116$ I = I + 1 117$ IF D .EQS. "," THEN GOTO LOOP_SDIRS_END 118$ tmp = EXHEADER_'D' 119$ IF D .EQS. "" 120$ THEN 121$ COPY 'tmp' WRK_SSLINCLUDE: /LOG 122$ ELSE 123$ COPY [.'D']'tmp' WRK_SSLINCLUDE: /LOG 124$ ENDIF 125$ SET FILE/PROT=WORLD:RE WRK_SSLINCLUDE:'tmp' 126$ GOTO LOOP_SDIRS 127$ LOOP_SDIRS_END: 128$ 129$ I = 0 130$ LOOP_LIB: 131$ E = F$EDIT(F$ELEMENT(I, ",", LIBS),"TRIM") 132$ I = I + 1 133$ IF E .EQS. "," THEN GOTO LOOP_LIB_END 134$ SET NOON 135$ IF F$SEARCH(EXE_DIR+E+".OLB") .NES. "" 136$ THEN 137$ COPY 'EXE_DIR''E'.OLB WRK_SSLLIB:'E'.OLB/log 138$ SET FILE/PROT=W:RE WRK_SSLLIB:'E'.OLB 139$ ENDIF 140$ ! Preparing for the time when we have shareable images 141$ IF F$SEARCH(EXE_DIR+E+".EXE") .NES. "" 142$ THEN 143$ COPY 'EXE_DIR''E'.EXE WRK_SSLLIB:'E'.EXE/log 144$ SET FILE/PROT=W:RE WRK_SSLLIB:'E'.EXE 145$ ENDIF 146$ SET ON 147$ GOTO LOOP_LIB 148$ LOOP_LIB_END: 149$ 150$ EXIT 151