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$! P1 root of the directory tree 7$! 8$ IF P1 .EQS. "" 9$ THEN 10$ WRITE SYS$OUTPUT "First argument missing." 11$ WRITE SYS$OUTPUT "Should be the directory where you want things installed." 12$ EXIT 13$ ENDIF 14$ 15$ ROOT = F$PARSE(P1,"[]A.;0",,,"SYNTAX_ONLY,NO_CONCEAL") - "A.;0" 16$ ROOT_DEV = F$PARSE(ROOT,,,"DEVICE","SYNTAX_ONLY") 17$ ROOT_DIR = F$PARSE(ROOT,,,"DIRECTORY","SYNTAX_ONLY") - 18 - "[000000." - "][" - "[" - "]" 19$ ROOT = ROOT_DEV + "[" + ROOT_DIR 20$ 21$ DEFINE/NOLOG WRK_SSLROOT 'ROOT'.] /TRANS=CONC 22$ DEFINE/NOLOG WRK_SSLVLIB WRK_SSLROOT:[VAX_LIB] 23$ DEFINE/NOLOG WRK_SSLALIB WRK_SSLROOT:[ALPHA_LIB] 24$ DEFINE/NOLOG WRK_SSLINCLUDE WRK_SSLROOT:[INCLUDE] 25$ DEFINE/NOLOG WRK_SSLVEXE WRK_SSLROOT:[VAX_EXE] 26$ DEFINE/NOLOG WRK_SSLAEXE WRK_SSLROOT:[ALPHA_EXE] 27$ 28$ IF F$PARSE("WRK_SSLROOT:[000000]") .EQS. "" THEN - 29 CREATE/DIR/LOG WRK_SSLROOT:[000000] 30$ IF F$PARSE("WRK_SSLVLIB:") .EQS. "" THEN - 31 CREATE/DIR/LOG WRK_SSLVLIB: 32$ IF F$PARSE("WRK_SSLALIB:") .EQS. "" THEN - 33 CREATE/DIR/LOG WRK_SSLALIB: 34$ IF F$PARSE("WRK_SSLINCLUDE:") .EQS. "" THEN - 35 CREATE/DIR/LOG WRK_SSLINCLUDE: 36$ IF F$PARSE("WRK_SSLVEXE:") .EQS. "" THEN - 37 CREATE/DIR/LOG WRK_SSLVEXE: 38$ IF F$PARSE("WRK_SSLAEXE:") .EQS. "" THEN - 39 CREATE/DIR/LOG WRK_SSLAEXE: 40$ 41$ EXHEADER := ssl.h,ssl2.h,ssl3.h,ssl23.h,tls1.h,dtls1.h,kssl.h 42$ E_EXE := ssl_task 43$ LIBS := LIBSSL 44$ 45$ VEXE_DIR := [-.VAX.EXE.SSL] 46$ AEXE_DIR := [-.AXP.EXE.SSL] 47$ 48$ COPY 'EXHEADER' WRK_SSLINCLUDE:/LOG 49$ SET FILE/PROT=WORLD:RE WRK_SSLINCLUDE:'EXHEADER' 50$ 51$ I = 0 52$ LOOP_EXE: 53$ E = F$EDIT(F$ELEMENT(I, ",", E_EXE),"TRIM") 54$ I = I + 1 55$ IF E .EQS. "," THEN GOTO LOOP_EXE_END 56$ SET NOON 57$ IF F$SEARCH(VEXE_DIR+E+".EXE") .NES. "" 58$ THEN 59$ COPY 'VEXE_DIR''E'.EXE WRK_SSLVEXE:'E'.EXE/log 60$ SET FILE/PROT=W:RE WRK_SSLVEXE:'E'.EXE 61$ ENDIF 62$ IF F$SEARCH(AEXE_DIR+E+".EXE") .NES. "" 63$ THEN 64$ COPY 'AEXE_DIR''E'.EXE WRK_SSLAEXE:'E'.EXE/log 65$ SET FILE/PROT=W:RE WRK_SSLAEXE:'E'.EXE 66$ ENDIF 67$ SET ON 68$ GOTO LOOP_EXE 69$ LOOP_EXE_END: 70$ 71$ I = 0 72$ LOOP_LIB: 73$ E = F$EDIT(F$ELEMENT(I, ",", LIBS),"TRIM") 74$ I = I + 1 75$ IF E .EQS. "," THEN GOTO LOOP_LIB_END 76$ SET NOON 77$ IF F$SEARCH(VEXE_DIR+E+".OLB") .NES. "" 78$ THEN 79$ COPY 'VEXE_DIR''E'.OLB WRK_SSLVLIB:'E'.OLB/log 80$ SET FILE/PROT=W:RE WRK_SSLVLIB:'E'.OLB 81$ ENDIF 82$ ! Preparing for the time when we have shareable images 83$ IF F$SEARCH(VEXE_DIR+E+".EXE") .NES. "" 84$ THEN 85$ COPY 'VEXE_DIR''E'.EXE WRK_SSLVLIB:'E'.EXE/log 86$ SET FILE/PROT=W:RE WRK_SSLVLIB:'E'.EXE 87$ ENDIF 88$ IF F$SEARCH(AEXE_DIR+E+".OLB") .NES. "" 89$ THEN 90$ COPY 'AEXE_DIR''E'.OLB WRK_SSLALIB:'E'.OLB/log 91$ SET FILE/PROT=W:RE WRK_SSLALIB:'E'.OLB 92$ ENDIF 93$ ! Preparing for the time when we have shareable images 94$ IF F$SEARCH(AEXE_DIR+E+".EXE") .NES. "" 95$ THEN 96$ COPY 'AEXE_DIR''E'.EXE WRK_SSLALIB:'E'.EXE/log 97$ SET FILE/PROT=W:RE WRK_SSLALIB:'E'.EXE 98$ ENDIF 99$ SET ON 100$ GOTO LOOP_LIB 101$ LOOP_LIB_END: 102$ 103$ EXIT 104