macros
上传用户:andy_li
上传日期:2007-01-06
资源大小:1019k
文件大小:5k
源码类别:

压缩解压

开发平台:

MultiPlatform

  1. ?section ADD^LIST routine
  2. [#IF [#ARGUMENT /VALUE item/ WORD/SPACE/]]
  3. #APPEND bin ADD * FROM [item]
  4. #SET itime [#FILEINFO /MODIFICATION/ [item]]
  5. [#IF itime > ntime |THEN| #SETV ntime itime]
  6. ?section BBZIPLIB MACRO
  7. #FRAME
  8. #push bin item ntime itime libtime
  9. #SET ntime 0
  10. #OUTPUT Building ZIPLIB
  11. #APPEND bin CLEAR
  12. add^list CRC32O
  13. add^list CRCTABO
  14. add^list DEFLATEO
  15. add^list FILEIOO
  16. add^list GLOBALSO
  17. add^list TANDEMO
  18. add^list TREESO
  19. add^list TTYIOO
  20. add^list UTILO
  21. add^list ZIPFILEO
  22. add^list ZIPUPO
  23. #APPEND bin INFO UNRESOLVED *
  24. #APPEND bin BUILD ZIPLIB ! , LIST * OFF
  25. #SET libtime [#FILEINFO /MODIFICATION/ ZIPLIB]
  26. [#IF libtime < ntime
  27. |THEN|
  28.   #OUTPUT ZIPLIB needs re-building
  29.   BIND /NAME,INV BIN/
  30.   [#CASE [tacl^completioncode]
  31.   | 0         | #OUTPUT Bound ZIPLIB OK
  32.   | 1         | #OUTPUT ZIPLIB: BIND Failed with Warnings
  33.   | OTHERWISE | #OUTPUT ZIPLIB: BIND Failed with ERRORS !
  34.   ]
  35. |ELSE|
  36.   #OUTPUT ZIPLIB is up to date
  37. ]
  38. #UNFRAME
  39. ?section BBZIP MACRO
  40. #FRAME
  41. #push bin ziptime build
  42. #SET build 0
  43. #OUTPUT Building %1% with %2% memory model
  44. #APPEND bin CLEAR
  45. #APPEND bin ADD * FROM ZIPO
  46. #APPEND bin select search ($system.system.c%2%, ZIPLIB)
  47. #APPEND bin select runnable object on
  48. #APPEND bin select list * off
  49. #APPEND bin set heap 20 pages
  50. #APPEND bin set symbols on
  51. #APPEND bin set saveabend on
  52. #APPEND bin set inspect on
  53. #APPEND bin info unresolved *
  54. #APPEND bin BUILD %1%   !
  55. #SET ziptime [#FILEINFO /MODIFICATION/ %1%]
  56. [#IF ziptime < [#FILEINFO /MODIFICATION/ ZIPO] |THEN|
  57.   #OUTPUT %1% is older than ZIPO
  58.   #SET build -1
  59. ]
  60. [#IF ziptime < [#FILEINFO /MODIFICATION/ ZIPLIB] |THEN|
  61.   #OUTPUT %1% is older than ZIPLIB
  62.   #SET build -1
  63. ]
  64. [#IF build
  65. |THEN|
  66.   #OUTPUT %1% is out of date, re-building
  67.   BIND /NAME,INV BIN/
  68.   [#CASE [tacl^completioncode]
  69.   | 0         | #OUTPUT Bound %1% OK
  70.   | 1         | #OUTPUT %1%: BIND Failed with Warnings
  71.   | OTHERWISE | #OUTPUT %1%: BIND Failed with ERRORS !
  72.   ]
  73. |ELSE|
  74.   #OUTPUT %1% is up to date, no re-build required
  75. ]
  76. #UNFRAME
  77. ?section BBANY MACRO
  78. #FRAME
  79. #push bin memory anytime build
  80. #SET build 0
  81. #SETMANY memory, %2% LARGE
  82. #OUTPUT Building %1% with [memory] memory model
  83. #APPEND bin CLEAR
  84. #APPEND bin ADD * FROM %1%O
  85. #APPEND bin select search ($system.system.c[memory],ZIPLIB)
  86. #APPEND bin select runnable object on
  87. #APPEND bin select list * off
  88. #APPEND bin set heap 20 pages
  89. #APPEND bin set symbols on
  90. #APPEND bin set saveabend on
  91. #APPEND bin set inspect on
  92. #APPEND bin info unresolved *
  93. #APPEND bin BUILD %1%   !
  94. #SET anytime [#FILEINFO /MODIFICATION/ %1%]
  95. [#IF anytime < [#FILEINFO /MODIFICATION/ %1%O] |THEN|
  96.   #OUTPUT %1% is older than %1%O
  97.   #SET build -1
  98. ]
  99. [#IF anytime < [#FILEINFO /MODIFICATION/ ZIPLIB] |THEN|
  100.   #OUTPUT %1% is older than ZIPLIB
  101.   #SET build -1
  102. ]
  103. [#IF build
  104. |THEN|
  105.   #OUTPUT %1% is out of date, re-building
  106.   BIND /NAME,INV BIN/
  107.   [#CASE [tacl^completioncode]
  108.   | 0         | #OUTPUT Bound %1% OK
  109.   | 1         | #OUTPUT %1%: BIND Failed with Warnings
  110.   | OTHERWISE | #OUTPUT %1%: BIND Failed with ERRORS !
  111.   ]
  112. |ELSE|
  113.   #OUTPUT %1% is up to date, no re-build required
  114. ]
  115. #UNFRAME
  116. ?section BBUNZIPLIB MACRO
  117. #FRAME
  118. #push bin item ntime itime libtime
  119. #SET ntime 0
  120. #OUTPUT Building UNZIPLIB
  121. #APPEND bin CLEAR
  122. add^list CRC32O
  123. add^list CRCTABO
  124. add^list ENVARGSO
  125. add^list EXPLODEO
  126. add^list EXTRACTO
  127. add^list FILEIOO
  128. add^list GLOBALSO
  129. add^list INFLATEO
  130. add^list LISTO
  131. add^list MATCHO
  132. add^list PROCESSO
  133. add^list TANDEMO
  134. add^list TTYIOO
  135. ==add^list UNREDUCO
  136. add^list UNSHRINO
  137. add^list ZIPINFOO
  138. #APPEND bin INFO UNRESOLVED *
  139. #APPEND bin BUILD UNZIPLIB ! , LIST * OFF
  140. #SET libtime [#FILEINFO /MODIFICATION/ UNZIPLIB]
  141. [#IF libtime < ntime
  142. |THEN|
  143.   #OUTPUT UNZIPLIB needs re-building
  144.   BIND /NAME,INV BIN/
  145.   [#CASE [tacl^completioncode]
  146.   | 0         | #OUTPUT Bound UNZIPLIB OK
  147.   | 1         | #OUTPUT UNZIPLIB: BIND Failed with Warnings
  148.   | OTHERWISE | #OUTPUT UNZIPLIB: BIND Failed with ERRORS !
  149.   ]
  150. |ELSE|
  151.   #OUTPUT UNZIPLIB is up to date
  152. ]
  153. #UNFRAME
  154. ?section BBUNZIP MACRO
  155. #FRAME
  156. #push bin ziptime build
  157. #SET build 0
  158. #OUTPUT Building %1% with %2% memory model
  159. #APPEND bin CLEAR
  160. #APPEND bin ADD * FROM UNZIPO
  161. #APPEND bin select search ($system.system.c%2%,UNZIPLIB)
  162. #APPEND bin select runnable object on
  163. #APPEND bin select list * off
  164. #APPEND bin set heap 20 pages
  165. #APPEND bin set symbols on
  166. #APPEND bin set saveabend on
  167. #APPEND bin set inspect on
  168. #APPEND bin info unresolved *
  169. #APPEND bin BUILD %1%   !
  170. #SET ziptime [#FILEINFO /MODIFICATION/ %1%]
  171. [#IF ziptime < [#FILEINFO /MODIFICATION/ UNZIPO] |THEN|
  172.   #OUTPUT %1% is older than UNZIPO
  173.   #SET build -1
  174. ]
  175. [#IF ziptime < [#FILEINFO /MODIFICATION/ UNZIPLIB] |THEN|
  176.   #OUTPUT %1% is older than UNZIPLIB
  177.   #SET build -1
  178. ]
  179. [#IF build
  180. |THEN|
  181.   #OUTPUT %1% is out of date, re-building
  182.   BIND /NAME,INV BIN/
  183.   [#CASE [tacl^completioncode]
  184.   | 0         | #OUTPUT Bound %1% OK
  185.   | 1         | #OUTPUT %1%: BIND Failed with Warnings
  186.   | OTHERWISE | #OUTPUT %1%: BIND Failed with ERRORS !
  187.   ]
  188. |ELSE|
  189.   #OUTPUT %1% is up to date, no re-build required
  190. ]
  191. #UNFRAME
  192. ?section accel^file MACRO
  193. #FRAME
  194. #PUSH buf
  195. [#IF [#FILEINFO /MODIFICATION/ %1%]
  196.    > [#FILEINFO /MODIFICATION/ %2%]
  197. |THEN|
  198.   #OUTPUT %2% is older than %1%
  199.   #OUTPUT Accelerating %1% to %2%
  200.   AXCEL /IN [general_seg_subvol].DUMMY, OUTV buf/ %1%,%2%
  201.   #OUTPUTV buf
  202.   [#CASE [tacl^completioncode]
  203.   | 0         | #OUTPUT Accelerated %2% OK
  204.   | 1         | #OUTPUT %2%: AXCEL Failed with Warnings
  205.   | OTHERWISE | #OUTPUT %2%: AXCEL Failed with ERRORS !
  206.   ]
  207. |ELSE|
  208.   #OUTPUT %2% is up to date
  209. ]
  210. #UNFRAME