137 lines
3.6 KiB
Plaintext
137 lines
3.6 KiB
Plaintext
$! INSTALL.COM -- Installs the files in a given directory tree
|
|
$!
|
|
$! Author: Richard Levitte <richard@levitte.org>
|
|
$! Time of creation: 22-MAY-1998 10:13
|
|
$!
|
|
$! P1 root of the directory tree
|
|
$! P2 "64" for 64-bit pointers.
|
|
$!
|
|
$!
|
|
$! Announce/identify.
|
|
$!
|
|
$ proc = f$environment( "procedure")
|
|
$ write sys$output "@@@ "+ -
|
|
f$parse( proc, , , "name")+ f$parse( proc, , , "type")
|
|
$!
|
|
$ def_orig = f$environment( "default")
|
|
$ on error then goto tidy
|
|
$ on control_c then goto tidy
|
|
$!
|
|
$ if (p1 .eqs. "")
|
|
$ then
|
|
$ write sys$output "First argument missing."
|
|
$ write sys$output -
|
|
"It should be the directory where you want things installed."
|
|
$ exit
|
|
$ endif
|
|
$!
|
|
$ if (f$getsyi("cpu") .lt. 128)
|
|
$ then
|
|
$ arch = "VAX"
|
|
$ else
|
|
$ arch = f$edit( f$getsyi( "arch_name"), "upcase")
|
|
$ if (arch .eqs. "") then arch = "UNK"
|
|
$ endif
|
|
$!
|
|
$ archd = arch
|
|
$!
|
|
$ if (p2 .nes. "")
|
|
$ then
|
|
$ if (p2 .eqs. "64")
|
|
$ then
|
|
$ archd = arch+ "_64"
|
|
$ else
|
|
$ if (p2 .nes. "32")
|
|
$ then
|
|
$ write sys$output "Second argument invalid."
|
|
$ write sys$output "It should be "32", "64", or nothing."
|
|
$ exit
|
|
$ endif
|
|
$ endif
|
|
$ endif
|
|
$!
|
|
$ root = f$parse( p1, "[]A.;0", , , "syntax_only, no_conceal") - "A.;0"
|
|
$ root_dev = f$parse( root, , , "device", "syntax_only")
|
|
$ root_dir = f$parse( root, , , "directory", "syntax_only") -
|
|
- ".][000000" - "[000000." - "][" - "[" - "]"
|
|
$ root = root_dev + "[" + root_dir
|
|
$!
|
|
$ define /nolog wrk_sslroot 'root'.] /trans=conc
|
|
$ define /nolog wrk_sslcerts wrk_sslroot:[certs]
|
|
$ define /nolog wrk_sslinclude wrk_sslroot:[include]
|
|
$ define /nolog wrk_ssllib wrk_sslroot:[lib]
|
|
$ define /nolog wrk_sslprivate wrk_sslroot:[private]
|
|
$ define /nolog wrk_sslxexe wrk_sslroot:['archd'_exe]
|
|
$ define /nolog wrk_sslxlib wrk_sslroot:['arch'_lib]
|
|
$!
|
|
$! Exhibit the destination directory.
|
|
$!
|
|
$ write sys$output " Installing to (WRK_SSLROOT) ="
|
|
$ write sys$output " ''f$trnlnm( "wrk_sslroot")'"
|
|
$ write sys$output ""
|
|
$!
|
|
$ if f$parse("wrk_sslroot:[000000]") .eqs. "" then -
|
|
create /directory /log wrk_sslroot:[000000]
|
|
$ if f$parse("wrk_sslxexe:") .eqs. "" then -
|
|
create /directory /log wrk_sslxexe:
|
|
$ if f$parse("wrk_sslxlib:") .eqs. "" then -
|
|
create /directory /log wrk_sslxlib:
|
|
$ if f$parse("wrk_ssllib:") .eqs. "" then -
|
|
create /directory /log wrk_ssllib:
|
|
$ if f$parse("wrk_sslinclude:") .eqs. "" then -
|
|
create /directory /log wrk_sslinclude:
|
|
$ if f$parse("wrk_sslcerts:") .eqs. "" then -
|
|
create /directory /log wrk_sslcerts:
|
|
$ if f$parse("wrk_sslprivate:") .eqs. "" then -
|
|
create /directory /log wrk_sslprivate:
|
|
$ if f$parse("wrk_sslroot:[VMS]") .EQS. "" THEN -
|
|
create /directory /log wrk_sslroot:[VMS]
|
|
$!
|
|
$ sdirs := CRYPTO, SSL, APPS, VMS !!!, RSAREF, TEST, TOOLS
|
|
$ exheader := e_os2.h
|
|
$!
|
|
$ copy /protection = w:re 'exheader' wrk_sslinclude: /log
|
|
$!
|
|
$ i = 0
|
|
$ loop_sdirs:
|
|
$ d = f$edit( f$element(i, ",", sdirs), "trim")
|
|
$ i = i + 1
|
|
$ if d .eqs. "," then goto loop_sdirs_end
|
|
$ write sys$output "Installing ", d, " files."
|
|
$ set default [.'d']
|
|
$ @ install-'d'.com 'root'] 'p2'
|
|
$ set default 'def_orig'
|
|
$ goto loop_sdirs
|
|
$ loop_sdirs_end:
|
|
$!
|
|
$ write sys$output ""
|
|
$ write sys$output " Installation done!"
|
|
$ write sys$output ""
|
|
$ if (f$search( root+ "...]*.*;-1") .nes. "")
|
|
$ then
|
|
$ write sys$output " You might want to purge ", root, "...]"
|
|
$ write sys$output ""
|
|
$ endif
|
|
$!
|
|
$ tidy:
|
|
$!
|
|
$ set default 'def_orig'
|
|
$!
|
|
$ call deass wrk_sslroot
|
|
$ call deass wrk_sslcerts
|
|
$ call deass wrk_sslinclude
|
|
$ call deass wrk_ssllib
|
|
$ call deass wrk_sslprivate
|
|
$ call deass wrk_sslxexe
|
|
$ call deass wrk_sslxlib
|
|
$!
|
|
$ exit
|
|
$!
|
|
$ deass: subroutine
|
|
$ if (f$trnlnm( p1, "LNM$PROCESS") .nes. "")
|
|
$ then
|
|
$ deassign /process 'p1'
|
|
$ endif
|
|
$ endsubroutine
|
|
$!
|