install-ssl.com 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. $! INSTALL-SSL.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. $ lib32 = "32"
  37. $ shr = "_SHR32"
  38. $!
  39. $ if (p2 .nes. "")
  40. $ then
  41. $ if (p2 .eqs. "64")
  42. $ then
  43. $ archd = arch+ "_64"
  44. $ lib32 = ""
  45. $ shr = "_SHR"
  46. $ else
  47. $ if (p2 .nes. "32")
  48. $ then
  49. $ write sys$output "Second argument invalid."
  50. $ write sys$output "It should be "32", "64", or nothing."
  51. $ exit
  52. $ endif
  53. $ endif
  54. $ endif
  55. $!
  56. $ root = f$parse( p1, "[]A.;0", , , "syntax_only, no_conceal") - "A.;0"
  57. $ root_dev = f$parse(root,,,"device","syntax_only")
  58. $ root_dir = f$parse(root,,,"directory","syntax_only") - -
  59. "[000000." - "][" - "[" - "]"
  60. $ root = root_dev + "[" + root_dir
  61. $!
  62. $ define /nolog wrk_sslroot 'root'.] /trans=conc
  63. $ define /nolog wrk_sslinclude wrk_sslroot:[include]
  64. $ define /nolog wrk_sslxexe wrk_sslroot:['archd'_exe]
  65. $ define /nolog wrk_sslxlib wrk_sslroot:['arch'_lib]
  66. $!
  67. $ if f$parse("wrk_sslroot:[000000]") .eqs. "" then -
  68. create /directory /log wrk_sslroot:[000000]
  69. $ if f$parse("wrk_sslinclude:") .eqs. "" then -
  70. create /directory /log wrk_sslinclude:
  71. $ if f$parse("wrk_sslxexe:") .eqs. "" then -
  72. create /directory /log wrk_sslxexe:
  73. $ if f$parse("wrk_sslxlib:") .eqs. "" then -
  74. create /directory /log wrk_sslxlib:
  75. $!
  76. $ exheader := ssl.h, ssl2.h, ssl3.h, ssl23.h, tls1.h, dtls1.h, kssl.h
  77. $ e_exe := ssl_task
  78. $ libs := ssl_libssl
  79. $!
  80. $ xexe_dir := [-.'archd'.exe.ssl]
  81. $!
  82. $ copy /protection = w:re 'exheader' wrk_sslinclude: /log
  83. $!
  84. $ i = 0
  85. $ loop_exe:
  86. $ e = f$edit( f$element( i, ",", e_exe), "trim")
  87. $ i = i + 1
  88. $ if e .eqs. "," then goto loop_exe_end
  89. $ set noon
  90. $ file = xexe_dir+ e+ ".exe"
  91. $ if f$search( file) .nes. ""
  92. $ then
  93. $ copy /protection = w:re 'file' wrk_sslxexe: /log
  94. $ endif
  95. $ set on
  96. $ goto loop_exe
  97. $ loop_exe_end:
  98. $!
  99. $ i = 0
  100. $ loop_lib:
  101. $ e = f$edit(f$element(i, ",", libs),"trim")
  102. $ i = i + 1
  103. $ if e .eqs. "," then goto loop_lib_end
  104. $ set noon
  105. $! Object library.
  106. $ file = xexe_dir+ e+ lib32+ ".olb"
  107. $ if f$search( file) .nes. ""
  108. $ then
  109. $ copy /protection = w:re 'file' wrk_sslxlib: /log
  110. $ endif
  111. $! Shareable image.
  112. $ file = xexe_dir+ e+ shr+ ".exe"
  113. $ if f$search( file) .nes. ""
  114. $ then
  115. $ copy /protection = w:re 'file' wrk_sslxlib: /log
  116. $ endif
  117. $ set on
  118. $ goto loop_lib
  119. $ loop_lib_end:
  120. $!
  121. $ tidy:
  122. $!
  123. $ call deass wrk_sslroot
  124. $ call deass wrk_sslinclude
  125. $ call deass wrk_sslxexe
  126. $ call deass wrk_sslxlib
  127. $!
  128. $ exit
  129. $!
  130. $ deass: subroutine
  131. $ if (f$trnlnm( p1, "LNM$PROCESS") .nes. "")
  132. $ then
  133. $ deassign /process 'p1'
  134. $ endif
  135. $ endsubroutine
  136. $!