home *** CD-ROM | disk | FTP | other *** search
/ ftp.mactech.com 2010 / ftp.mactech.com.tar / ftp.mactech.com / online / source / c / compilers / Tickle-4.0.sit.hqx / Tickle-4.0 / Makefile < prev    next >
Makefile  |  1993-11-21  |  18KB  |  669 lines

  1. ##
  2. ## This source code was written by Tim Endres
  3. ## Email: time@ice.com.
  4. ## USMail: 8840 Main Street, Whitmore Lake, MI  48189
  5. ##
  6. ## Some portions of this application utilize sources
  7. ## that are copyrighted by ICE Engineering, Inc., and
  8. ## ICE Engineering retains all rights to those sources.
  9. ##
  10. ## Neither ICE Engineering, Inc., nor Tim Endres, 
  11. ## warrants this source code for any reason, and neither
  12. ## party assumes any responsbility for the use of these
  13. ## sources, libraries, or applications. The user of these
  14. ## sources and binaries assumes all responsbilities for
  15. ## any resulting consequences.
  16. ##
  17.  
  18. tickle        = ":"
  19. tickleLib    = "{tickle}lib:"
  20. tickleSrc    = "{tickle}src:"
  21. tickleObj    = "{tickle}obj:"
  22. tickleExt    = "{tickle}externals:"
  23. tickleCObj    = "{tickle}obj:common:"
  24. tickleAObj    = "{tickle}obj:appl:"
  25. tickleEObj    = "{tickle}obj:engine:"
  26.  
  27. tcl            = "{tickle}tcl:"
  28. tclSrc        = "{tcl}src:"
  29. tclObj        = "{tcl}obj:"
  30.  
  31. tclX        = "{tickle}tcl:extend:"
  32. tclXSrc        = "{tcl}extend:src:"
  33. tclXObj        = "{tcl}extend:obj:"
  34.  
  35. cbtree        = "{tickle}cbtree:"
  36. cbtSrc        = "{cbtree}src:"
  37. cbtObj        = "{cbtree}obj:"
  38.  
  39. dbm            = "{tickle}dbm:"
  40. dbmSrc        = "{dbm}src:"
  41. dbmObj        = "{dbm}obj:"
  42.  
  43. ### TCL_LIBRARY =    /usr/local/lib/tcl
  44. TCL_LIBRARY =    ":library"
  45. TCL_MASTERDIR = ":library:tclmaster"
  46.  
  47. DELETE = Delete -i -y
  48.  
  49.  
  50. #
  51. # CFLAGS is used to determine the flags given to the C compiler
  52. # whenever source code is compiled for the tickle application.
  53. #
  54. CFLAGS    =                ∂
  55.     -w                    ∂
  56.     -b                    ∂
  57.     -i "{tcl}"            ∂
  58.     -i "{tclSrc}"        ∂
  59.     -i "{tclXSrc}"        ∂
  60.     -i "{cbtSrc}"        ∂
  61.     -i "{dbmSrc}"        ∂
  62.     -mbg full            ∂
  63.     -sym off            ∂
  64.     -d MPW                ∂
  65.     -d MPW3                ∂
  66.     -d TCL_LIBRARY="∂"{TCL_LIBRARY}∂""        ∂
  67.     -d TCL_MASTERDIR="∂"{TCL_MASTERDIR}∂""
  68.  
  69. LDFlags = -sym off -w
  70.  
  71.  
  72. #
  73. # This macro defines the resulting compiled object files that
  74. # are linked together into the final application. It in turn
  75. # creates the dependencies for the source code comilation.
  76. #
  77. COBJ =                                    ∂
  78.         "{tickleCObj}"ListFilter.c.o    ∂
  79.         "{tickleCObj}"macbinary.c.o        ∂
  80.         "{tickleCObj}"tar.c.o            ∂
  81.         "{tickleCObj}"tar_buffer.c.o    ∂
  82.         "{tickleCObj}"tar_create.c.o    ∂
  83.         "{tickleCObj}"tar_dialog.c.o    ∂
  84.         "{tickleCObj}"tar_list.c.o        ∂
  85.         "{tickleCObj}"lcompare.c.o        ∂
  86.         "{tickleCObj}"utilities.c.o        ∂
  87.         "{tickleCObj}"progress.c.o        ∂
  88.         "{tickleCObj}"FileInfo.c.o        ∂
  89.         "{tickleCObj}"mbinfo.c.o        ∂
  90.         "{tickleCObj}"asd.c.o            ∂
  91.         "{tickleCObj}"asdtomb.c.o        ∂
  92.         "{tickleCObj}"mbtoasd.c.o        ∂
  93.         "{tickleCObj}"mactoasd.c.o
  94.  
  95. AOBJ =    "{tickleAObj}"tickle.c.o        ∂
  96.         "{tickleAObj}"GetDirectory.c.o    ∂
  97.         "{tickleAObj}"Event.c.o            ∂
  98.         "{tickleAObj}"AEtcl.c.o            ∂
  99.         "{tickleAObj}"AEvent.c.o        ∂
  100.         "{tickleAObj}"Command.c.o        ∂
  101.         "{tickleAObj}"Menus.c.o            ∂
  102.         "{tickleAObj}"init.c.o            ∂
  103.         "{tickleAObj}"tar_dir.c.o        ∂
  104.         "{tickleAObj}"tar_extract.c.o    ∂
  105.         "{tickleAObj}"floppycopy.c.o    ∂
  106.         "{tickleAObj}"hfs_action.c.o    ∂
  107.         "{tickleAObj}"SFGetFile.c.o        ∂
  108.         "{tickleAObj}"asdtomac.c.o        ∂
  109.         "{tickleAObj}"tcl.c.o            ∂
  110.         "{tickleAObj}"tclMac.c.o        ∂
  111.         "{tickleAObj}"tclMacCWD.c.o        ∂
  112.         "{tickleAObj}"tcl-ctb.c.o        ∂
  113.         "{tickleAObj}"tcl-dbm.c.o        ∂
  114.         "{tickleAObj}"tcl-cbtree.c.o
  115.  
  116. EOBJ =                                    ∂
  117.         "{tickleEObj}"tickle.c.o        ∂
  118.         "{tickleEObj}"GetDirectory.c.o    ∂
  119.         "{tickleEObj}"Event.c.o            ∂
  120.         "{tickleEObj}"AEtcl.c.o            ∂
  121.         "{tickleEObj}"AEvent.c.o        ∂
  122.         "{tickleEObj}"tar_dir.c.o        ∂
  123.         "{tickleEObj}"tar_extract.c.o    ∂
  124.         "{tickleEObj}"asdtomac.c.o        ∂
  125.         "{tickleEObj}"tcl.c.o            ∂
  126.         "{tickleEObj}"tclMac.c.o        ∂
  127.         "{tickleEObj}"tclMacCWD.c.o        ∂
  128.         "{tickleEObj}"tcl-ctb.c.o        ∂
  129.         "{tickleEObj}"tcl-dbm.c.o        ∂
  130.         "{tickleEObj}"tcl-cbtree.c.o    ∂
  131.         "{tickleEObj}"init.c.o
  132.  
  133. MPW_LIBS =                                ∂
  134.         "{Libraries}"RunTime.o            ∂
  135.         "{Libraries}"Interface.o        ∂
  136.         "{CLibraries}"StdCLib.o            ∂
  137.         "{CLibraries}"Math.o            ∂
  138.         "{CLibraries}"CSANELib.o
  139.  
  140. AEBUILD_LIBS =                            ∂
  141.         "{tickleLib}"AEBuild.o            ∂
  142.         "{tickleLib}"AEStream.o
  143.  
  144. EXTRA_LIBS =                            ∂
  145.         "{tickleLib}"libdbm.o            ∂
  146.         "{tickleLib}"libcbtree.o        ∂
  147.         "{tickleLib}"MacLib.o
  148.  
  149. TCL_LIBS =                                ∂
  150.         "{tcl}"libtcl.o                    ∂
  151.         "{tcl}"libtclX.o
  152.  
  153. SHELL_LIBS =                            ∂
  154.         "{Libraries}"RunTime.o            ∂
  155.         "{Libraries}"Interface.o        ∂
  156.         "{Libraries}"ToolLibs.o            ∂
  157.         "{CLibraries}"StdCLib.o            ∂
  158.         "{CLibraries}"Math.o            ∂
  159.         "{CLibraries}"CSANELib.o        ∂
  160.         "{tickleLib}"MacLib.o
  161.  
  162. LIBS =                ∂
  163.     {TCL_LIBS}        ∂
  164.     {AEBUILD_LIBS}    ∂
  165.     {EXTRA_LIBS}    ∂
  166.     {MPW_LIBS}
  167.  
  168.  
  169. TCL_GENERIC_OBJS =                    ∂
  170.         "{tclObj}"regexp.c.o        ∂
  171.         "{tclObj}"tclAsync.c.o        ∂
  172.         "{tclObj}"tclBasic.c.o        ∂
  173.         "{tclObj}"tclCkalloc.c.o    ∂
  174.         "{tclObj}"tclCmdAH.c.o        ∂
  175.         "{tclObj}"tclCmdIL.c.o        ∂
  176.         "{tclObj}"tclCmdMZ.c.o        ∂
  177.         "{tclObj}"tclExpr.c.o        ∂
  178.         "{tclObj}"tclGet.c.o        ∂
  179.         "{tclObj}"tclHash.c.o        ∂
  180.         "{tclObj}"tclHistory.c.o    ∂
  181.         "{tclObj}"tclParse.c.o        ∂
  182.         "{tclObj}"tclProc.c.o        ∂
  183.         "{tclObj}"tclUtil.c.o        ∂
  184.         "{tclObj}"tclVar.c.o
  185.  
  186. TCL_UNIX_OBJS =                        ∂
  187.         "{tclObj}"stat.c.o            ∂
  188.         "{tclObj}"tclEnv.c.o        ∂
  189.         "{tclObj}"tclGlob.c.o        ∂
  190.         "{tclObj}"tclUnixAZ.c.o        ∂
  191.         "{tclObj}"tclUnixStr.c.o    ∂
  192.         "{tclObj}"tclUnixUtil.c.o 
  193.  
  194. TCL_MAC_OBJS =                        ∂
  195.         "{tclObj}"tclMacUtil.c.o    ∂
  196.         "{tclObj}"macPanic.c.o
  197.  
  198. TCL_OBJS =                            ∂
  199.         {TCL_GENERIC_OBJS}            ∂
  200.         {TCL_MAC_OBJS}                ∂
  201.         {TCL_UNIX_OBJS}
  202.  
  203. TCL_X_OBJS =                        ∂
  204.         "{tclXObj}"ndebug.c.o        ∂
  205.         "{tclXObj}"random.c.o        ∂
  206.         "{tclXObj}"tclXbsearch.c.o    ∂
  207.         "{tclXObj}"tclXclock.c.o    ∂
  208.         "{tclXObj}"tclXcreate.c.o    ∂
  209.         "{tclXObj}"tclXdebug.c.o    ∂
  210.         "{tclXObj}"tclXfilecmds.c.o    ∂
  211.         "{tclXObj}"tclXfilescan.c.o    ∂
  212.         "{tclXObj}"tclXfstat.c.o    ∂
  213.         "{tclXObj}"tclXgeneral.c.o    ∂
  214.         "{tclXObj}"tclXhandles.c.o    ∂
  215.         "{tclXObj}"tclXid.c.o        ∂
  216.         "{tclXObj}"tclXkeylist.c.o    ∂
  217.         "{tclXObj}"tclXlib.c.o        ∂
  218.         "{tclXObj}"tclXlist.c.o        ∂
  219.         "{tclXObj}"tclXmath.c.o        ∂
  220.         "{tclXObj}"tclXprofile.c.o    ∂
  221.         "{tclXObj}"tclXregexp.c.o    ∂
  222.         "{tclXObj}"tclXstartup.c.o    ∂
  223.         "{tclXObj}"tclXstring.c.o    ∂
  224.         "{tclXObj}"tclXutil.c.o
  225.  
  226.  
  227. All ƒ                        ∂
  228.         TclHeader            ∂
  229.         TclLibrary            ∂
  230.         TclXHeader            ∂
  231.         TclXLibrary            ∂
  232.                             ∂
  233.         TclShell            ∂
  234.                             ∂
  235.         tickle                ∂
  236.         tclEngine            ∂
  237.                             ∂
  238.         XTCL_callback        ∂
  239.         PXTCL_callback        ∂
  240.         PASCAL_callback        ∂
  241.         XTCL_echo            ∂
  242.         XTCL_getfile        ∂
  243.         XTCL_setfile        ∂
  244.         PROC_AEVTtcl1eval    ∂
  245.         PROC_TEXTalis
  246.  
  247.  
  248. Shell ƒ TclShell
  249.  
  250. tcl ƒ TclHeader TclLibrary
  251.  
  252. tclX ƒ TclXHeader TclXLibrary
  253.  
  254. #
  255. # tickle causes the tickle application to be created.
  256. #
  257. tickle ƒ    SetAPPLContext "{tickleObj}"TickleHdrDump "{tickle}"tickle
  258.  
  259. #
  260. # tickle causes the tickle engine to be created.
  261. #
  262. tclEngine ƒ    SetENGContext "{tickleObj}"EngineHdrDump "{tickle}"tclEngine
  263.  
  264.  
  265. #
  266. # Clean causes all of the object mosuals to be deleted so that
  267. # making tickle will recompile all source code.
  268. #
  269. Clean ƒ TickleClean TclClean
  270. SuperClean ƒ TickleSuperClean TclSuperClean Clean
  271.  
  272. TickleClean ƒ
  273.     Echo "# `Date -t` ----- Removing all tickle objects..."
  274.     {DELETE} "{tickleCObj}"≈.o || Echo "# `Date -t` ----- No C Objects To Remove."
  275.     {DELETE} "{tickleAObj}"≈.o || Echo "# `Date -t` ----- No A Objects To Remove."
  276.     {DELETE} "{tickleEObj}"≈.o || Echo "# `Date -t` ----- No E Objects To Remove."
  277.     {DELETE} "{tickleObj}"≈.o  || Echo "# `Date -t` ----- No Header Objects To Remove."
  278.  
  279. TickleSuperClean ƒ
  280.     Echo "# `Date -t` ----- Removing all tickle binaries..."
  281.     {DELETE} "{tickle}"tickle        || Echo "# `Date -t` ----- No Tickle Application To Remove."
  282.     {DELETE} "{tickle}"tclEngine    || Echo "# `Date -t` ----- No Tickle Engine To Remove."
  283.  
  284. SetAPPLContext ƒ
  285.     Set CONTEXTFLAGS "-d TCLAPPL -d USEDUMP"
  286.  
  287. tickleHdr ƒ SetAPPLContext "{tickleObj}"TickleHdrDump
  288.  
  289. "{tickleObj}"TickleHdrDump ƒ    ∂
  290.         "{tickleSrc}"tickle.h    ∂
  291.         "{tickleSrc}"defines.h    ∂
  292.         "{tickleSrc}"version.h    ∂
  293.         "{tickleSrc}"tclMac.h    ∂
  294.         "{tickleSrc}"volumes.h    ∂
  295.         "{tickleSrc}"xproc.h    ∂
  296.         "{tcl}"tcl.h            ∂
  297.         "{tcl}"tclExtend.h
  298.     Echo "# `Date -t` ----- Compiling Tickle Headers..."
  299.     C -d MAKEDUMP -d TCLAPPL {CFLAGS} "{tickleSrc}"tickle.h -o "{tickleObj}"tickle.h.o
  300.  
  301. SetENGContext ƒ
  302.     Set CONTEXTFLAGS "-d TCLENGINE -d USEDUMP"
  303.  
  304. engineHdr ƒ SetENGContext "{tickleObj}"EngineHdrDump
  305.  
  306. "{tickleObj}"EngineHdrDump ƒ    ∂
  307.         "{tickleSrc}"tickle.h    ∂
  308.         "{tickleSrc}"defines.h    ∂
  309.         "{tickleSrc}"version.h    ∂
  310.         "{tickleSrc}"tclMac.h    ∂
  311.         "{tickleSrc}"volumes.h    ∂
  312.         "{tickleSrc}"xproc.h    ∂
  313.         "{tcl}"tcl.h            ∂
  314.         "{tcl}"tclExtend.h
  315.     Echo "# `Date -t` ----- Compiling Engine Headers..."
  316.     C -d MAKEDUMP -d TCLENGINE {CFLAGS} "{tickleSrc}"tickle.h -o "{tickleObj}"tickle.h.o
  317.  
  318. #
  319. # {tickle}tickle causes the tickle application resources
  320. # and code to be bundled together to complete the application.
  321. #
  322. "{tickle}"tickle ƒ                        ∂
  323.         "{tickleSrc}"tickle.r            ∂
  324.         "{tickleSrc}"tickle.rsrc        ∂
  325.         "{tickleAObj}"tickle.code
  326.     Echo "# `Date -t` ----- Rezing tickle..."
  327.     Rez -c "TEMP" -t 'APPL'                ∂
  328.         -s "{tickleAObj}"                ∂
  329.         -o "{tickle}"tickle                ∂
  330.         "{tickleSrc}"tickle.r
  331.     SetFile -c '$Tcl' -a B "{tickle}"tickle
  332.  
  333. #
  334. # {tickle}tickle causes the tickle application resources
  335. # and code to be bundled together to complete the application.
  336. #
  337. "{tickle}"tclEngine ƒ                    ∂
  338.         "{tickleSrc}"tclEngine.r        ∂
  339.         "{tickleSrc}"tclEngine.rsrc        ∂
  340.         "{tickleEObj}"tclEngine.code
  341.     Echo "# `Date -t` ----- Rezing tclEngine..."
  342.     Rez -c "TEMP" -t 'APPL'                ∂
  343.         -s "{tickleEObj}"                ∂
  344.         -o "{tickle}"tclEngine            ∂
  345.         "{tickleSrc}"tclEngine.r
  346.     SetFile -c '!Tcl' -a B "{tickle}"tclEngine
  347.  
  348. #
  349. # tickle.code all of the code for the tickle application to be
  350. # compiled and linked together. Then the resources need to be added.
  351. #
  352. "{tickleAObj}"tickle.code ƒ {COBJ} {AOBJ} {LIBS}
  353.     Echo "# `Date -t` ----- Linking tickle.code..."
  354.     Link -c "MPS " -t "CODE"            ∂
  355.         -o "{tickleAObj}"tickle.code    ∂
  356.         {LDFlags}                        ∂
  357.         {COBJ}                            ∂
  358.         {AOBJ}                            ∂
  359.         "{tickleLib}"libAPP.o            ∂
  360.         "{tickleLib}"libCMN.o            ∂
  361.         "{tickleLib}"libTGE.o            ∂
  362.         {LIBS}                            ∂
  363.         || ( Echo "#####   ### ERROR ###   #####" ; exit )
  364.  
  365. #
  366. # tickle.code all of the code for the tickle application to be
  367. # compiled and linked together. Then the resources need to be added.
  368. #
  369. "{tickleEObj}"tclEngine.code ƒ    {COBJ} {EOBJ} {LIBS}
  370.     Echo "# `Date -t` ----- Linking tclEngine.code..."
  371.     Link -c "MPS " -t "CODE"            ∂
  372.         -o "{tickleEObj}"tclEngine.code    ∂
  373.         {LDFlags}                        ∂
  374.         {COBJ}                            ∂
  375.         {EOBJ}                            ∂
  376.         "{tickleLib}"libCMN.o            ∂
  377.         "{tickleLib}"libENG.o            ∂
  378.         {LIBS}                            ∂
  379.         || ( Echo "#####   ### ERROR ###   #####" ; exit )
  380.  
  381.  
  382. #
  383. # Since global variable changes require recomiling tickle.c...
  384. #
  385. "{tickleAObj}"tickle.c.o ƒ "{tickleSrc}"tickle.c "{tickleSrc}"tickle.h "{tickleSrc}"version.h
  386.  
  387. #
  388. # Since global variable changes require recomiling tickle.c...
  389. #
  390. "{tickleEObj}"tickle.c.o ƒ "{tickleSrc}"tickle.c "{tickleSrc}"tickle.h "{tickleSrc}"version.h
  391.  
  392. #
  393. # Since global variable changes require recomiling tickle.c...
  394. #
  395. "{tickleAObj}"info.c.o ƒ "{tickleSrc}"info.c "{tickleSrc}"version.h
  396.  
  397. #
  398. # Since global variable changes require recomiling tickle.c...
  399. #
  400. "{tickleEObj}"info.c.o ƒ "{tickleSrc}"info.c "{tickleSrc}"version.h
  401.  
  402.  
  403. ###
  404. ### TCL Related Make Rules
  405. ###
  406.  
  407. TclShell ƒ "{tcl}"tclTool
  408. TclShellApp ƒ "{tcl}"tclShell
  409. TclHeader ƒ "{tcl}"tcl.h
  410. TclLibrary ƒ "{tcl}"libtcl.o
  411. TclXHeader ƒ "{tcl}"tclExtend.h
  412. TclXLibrary ƒ "{tcl}"libtclX.o
  413.  
  414. TclClean ƒ
  415.     Echo "# `Date -t` ----- Removing all tcl objects..."
  416.     {DELETE} -y {TCL_OBJS}    || Echo "# `Date -t` ----- No Tcl Objects To Remove."
  417.     {DELETE} -y {TCL_X_OBJS}    || Echo "# `Date -t` ----- No TclX Objects To Remove."
  418.  
  419. TclSuperClean ƒ
  420.     Echo "# `Date -t` ----- Removing all tcl binaries..."
  421.     {DELETE} -y "{tcl}"tclTool    || Echo "# `Date -t` ----- No Tcl Shell To Remove."
  422.     {DELETE} -y "{tcl}"tcl.h "{tcl}"tclExtend.h
  423.             || Echo "# `Date -t` ----- No Tcl Headers To Remove."
  424.     {DELETE} -y "{tcl}"libtcl.o "{tcl}"libtclX.o
  425.             || Echo "# `Date -t` ----- No Tcl Libraries To Remove."
  426.  
  427. "{tcl}"tclTool ƒ                     ∂
  428.         "{tcl}"libtcl.o                ∂
  429.         "{tcl}"libtclX.o            ∂
  430.         "{tclObj}"tclMac.c.o        ∂
  431.         "{tclObj}"tclMacCWD.c.o        ∂
  432.         "{tclObj}"tclMPWShell.c.o    ∂
  433.         "{tclObj}"tclMain.c.o
  434.     Echo "# `Date -t` ----- Linking "{tcl}"tcl..."
  435.     Link -c "MPS " -t "MPST"        ∂
  436.         {LDFlags}                    ∂
  437.         -o "{tcl}"tclTool            ∂
  438.         "{tclObj}"tclMain.c.o        ∂
  439.         "{tclObj}"tclMac.c.o        ∂
  440.         "{tclObj}"tclMacCWD.c.o        ∂
  441.         "{tclObj}"tclMPWShell.c.o    ∂
  442.         "{tcl}"libtcl.o                ∂
  443.         "{tcl}"libtclX.o            ∂
  444.         {SHELL_LIBS}                ∂
  445.         || ( Echo "#####   ### ERROR ###   #####" )
  446.  
  447. "{tcl}"tclShell ƒ                    ∂
  448.         "{tclObj}"tclShell.code
  449.     Echo "# `Date -t` ----- Rezing tclShell..."
  450.     Rez -c 'siow' -t 'APPL'            ∂
  451.         -s "{tclObj}"                ∂
  452.         -o "{tcl}"tclShell            ∂
  453.         "{tickleSrc}"tclShell.r
  454.  
  455. "{tclObj}"tclShell.code ƒ             ∂
  456.         "{tcl}"libtcl.o                ∂
  457.         "{tcl}"libtclX.o            ∂
  458.         "{tclObj}"tclMac.c.o        ∂
  459.         "{tclObj}"tclMacCWD.c.o        ∂
  460.         "{tclObj}"tclMPWShell.c.o    ∂
  461.         "{tclObj}"tclMain.c.o
  462.     Echo "# `Date -t` ----- Linking "{tcl}"tclShell.code..."
  463.     Link -c "MPS " -t "MPST"        ∂
  464.         {LDFlags}                    ∂
  465.         -o "{tclObj}"tclShell.code    ∂
  466.         "{tclObj}"tclMain.c.o        ∂
  467.         "{tclObj}"tclMac.c.o        ∂
  468.         "{tclObj}"tclMacCWD.c.o        ∂
  469.         "{tclObj}"tclMPWShell.c.o    ∂
  470.         "{tcl}"libtcl.o                ∂
  471.         "{tcl}"libtclX.o            ∂
  472.         "{Libraries}"SIOW.o            ∂
  473.         {SHELL_LIBS}                ∂
  474.         || ( Echo "#####   ### ERROR ###   #####" )
  475.  
  476. "{tcl}"tcl.h ƒ "{tclSrc}"tcl.h
  477.     Echo "# `Date -t` ----- Copy "{tclSrc}"tcl.h to "{tcl}"tcl.h..."
  478.     Duplicate -y ""{tclSrc}"tcl.h" "{tcl}"
  479.  
  480. "{tcl}"libtcl.o ƒ "{tclObj}"libtcl.o
  481.     Echo "# `Date -t` ----- Copy "{tclObj}"libtcl.o to "{tcl}"libtcl.o..."
  482.     Duplicate -y "{tclObj}"libtcl.o "{tcl}"
  483.  
  484. "{tclObj}"libtcl.o ƒ {TCL_OBJS}
  485.     Echo "# `Date -t` ----- Building "{tclObj}"libtcl.o..."
  486.     Lib -o "{tclObj}"libtcl.o {TCL_OBJS}
  487.  
  488. "{tcl}"tclExtend.h ƒ "{tclXSrc}"tclExtend.h
  489.     Echo "# `Date -t` ----- Copy "{tclXSrc}"tclExtend.h to "{tcl}"tclExtend.h..."
  490.     Duplicate -y ""{tclXSrc}"tclExtend.h" "{tcl}"
  491.  
  492. "{tcl}"libtclX.o ƒ "{tclXObj}"libtclX.o
  493.     Echo "# `Date -t` ----- Copy "{tclXObj}"libtcl.o to "{tcl}"libtclX.o..."
  494.     Duplicate -y "{tclXObj}"libtclX.o "{tcl}"
  495.  
  496. "{tclXObj}"libtclX.o ƒ {TCL_X_OBJS}
  497.     Echo "# `Date -t` ----- Building "{tclXObj}"libtclX.o..."
  498.     Lib -o "{tclXObj}"libtclX.o {TCL_X_OBJS}
  499.  
  500.  
  501. xtcl_echo ƒ "{tickleExt}"XTCL_echo
  502.  
  503. "{tickleExt}"XTCL_echo ƒ                ∂
  504.         "{tickleCObj}"XTCL_echo.c.o
  505.     Echo "# `Date -t` ----- Linking {tickleExt}XTCL_echo..."
  506.     Link -t "XTCL" -c "MPS "            ∂
  507.         -rt "XTCL=2020"                    ∂
  508.         -sg "echo"                        ∂
  509.         -m XTCLEntry                    ∂
  510.         -o "{tickleExt}"XTCL_echo        ∂
  511.         "{tickleCObj}"XTCL_echo.c.o        ∂
  512.         "{CLibraries}"StdCLib.o            ∂
  513.         "{Libraries}"Interface.o
  514.  
  515.  
  516. xtcl_setfile ƒ "{tickleExt}"XTCL_setfile
  517.  
  518. "{tickleExt}"XTCL_setfile ƒ                ∂
  519.         "{tickleCObj}"XTCL_setfile.c.o
  520.     Echo "# `Date -t` ----- Linking {tickleExt}XTCL_setfile..."
  521.     Link -t "XTCL" -c "MPS " -w            ∂
  522.         -rt "XTCL=2025"                    ∂
  523.         -sg "setfile"                    ∂
  524.         -m XTCLEntry                    ∂
  525.         -o "{tickleExt}"XTCL_setfile    ∂
  526.         "{tickleCObj}"XTCL_setfile.c.o    ∂
  527.         "{CLibraries}"sprintf_drvr.o    ∂
  528.         "{CLibraries}"StdCLib.o            ∂
  529.         "{Libraries}"RunTime.o            ∂
  530.         "{Libraries}"Interface.o
  531.  
  532.  
  533. xtcl_getfile ƒ "{tickleExt}"XTCL_getfile
  534.  
  535. "{tickleExt}"XTCL_getfile ƒ                ∂
  536.         "{tickleCObj}"XTCL_getfile.c.o
  537.     Echo "# `Date -t` ----- Linking {tickleExt}XTCL_getfile..."
  538.     Link -t "XTCL" -c "MPS " -w            ∂
  539.         -rt "XTCL=2030"                    ∂
  540.         -sg "getfile"                    ∂
  541.         -m XTCLEntry                    ∂
  542.         -o "{tickleExt}"XTCL_getfile    ∂
  543.         "{tickleCObj}"XTCL_getfile.c.o    ∂
  544.         "{CLibraries}"sprintf_drvr.o    ∂
  545.         "{CLibraries}"StdCLib.o            ∂
  546.         "{Libraries}"RunTime.o            ∂
  547.         "{Libraries}"Interface.o
  548.  
  549.  
  550. XTCL_callback ƒ "{tickleExt}"XTCL_callback
  551.  
  552. "{tickleExt}"XTCL_callback ƒ            ∂
  553.         "{tickleCObj}"XTCL_callback.c.o
  554.     Echo "# `Date -t` ----- Linking {tickleExt}XTCL_callback..."
  555.     Link -t "XTCL" -c "MPS "            ∂
  556.         -rt "XTCL=2069"                    ∂
  557.         -sg "callback"                    ∂
  558.         -m XTCLEntry                    ∂
  559.         -o "{tickleExt}"XTCL_callback    ∂
  560.         "{tickleCObj}"XTCL_callback.c.o    ∂
  561.         "{CLibraries}"StdCLib.o            ∂
  562.         "{Libraries}"Interface.o
  563.  
  564.  
  565. PASCAL_callback ƒ "{tickleExt}"PASCAL_callback
  566.  
  567. "{tickleExt}"PASCAL_callback ƒ                ∂
  568.         "{tickleCObj}"XTCL_callback.p.o        ∂
  569.         "{tickleExt}"XTCLGlue.o
  570.     Echo "# `Date -t` ----- Linking {tickleExt}PASCAL_callback..."
  571.     Link -t "XTCL" -c "MPS "                ∂
  572.         -rt "XTCL=2069"                        ∂
  573.         -sg "callback"                        ∂
  574.         -m XTCLEntry                        ∂
  575.         -o "{tickleExt}"PASCAL_callback        ∂
  576.         "{tickleExt}"XTCLGlue.o                ∂
  577.         "{tickleCObj}"XTCL_callback.p.o        ∂
  578.         "{Libraries}"Interface.o
  579.  
  580. PXTCL_callback ƒ "{tickleExt}"PXTCL_callback
  581.  
  582. "{tickleExt}"PXTCL_callback ƒ                    ∂
  583.         "{tickleCObj}"XTCL_Pascal_callback.c.o    ∂
  584.         "{tickleExt}"XTCLGlue.o
  585.     Echo "# `Date -t` ----- Linking {tickleExt}PXTCL_callback..."
  586.     Link -t "XTCL" -c "MPS "                    ∂
  587.         -rt "XTCL=2069"                            ∂
  588.         -sg "callback"                            ∂
  589.         -m XTCLEntry                            ∂
  590.         -o "{tickleExt}"PXTCL_callback            ∂
  591.         "{tickleExt}"XTCLGlue.o                    ∂
  592.         "{tickleCObj}"XTCL_Pascal_callback.c.o    ∂
  593.         "{CLibraries}"StdCLib.o                    ∂
  594.         "{Libraries}"Interface.o
  595.  
  596. Glue ƒ "{tickleExt}"XTCLGlue.o
  597.  
  598. "{tickleExt}"XTCLGlue.o ƒ                    ∂
  599.         "{tickleCObj}"pascal_glue.c.o        ∂
  600.         "{tickleCObj}"xcmd.a.o
  601.     Echo "# `Date -t` ----- Library {tickleExt}XTCLGlue.o..."
  602.     Lib -o "{tickleExt}"XTCLGlue.o            ∂
  603.         "{tickleCObj}"pascal_glue.c.o        ∂
  604.         "{tickleCObj}"xcmd.a.o
  605.  
  606. PROC_TEXTalis ƒ "{tickleExt}"PROC_TEXTalis
  607.  
  608. "{tickleExt}"PROC_TEXTalis ƒ            ∂
  609.         "{tickleCObj}"PROC_TEXTalis.c.o
  610.     Echo "# `Date -t` ----- Linking {tickleExt}PROC_TEXTalis..."
  611.     Link -t "PROC" -c "MPS " -w            ∂
  612.         -rt "PROC=2025"                    ∂
  613.         -sg "CSPTTEXTalis"                ∂
  614.         -m PROCENTRY                    ∂
  615.         -o "{tickleExt}"PROC_TEXTalis    ∂
  616.         "{tickleCObj}"PROC_TEXTalis.c.o    ∂
  617.         "{CLibraries}"dprintf_drvr.o    ∂
  618.         "{CLibraries}"StdCLib.o            ∂
  619.         "{Libraries}"RunTime.o            ∂
  620.         "{Libraries}"Interface.o
  621.  
  622. PROC_AEVTtcl1eval ƒ "{tickleExt}"PROC_AEVTtcl1eval
  623.  
  624. "{tickleExt}"PROC_AEVTtcl1eval ƒ            ∂
  625.         "{tickleCObj}"PROC_AEVTtcl1eval.c.o
  626.     Echo "# `Date -t` ----- Linking {tickleExt}PROC_AEVTtcl1eval..."
  627.     Link -t "PROC" -c "MPS " -w                ∂
  628.         -rt "PROC=2030"                        ∂
  629.         -sg "AEVTtcl1eval"                    ∂
  630.         -m PROCENTRY                        ∂
  631.         -o "{tickleExt}"PROC_AEVTtcl1eval    ∂
  632.         "{tickleCObj}"PROC_AEVTtcl1eval.c.o    ∂
  633.         "{CLibraries}"dprintf_drvr.o        ∂
  634.         "{CLibraries}"StdCLib.o                ∂
  635.         "{Libraries}"RunTime.o                ∂
  636.         "{Libraries}"Interface.o
  637.  
  638.  
  639. #
  640. # Set up object and source directory dependency
  641. #
  642. "{tickleCObj}"    ƒ    "{tickleSrc}"
  643. "{tickleAObj}"    ƒ    "{tickleSrc}"
  644. "{tickleEObj}"    ƒ    "{tickleSrc}"
  645. "{tclObj}"        ƒ    "{tclSrc}"
  646. "{tclObj}"        ƒ    "{tickleSrc}"
  647. "{tclXObj}"        ƒ    "{tclXSrc}"
  648.  
  649.  
  650. #
  651. # This command is what is used to compile all C source code.
  652. #
  653. .c.o    ƒ    .c
  654.     Echo "# `Date -t` ----- Compiling {default}.c..."
  655.     C "{depDir}{default}.c"                ∂
  656.         {CFlags} {CONTEXTFLAGS}            ∂
  657.         -o "{targDir}{default}.c.o"        ∂
  658.         || ( Echo "#####   ### ERROR ###   #####" )
  659.  
  660. #
  661. # This command is what is used to compile all Asm source code.
  662. #
  663. .a.o    ƒ    .a
  664.     Echo "# `Date -t` ----- Assembling {default}.a..."
  665.     Asm "{depDir}{default}.a"            ∂
  666.         -o "{targDir}{default}.a.o"        ∂
  667.         || ( Echo "#####   ### ERROR ###   #####" )
  668.  
  669.