7 #----- Flag definitions -----------------------------------------------------
9 # This section only contains common flags -- others (e.g. debugging flags
10 # and predefined macros) are defined in the howto lines.
12 linkFlags= -d -o $@ -aif $(linkx)
13 flinkFlags= -bin -base 0 -o $@ $(linkx)
14 objFlags= -g -stamp -throwback -depend !Depend -quit $(objx)
16 #----- Member list ----------------------------------------------------------
18 # Because this list is used in a few of the targets below, it is defined as
19 # a macro here for changability.
35 testMembers= $(members) \
39 realMembers= $(members) \
44 #----- Making the library ---------------------------------------------------
46 # For brevity's sake, this is done using implicit dependencies.
49 .s.o:; objasm $(objFlags) -from $< -to $@
59 @.termScript: $(testMembers) $(libs)
61 version="1.00 (%zdy %mo %ce%yr)" \
63 /link $(linkFlags) $(testMembers) $(libs) @.o.version
65 @.tScript: $(realMembers) $(libs)
67 version="1.00 (%zdy %mo %ce%yr)" \
69 /link -base 0 -bin -o $@ $(realMembers) $(libs) @.o.version
73 #----- Other targets --------------------------------------------------------
75 # The targets available are:
79 # relink Force a relink of the executable.
80 # remake Force a complete remake of the entire project.
82 recreate:; remove @.!RunImage
83 @amu all ccx=$(ccx) linkx=$(linkx) objx=$(objx)
85 remake:; create @.o.dummy
87 @amu all ccx=$(ccx) linkx=$(linkx) objx=$(objx)
89 #----- Dynamic dependencies -------------------------------------------------
91 # The following are set up by compilers/assemblers and added to the Makefile
92 # autoamtically. For this to work, amu requires that the following active
93 # comment is inserted in the makefile:
95 # Dynamic dependencies:
102 o.mem_real: s.mem_real
103 o.mem_real: libs:header
104 o.mem_real: libs:swis
105 o.mem_real: libs:stream
106 o.mem_real: sh.errNum
109 o.divide: libs:header
125 o.termScript: s.termScript
126 o.termScript: libs:header
127 o.termScript: libs:swis
128 o.termScript: libs:stream
129 o.termScript: sh.anchor
130 o.termScript: sh.ctrl
131 o.termScript: sh.interp
133 o.termScript: sh.strBucket
134 o.termScript: sh.termite
135 o.termScript: sh.tree
136 o.termScript: sh.tokenise
138 o.strBucket: s.strBucket
139 o.strBucket: libs:header
140 o.strBucket: libs:swis
141 o.strBucket: libs:stream
142 o.strBucket: sh.anchor
149 o.error: sh.termScript
152 o.tokenise: s.tokenise
153 o.tokenise: libs:header
154 o.tokenise: libs:swis
155 o.tokenise: libs:stream
156 o.tokenise: sh.anchor
157 o.tokenise: sh.tokens
159 o.tokenise: sh.tokTable
161 o.interp: libs:header
163 o.interp: libs:stream
169 o.interp: sh.getToken
171 o.interp: sh.termScript
174 o.getToken: s.getToken
175 o.getToken: libs:header
176 o.getToken: libs:swis
177 o.getToken: libs:stream
178 o.getToken: sh.anchor
179 o.getToken: sh.tokClasses
181 o.express: libs:header
183 o.express: libs:stream
189 o.express: sh.getToken
191 o.express: sh.termite
192 o.express: sh.termScript
193 o.express: sh.tokenise
195 o.express: sh.upcalls
199 o.driver: libs:header
201 o.driver: libs:stream
203 o.stracc: libs:header
205 o.stracc: libs:stream
209 o.termite: libs:header
211 o.termite: libs:stream
216 o.termite: sh.express
217 o.termite: sh.getToken
220 o.termite: sh.strBucket
221 o.termite: sh.termscript
223 o.termite: sh.upcalls
240 o.ctrl: sh.termscript