1$! INSTALL-SSL.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$! P2 "64" for 64-bit pointers. 8$! 9$! 10$! Announce/identify. 11$! 12$ proc = f$environment( "procedure") 13$ write sys$output "@@@ "+ - 14 f$parse( proc, , , "name")+ f$parse( proc, , , "type") 15$! 16$ on error then goto tidy 17$ on control_c then goto tidy 18$! 19$ if p1 .eqs. "" 20$ then 21$ write sys$output "First argument missing." 22$ write sys$output - 23 "It should be the directory where you want things installed." 24$ exit 25$ endif 26$! 27$ if (f$getsyi( "cpu") .lt. 128) 28$ then 29$ arch = "VAX" 30$ else 31$ arch = f$edit( f$getsyi( "arch_name"), "upcase") 32$ if (arch .eqs. "") then arch = "UNK" 33$ endif 34$! 35$ archd = arch 36$ lib32 = "32" 37$ shr = "_SHR32" 38$! 39$ if (p2 .nes. "") 40$ then 41$ if (p2 .eqs. "64") 42$ then 43$ archd = arch+ "_64" 44$ lib32 = "" 45$ shr = "_SHR" 46$ else 47$ if (p2 .nes. "32") 48$ then 49$ write sys$output "Second argument invalid." 50$ write sys$output "It should be "32", "64", or nothing." 51$ exit 52$ endif 53$ endif 54$ endif 55$! 56$ root = f$parse( p1, "[]A.;0", , , "syntax_only, no_conceal") - "A.;0" 57$ root_dev = f$parse(root,,,"device","syntax_only") 58$ root_dir = f$parse(root,,,"directory","syntax_only") - - 59 "[000000." - "][" - "[" - "]" 60$ root = root_dev + "[" + root_dir 61$! 62$ define /nolog wrk_sslroot 'root'.] /trans=conc 63$ define /nolog wrk_sslinclude wrk_sslroot:[include] 64$ define /nolog wrk_sslxexe wrk_sslroot:['archd'_exe] 65$ define /nolog wrk_sslxlib wrk_sslroot:['arch'_lib] 66$! 67$ if f$parse("wrk_sslroot:[000000]") .eqs. "" then - 68 create /directory /log wrk_sslroot:[000000] 69$ if f$parse("wrk_sslinclude:") .eqs. "" then - 70 create /directory /log wrk_sslinclude: 71$ if f$parse("wrk_sslxexe:") .eqs. "" then - 72 create /directory /log wrk_sslxexe: 73$ if f$parse("wrk_sslxlib:") .eqs. "" then - 74 create /directory /log wrk_sslxlib: 75$! 76$ exheader := ssl.h, ssl2.h, ssl3.h, ssl23.h, tls1.h, dtls1.h, kssl.h, srtp.h 77$ e_exe := ssl_task 78$ libs := ssl_libssl 79$! 80$ xexe_dir := [-.'archd'.exe.ssl] 81$! 82$ copy /protection = w:re 'exheader' wrk_sslinclude: /log 83$! 84$ i = 0 85$ loop_exe: 86$ e = f$edit( f$element( i, ",", e_exe), "trim") 87$ i = i + 1 88$ if e .eqs. "," then goto loop_exe_end 89$ set noon 90$ file = xexe_dir+ e+ ".exe" 91$ if f$search( file) .nes. "" 92$ then 93$ copy /protection = w:re 'file' wrk_sslxexe: /log 94$ endif 95$ set on 96$ goto loop_exe 97$ loop_exe_end: 98$! 99$ i = 0 100$ loop_lib: 101$ e = f$edit(f$element(i, ",", libs),"trim") 102$ i = i + 1 103$ if e .eqs. "," then goto loop_lib_end 104$ set noon 105$! Object library. 106$ file = xexe_dir+ e+ lib32+ ".olb" 107$ if f$search( file) .nes. "" 108$ then 109$ copy /protection = w:re 'file' wrk_sslxlib: /log 110$ endif 111$! Shareable image. 112$ file = xexe_dir+ e+ shr+ ".exe" 113$ if f$search( file) .nes. "" 114$ then 115$ copy /protection = w:re 'file' wrk_sslxlib: /log 116$ endif 117$ set on 118$ goto loop_lib 119$ loop_lib_end: 120$! 121$ tidy: 122$! 123$ call deass wrk_sslroot 124$ call deass wrk_sslinclude 125$ call deass wrk_sslxexe 126$ call deass wrk_sslxlib 127$! 128$ exit 129$! 130$ deass: subroutine 131$ if (f$trnlnm( p1, "LNM$PROCESS") .nes. "") 132$ then 133$ deassign /process 'p1' 134$ endif 135$ endsubroutine 136$! 137