install.com 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  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. $! Changes by Zoltan Arpadffy <zoli@polarhome.com>
  7. $!
  8. $! P1 root of the directory tree
  9. $!
  10. $ IF P1 .EQS. ""
  11. $ THEN
  12. $ WRITE SYS$OUTPUT "First argument missing."
  13. $ WRITE SYS$OUTPUT -
  14. "It should be the directory where you want things installed."
  15. $ EXIT
  16. $ ENDIF
  17. $
  18. $ IF (F$GETSYI("CPU").LT.128)
  19. $ THEN
  20. $ ARCH := VAX
  21. $ ELSE
  22. $ ARCH = F$EDIT( F$GETSYI( "ARCH_NAME"), "UPCASE")
  23. $ IF (ARCH .EQS. "") THEN ARCH = "UNK"
  24. $ ENDIF
  25. $
  26. $ ROOT = F$PARSE(P1,"[]A.;0",,,"SYNTAX_ONLY,NO_CONCEAL") - "A.;0"
  27. $ ROOT_DEV = F$PARSE(ROOT,,,"DEVICE","SYNTAX_ONLY")
  28. $ ROOT_DIR = F$PARSE(ROOT,,,"DIRECTORY","SYNTAX_ONLY") -
  29. - "[000000." - "][" - "[" - "]"
  30. $ ROOT = ROOT_DEV + "[" + ROOT_DIR
  31. $
  32. $ DEFINE/NOLOG WRK_SSLROOT 'ROOT'.] /TRANS=CONC
  33. $ DEFINE/NOLOG WRK_SSLLIB WRK_SSLROOT:['ARCH'_LIB]
  34. $ DEFINE/NOLOG WRK_SSLINCLUDE WRK_SSLROOT:[INCLUDE]
  35. $
  36. $ IF F$PARSE("WRK_SSLROOT:[000000]") .EQS. "" THEN -
  37. CREATE/DIR/LOG WRK_SSLROOT:[000000]
  38. $ IF F$PARSE("WRK_SSLLIB:") .EQS. "" THEN -
  39. CREATE/DIR/LOG WRK_SSLLIB:
  40. $ IF F$PARSE("WRK_SSLINCLUDE:") .EQS. "" THEN -
  41. CREATE/DIR/LOG WRK_SSLINCLUDE:
  42. $
  43. $ SDIRS := ,-
  44. OBJECTS,-
  45. MD2,MD4,MD5,SHA,MDC2,HMAC,RIPEMD,-
  46. DES,AES,RC2,RC4,RC5,IDEA,BF,CAST,CAMELLIA,SEED,-
  47. BN,EC,RSA,DSA,ECDSA,DH,ECDH,DSO,ENGINE,-
  48. BUFFER,BIO,STACK,LHASH,RAND,ERR,-
  49. EVP,ASN1,PEM,X509,X509V3,CONF,TXT_DB,PKCS7,PKCS12,COMP,OCSP,-
  50. UI,KRB5,-
  51. STORE,PQUEUE,JPAKE
  52. $ EXHEADER_ := crypto.h,tmdiff.h,opensslv.h,opensslconf.h,ebcdic.h,-
  53. symhacks.h,ossl_typ.h
  54. $ EXHEADER_OBJECTS := objects.h,obj_mac.h
  55. $ EXHEADER_MD2 := md2.h
  56. $ EXHEADER_MD4 := md4.h
  57. $ EXHEADER_MD5 := md5.h
  58. $ EXHEADER_SHA := sha.h
  59. $ EXHEADER_MDC2 := mdc2.h
  60. $ EXHEADER_HMAC := hmac.h
  61. $ EXHEADER_RIPEMD := ripemd.h
  62. $ EXHEADER_DES := des.h,des_old.h
  63. $ EXHEADER_AES := aes.h
  64. $ EXHEADER_RC2 := rc2.h
  65. $ EXHEADER_RC4 := rc4.h
  66. $ EXHEADER_RC5 := rc5.h
  67. $ EXHEADER_IDEA := idea.h
  68. $ EXHEADER_BF := blowfish.h
  69. $ EXHEADER_CAST := cast.h
  70. $ EXHEADER_CAMELLIA := camellia.h
  71. $ EXHEADER_SEED := seed.h
  72. $ EXHEADER_BN := bn.h
  73. $ EXHEADER_EC := ec.h
  74. $ EXHEADER_RSA := rsa.h
  75. $ EXHEADER_DSA := dsa.h
  76. $ EXHEADER_ECDSA := ecdsa.h
  77. $ EXHEADER_DH := dh.h
  78. $ EXHEADER_ECDH := ecdh.h
  79. $ EXHEADER_DSO := dso.h
  80. $ EXHEADER_ENGINE := engine.h
  81. $ EXHEADER_BUFFER := buffer.h
  82. $ EXHEADER_BIO := bio.h
  83. $ EXHEADER_STACK := stack.h,safestack.h
  84. $ EXHEADER_LHASH := lhash.h
  85. $ EXHEADER_RAND := rand.h
  86. $ EXHEADER_ERR := err.h
  87. $ EXHEADER_EVP := evp.h
  88. $ EXHEADER_ASN1 := asn1.h,asn1_mac.h,asn1t.h
  89. $ EXHEADER_PEM := pem.h,pem2.h
  90. $ EXHEADER_X509 := x509.h,x509_vfy.h
  91. $ EXHEADER_X509V3 := x509v3.h
  92. $ EXHEADER_CONF := conf.h,conf_api.h
  93. $ EXHEADER_TXT_DB := txt_db.h
  94. $ EXHEADER_PKCS7 := pkcs7.h
  95. $ EXHEADER_PKCS12 := pkcs12.h
  96. $ EXHEADER_COMP := comp.h
  97. $ EXHEADER_OCSP := ocsp.h
  98. $ EXHEADER_UI := ui.h,ui_compat.h
  99. $ EXHEADER_KRB5 := krb5_asn.h
  100. $! EXHEADER_STORE := store.h,str_compat.h
  101. $ EXHEADER_STORE := store.h
  102. $ EXHEADER_PQUEUE := pqueue.h,pq_compat.h
  103. $ EXHEADER_JPAKE := jpake.h
  104. $ LIBS := LIBCRYPTO
  105. $
  106. $ EXE_DIR := [-.'ARCH'.EXE.CRYPTO]
  107. $
  108. $ I = 0
  109. $ LOOP_SDIRS:
  110. $ D = F$EDIT(F$ELEMENT(I, ",", SDIRS),"TRIM")
  111. $ I = I + 1
  112. $ IF D .EQS. "," THEN GOTO LOOP_SDIRS_END
  113. $ tmp = EXHEADER_'D'
  114. $ IF D .EQS. ""
  115. $ THEN
  116. $ COPY 'tmp' WRK_SSLINCLUDE: /LOG
  117. $ ELSE
  118. $ COPY [.'D']'tmp' WRK_SSLINCLUDE: /LOG
  119. $ ENDIF
  120. $ SET FILE/PROT=WORLD:RE WRK_SSLINCLUDE:'tmp'
  121. $ GOTO LOOP_SDIRS
  122. $ LOOP_SDIRS_END:
  123. $
  124. $ I = 0
  125. $ LOOP_LIB:
  126. $ E = F$EDIT(F$ELEMENT(I, ",", LIBS),"TRIM")
  127. $ I = I + 1
  128. $ IF E .EQS. "," THEN GOTO LOOP_LIB_END
  129. $ SET NOON
  130. $ IF F$SEARCH(EXE_DIR+E+".OLB") .NES. ""
  131. $ THEN
  132. $ COPY 'EXE_DIR''E'.OLB WRK_SSLLIB:'E'.OLB/log
  133. $ SET FILE/PROT=W:RE WRK_SSLLIB:'E'.OLB
  134. $ ENDIF
  135. $ ! Preparing for the time when we have shareable images
  136. $ IF F$SEARCH(EXE_DIR+E+".EXE") .NES. ""
  137. $ THEN
  138. $ COPY 'EXE_DIR''E'.EXE WRK_SSLLIB:'E'.EXE/log
  139. $ SET FILE/PROT=W:RE WRK_SSLLIB:'E'.EXE
  140. $ ENDIF
  141. $ SET ON
  142. $ GOTO LOOP_LIB
  143. $ LOOP_LIB_END:
  144. $
  145. $ EXIT