| Index: openssl/VMS/openssl_startup.com
|
| ===================================================================
|
| --- openssl/VMS/openssl_startup.com (revision 0)
|
| +++ openssl/VMS/openssl_startup.com (revision 0)
|
| @@ -0,0 +1,108 @@
|
| +$!
|
| +$! Startup file for OpenSSL 1.x.
|
| +$!
|
| +$! 2011-03-05 SMS.
|
| +$!
|
| +$! This procedure must reside in the OpenSSL installation directory.
|
| +$! It will fail if it is copied to a different location.
|
| +$!
|
| +$! P1 qualifier(s) for DEFINE. For example, "/SYSTEM" to get the
|
| +$! logical names defined in the system logical name table.
|
| +$!
|
| +$! P2 "64", to use executables which were built with 64-bit pointers.
|
| +$!
|
| +$! Good (default) and bad status values.
|
| +$!
|
| +$ status = %x00010001 ! RMS$_NORMAL, normal successful completion.
|
| +$ rms_e_fnf = %x00018292 ! RMS$_FNF, file not found.
|
| +$!
|
| +$! Prepare for problems.
|
| +$!
|
| +$ orig_dev_dir = f$environment( "DEFAULT")
|
| +$ on control_y then goto clean_up
|
| +$ on error then goto clean_up
|
| +$!
|
| +$! Determine hardware architecture.
|
| +$!
|
| +$ if (f$getsyi( "cpu") .lt. 128)
|
| +$ then
|
| +$ arch_name = "VAX"
|
| +$ else
|
| +$ arch_name = f$edit( f$getsyi( "arch_name"), "upcase")
|
| +$ if (arch_name .eqs. "") then arch_name = "UNK"
|
| +$ endif
|
| +$!
|
| +$ if (p2 .eqs. "64")
|
| +$ then
|
| +$ arch_name_exe = arch_name+ "_64"
|
| +$ else
|
| +$ arch_name_exe = arch_name
|
| +$ endif
|
| +$!
|
| +$! Derive the OpenSSL installation device:[directory] from the location
|
| +$! of this command procedure.
|
| +$!
|
| +$ proc = f$environment( "procedure")
|
| +$ proc_dev_dir = f$parse( "A.;", proc, , , "no_conceal") - "A.;"
|
| +$ proc_dev = f$parse( proc_dev_dir, , , "device", "syntax_only")
|
| +$ proc_dir = f$parse( proc_dev_dir, , , "directory", "syntax_only") - -
|
| + ".][000000"- "[000000."- "]["- "["- "]"
|
| +$ proc_dev_dir = proc_dev+ "["+ proc_dir+ "]"
|
| +$ set default 'proc_dev_dir'
|
| +$ set default [-]
|
| +$ ossl_dev_dir = f$environment( "default")
|
| +$!
|
| +$! Check existence of expected directories (to see if this procedure has
|
| +$! been moved away from its proper place).
|
| +$!
|
| +$ if ((f$search( "certs.dir;1") .eqs. "") .or. -
|
| + (f$search( "include.dir;1") .eqs. "") .or. -
|
| + (f$search( "private.dir;1") .eqs. "") .or. -
|
| + (f$search( "vms.dir;1") .eqs. ""))
|
| +$ then
|
| +$ write sys$output -
|
| + " Can't find expected common OpenSSL directories in:"
|
| +$ write sys$output " ''ossl_dev_dir'"
|
| +$ status = rms_e_fnf
|
| +$ goto clean_up
|
| +$ endif
|
| +$!
|
| +$ if ((f$search( "''arch_name_exe'_exe.dir;1") .eqs. "") .or. -
|
| + (f$search( "''arch_name'_lib.dir;1") .eqs. ""))
|
| +$ then
|
| +$ write sys$output -
|
| + " Can't find expected architecture-specific OpenSSL directories in:"
|
| +$ write sys$output " ''ossl_dev_dir'"
|
| +$ status = rms_e_fnf
|
| +$ goto clean_up
|
| +$ endif
|
| +$!
|
| +$! All seems well (enough). Define the OpenSSL logical names.
|
| +$!
|
| +$ ossl_root = ossl_dev_dir- "]"+ ".]"
|
| +$ define /translation_attributes = concealed /nolog'p1 SSLROOT 'ossl_root'
|
| +$ define /nolog 'p1' SSLCERTS sslroot:[certs]
|
| +$ define /nolog 'p1' SSLINCLUDE sslroot:[include]
|
| +$ define /nolog 'p1' SSLPRIVATE sslroot:[private]
|
| +$ define /nolog 'p1' SSLEXE sslroot:['arch_name_exe'_exe]
|
| +$ define /nolog 'p1' SSLLIB sslroot:['arch_name'_lib]
|
| +$!
|
| +$! Defining OPENSSL lets a C program use "#include <openssl/{foo}.h>":
|
| +$ define /nolog 'p1' OPENSSL SSLINCLUDE:
|
| +$!
|
| +$! Run a site-specific procedure, if it exists.
|
| +$!
|
| +$ if f$search( "sslroot:[vms]openssl_systartup.com") .nes."" then -
|
| + @ sslroot:[vms]openssl_systartup.com
|
| +$!
|
| +$! Restore the original default dev:[dir] (if known).
|
| +$!
|
| +$ clean_up:
|
| +$!
|
| +$ if (f$type( orig_dev_dir) .nes. "")
|
| +$ then
|
| +$ set default 'orig_dev_dir'
|
| +$ endif
|
| +$!
|
| +$ EXIT 'status'
|
| +$!
|
|
|
| Property changes on: openssl/VMS/openssl_startup.com
|
| ___________________________________________________________________
|
| Added: svn:executable
|
| + *
|
|
|
|
|