1 | $ ! OpenSSL startup script
|
---|
2 | $ !
|
---|
3 | $ ! This script defines the logical names used by the installation
|
---|
4 | $ ! of OpenSSL. It can provide those logical names at any level,
|
---|
5 | $ ! defined by P1.
|
---|
6 | $ !
|
---|
7 | $ ! The logical names created are:
|
---|
8 | $ !
|
---|
9 | $ ! OSSL$INSTROOT Installation root
|
---|
10 | $ ! OSSL$DATAROOT Data root (common directory
|
---|
11 | $ ! for certs etc)
|
---|
12 | $ ! OSSL$INCLUDE Include directory root
|
---|
13 | $ ! OSSL$LIB Where the static library files
|
---|
14 | $ ! are located
|
---|
15 | $ ! OSSL$SHARE Where the shareable image files
|
---|
16 | $ ! are located
|
---|
17 | $ ! OSSL$EXE Where the executables are located
|
---|
18 | $ ! OSSL$ENGINESnnn Where the engines modules are located
|
---|
19 | $ ! OSSL$MODULES Where the non-engine modules are located
|
---|
20 | $ ! OSSL$LIBCRYPTO The static crypto library
|
---|
21 | $ ! OSSL$LIBSSL The static ssl library
|
---|
22 | $ ! OSSL$LIBCRYPTOnnn_SHR The shareable crypto image
|
---|
23 | $ ! OSSL$LIBSSLnnn_SHR The shareable ssl image
|
---|
24 | $ ! OPENSSL is OSSL$INCLUDE:[OPENSSL]
|
---|
25 | $ !
|
---|
26 | $ ! In all these, nnn is the OpenSSL version number. This allows
|
---|
27 | $ ! several OpenSSL versions to be installed simultaneously, which
|
---|
28 | $ ! matters for applications that are linked to the shareable images
|
---|
29 | $ ! or that depend on engines.
|
---|
30 | $ !
|
---|
31 | $ ! In addition, unless P2 is "NOALIASES", these logical names are
|
---|
32 | $ ! created:
|
---|
33 | $ !
|
---|
34 | $ ! OSSL$ENGINES Alias for OSSL$ENGINESnnn
|
---|
35 | $ ! OSSL$LIBCRYPTO_SHR Alias for OSSL$LIBCRYPTOnnn_SHR
|
---|
36 | $ ! OSSL$LIBSSL_SHR Alias for OSSL$LIBSSLnnn_SHR
|
---|
37 | $ !
|
---|
38 | $ ! P1 Qualifier(s) for DEFINE. "/SYSTEM" would be typical when
|
---|
39 | $ ! calling this script from SYS$STARTUP:SYSTARTUP_VMS.COM,
|
---|
40 | $ ! while "/PROCESS" would be typical for a personal install.
|
---|
41 | $ ! Default: /PROCESS
|
---|
42 | $ !
|
---|
43 | $ ! P2 If the value is "NOALIASES", no alias logical names are
|
---|
44 | $ ! created.
|
---|
45 | $
|
---|
46 | $ status = %x10000001 ! Generic success
|
---|
47 | $
|
---|
48 | $ ! In case there's a problem
|
---|
49 | $ ON CONTROL_Y THEN GOTO bailout
|
---|
50 | $ ON ERROR THEN GOTO bailout
|
---|
51 | $
|
---|
52 | $ ! Find the architecture
|
---|
53 | $ IF F$GETSYI("CPU") .LT. 128
|
---|
54 | $ THEN
|
---|
55 | $ arch := VAX
|
---|
56 | $ ELSE
|
---|
57 | $ arch = F$EDIT(F$GETSYI("ARCH_NAME"),"UPCASE")
|
---|
58 | $ IF arch .EQS. "" THEN GOTO unknown_arch
|
---|
59 | $ ENDIF
|
---|
60 | $
|
---|
61 | $ ! Generated information
|
---|
62 | $ INSTALLTOP := {- $config{INSTALLTOP} -}
|
---|
63 | $ OPENSSLDIR := {- $config{OPENSSLDIR} -}
|
---|
64 | $
|
---|
65 | $ ! Make sure that INSTALLTOP and OPENSSLDIR become something one
|
---|
66 | $ ! can build concealed logical names on
|
---|
67 | $ INSTALLTOP_ = F$PARSE("A.;",INSTALLTOP,,,"NO_CONCEAL") -
|
---|
68 | - ".][000000" - "[000000." - "][" - "]A.;" + "."
|
---|
69 | $ OPENSSLDIR_ = F$PARSE("A.;",OPENSSLDIR,,,"NO_CONCEAL") -
|
---|
70 | - ".][000000" - "[000000." - "][" - "]A.;" + "."
|
---|
71 | $
|
---|
72 | $ DEFINE /TRANSLATION=CONCEALED /NOLOG WRK_INSTALLTOP 'INSTALLTOP_']
|
---|
73 | $ DEFINE /TRANSLATION=CONCEALED /NOLOG WRK_OPENSSLDIR 'OPENSSLDIR_']
|
---|
74 | $
|
---|
75 | $ ! Check that things are in place, and specifically, the stuff
|
---|
76 | $ ! belonging to this architecture
|
---|
77 | $ IF F$SEARCH("WRK_INSTALLTOP:[000000]INCLUDE.DIR;1") .EQS. "" -
|
---|
78 | .OR. F$SEARCH("WRK_INSTALLTOP:[000000]LIB.DIR;1") .EQS. "" -
|
---|
79 | .OR. F$SEARCH("WRK_INSTALLTOP:[000000]EXE.DIR;1") .EQS. "" -
|
---|
80 | .OR. F$SEARCH("WRK_INSTALLTOP:[LIB]''arch'.DIR;1") .EQS. "" -
|
---|
81 | .OR. F$SEARCH("WRK_INSTALLTOP:[EXE]''arch'.DIR;1") .EQS. "" -
|
---|
82 | .OR. F$SEARCH("WRK_OPENSSLDIR:[000000]openssl.cnf") .EQS. ""
|
---|
83 | $ THEN
|
---|
84 | $ WRITE SYS$ERROR "''INSTALLTOP' doesn't look like an OpenSSL installation for ''arch'"
|
---|
85 | $ status = %x00018292 ! RMS$_FNF, file not found
|
---|
86 | $ GOTO bailout
|
---|
87 | $ ENDIF
|
---|
88 | $
|
---|
89 | $ ! Abbrevs
|
---|
90 | $ DEFT := DEFINE /TRANSLATION=CONCEALED /NOLOG 'P1'
|
---|
91 | $ DEF := DEFINE /NOLOG 'P1'
|
---|
92 | $ sv := {- platform->shlib_version_as_filename(); -}
|
---|
93 | $ pz := {- $target{pointer_size} -}
|
---|
94 | $
|
---|
95 | $ DEFT OSSL$DATAROOT 'OPENSSLDIR_']
|
---|
96 | $ DEFT OSSL$INSTROOT 'INSTALLTOP_']
|
---|
97 | $ DEFT OSSL$INCLUDE 'INSTALLTOP_'INCLUDE.]
|
---|
98 | $ DEF OSSL$LIB OSSL$INSTROOT:[LIB.'arch']
|
---|
99 | $ DEF OSSL$SHARE OSSL$INSTROOT:[LIB.'arch']
|
---|
100 | $ DEF OSSL$ENGINES'sv''pz' OSSL$INSTROOT:[ENGINES'sv''pz'.'arch']
|
---|
101 | $ DEF OSSL$MODULES'pz' OSSL$INSTROOT:[MODULES'pz'.'arch']
|
---|
102 | $ DEF OSSL$EXE OSSL$INSTROOT:[EXE.'arch'],-
|
---|
103 | OSSL$INSTROOT:[EXE]
|
---|
104 | $ DEF OSSL$LIBCRYPTO'pz' OSSL$LIB:OSSL$LIBCRYPTO'pz'.OLB
|
---|
105 | $ DEF OSSL$LIBSSL'pz' OSSL$LIB:OSSL$LIBSSL'pz'.OLB
|
---|
106 | ${- output_off() if $config{no_shared}; "" -}
|
---|
107 | $ DEF OSSL$LIBCRYPTO'sv'_SHR'pz' OSSL$SHARE:OSSL$LIBCRYPTO'sv'_SHR'pz'.EXE
|
---|
108 | $ DEF OSSL$LIBSSL'sv'_SHR'pz' OSSL$SHARE:OSSL$LIBSSL'sv'_SHR'pz'.EXE
|
---|
109 | ${- output_on() if $config{no_shared}; "" -}
|
---|
110 | $ DEF OPENSSL OSSL$INCLUDE:[OPENSSL]
|
---|
111 | $
|
---|
112 | $ IF P2 .NES. "NOALIASES"
|
---|
113 | $ THEN
|
---|
114 | $ DEF OSSL$ENGINES'pz' OSSL$ENGINES'sv''pz'
|
---|
115 | ${- output_off() if $config{no_shared}; "" -}
|
---|
116 | $ DEF OSSL$LIBCRYPTO_SHR'pz' OSSL$LIBCRYPTO'sv'_SHR'pz'
|
---|
117 | $ DEF OSSL$LIBSSL_SHR'pz' OSSL$LIBSSL'sv'_SHR'pz'
|
---|
118 | ${- output_on() if $config{no_shared}; "" -}
|
---|
119 | $ ENDIF
|
---|
120 | $
|
---|
121 | $ bailout:
|
---|
122 | $ DEASSIGN WRK_INSTALLTOP
|
---|
123 | $ DEASSIGN WRK_OPENSSLDIR
|
---|
124 | $
|
---|
125 | $ EXIT 'status'
|
---|