home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 9 / FreshFishVol9-CD2.bin / bbs / util / mayflower.lha / MayFlower / CapsLock / create < prev    next >
AmigaDOS Script File  |  1994-03-17  |  2KB  |  97 lines

  1. .key program,opts
  2.  
  3. IF "<program>" EQ ""
  4.   echo "Usage> Create filename [opts]"
  5.   QUIT
  6. ENDIF
  7.  
  8. echo
  9. echo "Execute Create <program> <opts> --) Start"
  10. avail >nil: flush  ; remove unused libraries and devices
  11. assign work<$$>: "" ; logical directory of our CLI work
  12.  
  13. ; step 1: look for the mother of all GST files, this shortens compile time
  14. ; NOTE- GST files do not come with SAS_C V6.0, you must create them
  15. IF EXISTS RAD:total.gst          ; ALL Amiga headers inside this GST
  16.  set SASGST RAD:total.gst
  17.  SKIP step2
  18. ENDIF
  19. IF EXISTS SAS_C:total.gst
  20.  set SASGST SAS_C:total.gst
  21.  SKIP step2
  22. ENDIF
  23. ; see if program's GST file exist
  24. IF EXISTS work<$$>:<program>.gst
  25.  cmpdate -o work<$$>:<program>.gst work<$$>:h/
  26.  IF WARN
  27.   echo "<program>.GST older than h files, must re-create <program>.GST"
  28.   sc MAXERR=1 MAXWRN=1 MGST=work<$$>:<program>.gst NoObjName work<$$>:h/main.h
  29.  ENDIF
  30.  set SASGST work<$$>:<program>.gst
  31.  SKIP step2
  32. ENDIF
  33. IF NOT EXISTS $SASGST
  34.  echo "*e[32;43m                                       "
  35.  echo "     Unable to find a GST file         "
  36.  echo "                                       *e[0m"
  37.  ask "Compile without a GST ? Y/N  (Y = default)"
  38.  IF WARN
  39.   SKIP endscript
  40.  ENDIF
  41. ENDIF
  42.  
  43. LAB step2
  44. IF NOT EXISTS work<$$>:<program>
  45.  echo "<program> does not exist"
  46.  SKIP zapofiles
  47. ENDIF
  48.  
  49. cmpdate -o work<$$>:<program> work<$$>:h/
  50. IF WARN
  51.  echo "<program> older than H files"
  52.  SKIP zapofiles
  53. ENDIF
  54.  
  55. cmpdate -o work<$$>:<program> work<$$>:cf/
  56. IF WARN
  57.  echo "<program> older than C files"
  58.  SKIP makefiles
  59. ENDIF
  60.  
  61. IF NOT EXISTS work<$$>:of
  62.  echo "Object File's directory does not exist, making *"of*" directory"
  63.  makedir work<$$>:of
  64.  SKIP makefiles
  65. ENDIF
  66.  
  67. cmpdate -o work<$$>:<program> work<$$>:of/
  68. IF WARN
  69.  echo "<program> older than Object files"
  70.  SKIP slinkfiles
  71. ENDIF
  72.  
  73. echo "All files appear to be updated, no action taken."
  74. SKIP endscript
  75.  
  76. LAB zapofiles
  77. echo "Deleting contents of *"of*" directory"
  78. delete >nil: work<$$>:of/#?.o
  79.  
  80. LAB makefiles
  81. echo "Compiling C files"
  82. IF EXISTS $SASGST
  83.  sc <opts> MAXWRN=1 MAXERR=1 GST=$SASGST MOD ObjName=work<$$>:of/ work<$$>:cf/#?.c
  84. ELSE
  85.  sc <opts> MAXWRN=1 MAXERR=1 MOD ObjName=work<$$>:of/ work<$$>:cf/#?.c
  86. ENDIF
  87.  
  88. LAB slinkfiles
  89. echo "Slinking <program>"
  90. slink with work<$$>:<program>.lnk
  91.  
  92. LAB endscript  ; cleanup
  93. unset SASGST
  94. assign work<$$>:
  95. echo "Execute Create <program> <opts> --) End"
  96. echo
  97.