install-apps.com 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  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. $!