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$! 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$!
37$ if (p2 .nes. "")
38$ then
39$   if (p2 .eqs. "64")
40$   then
41$     archd = arch+ "_64"
42$   else
43$     if (p2 .nes. "32")
44$     then
45$       write sys$output "Second argument invalid."
46$       write sys$output "It should be "32", "64", or nothing."
47$       exit
48$     endif
49$   endif
50$ endif
51$!
52$ root = f$parse( p1, "[]A.;0", , , "syntax_only, no_conceal") - "A.;0"
53$ root_dev = f$parse(root,,,"device","syntax_only")
54$ root_dir = f$parse(root,,,"directory","syntax_only") - -
55   "[000000." - "][" - "[" - "]"
56$ root = root_dev + "[" + root_dir
57$!
58$ define /nolog wrk_sslroot 'root'.] /trans=conc
59$ define /nolog wrk_sslxexe wrk_sslroot:['archd'_exe]
60$!
61$ if f$parse("wrk_sslroot:[000000]") .eqs. "" then -
62   create /directory /log wrk_sslroot:[000000]
63$ if f$parse("wrk_sslxexe:") .eqs. "" then -
64   create /directory /log wrk_sslxexe:
65$!
66$ exe := openssl
67$!
68$ exe_dir := [-.'archd'.exe.apps]
69$!
70$! Executables.
71$!
72$ i = 0
73$ loop_exe:
74$   e = f$edit(f$element( i, ",", exe), "trim")
75$   i = i + 1
76$   if e .eqs. "," then goto loop_exe_end
77$   set noon
78$   file = exe_dir+ e+ ".exe"
79$   if f$search( file) .nes. ""
80$   then
81$     copy /protection = w:re 'file' wrk_sslxexe: /log
82$   endif
83$   set on
84$ goto loop_exe
85$ loop_exe_end:
86$!
87$! Miscellaneous.
88$!
89$ set noon
90$ copy /protection = w:re ca.com wrk_sslxexe:ca.com /log
91$ copy /protection = w:re openssl-vms.cnf wrk_sslroot:[000000]openssl.cnf /log
92$ set on
93$!
94$ tidy:
95$!
96$ call deass wrk_sslroot
97$ call deass wrk_sslxexe
98$!
99$ exit
100$!
101$ deass: subroutine
102$ if (f$trnlnm( p1, "LNM$PROCESS") .nes. "")
103$ then
104$   deassign /process 'p1'
105$ endif
106$ endsubroutine
107$!
108