| 1 |
#_ win32.mak |
|---|
| 2 |
# Copyright (C) 1999-2010 by Digital Mars, http://www.digitalmars.com |
|---|
| 3 |
# Written by Walter Bright |
|---|
| 4 |
# All Rights Reserved |
|---|
| 5 |
# Build dmd with Digital Mars C++ compiler |
|---|
| 6 |
|
|---|
| 7 |
D= |
|---|
| 8 |
DMDSVN=\svnproj\dmd\trunk\src |
|---|
| 9 |
#DMDSVN=\svnproj\dmd\branches\dmd-1.x\src |
|---|
| 10 |
SCROOT=$D\dm |
|---|
| 11 |
INCLUDE=$(SCROOT)\include |
|---|
| 12 |
CC=\dm\bin\dmc |
|---|
| 13 |
LIBNT=$(SCROOT)\lib |
|---|
| 14 |
SNN=$(SCROOT)\lib\snn |
|---|
| 15 |
DIR=\dmd2 |
|---|
| 16 |
CP=cp |
|---|
| 17 |
|
|---|
| 18 |
C=backend |
|---|
| 19 |
TK=tk |
|---|
| 20 |
ROOT=root |
|---|
| 21 |
|
|---|
| 22 |
MAKE=make -fwin32.mak C=$C TK=$(TK) ROOT=$(ROOT) |
|---|
| 23 |
|
|---|
| 24 |
TARGET=dmd |
|---|
| 25 |
XFLG= |
|---|
| 26 |
MODEL=n |
|---|
| 27 |
OPT= |
|---|
| 28 |
DEBUG=-gl -D -DUNITTEST |
|---|
| 29 |
#PREC=-H -HItotal.h -HO |
|---|
| 30 |
PREC= |
|---|
| 31 |
LFLAGS= |
|---|
| 32 |
|
|---|
| 33 |
LINKN=$(SCROOT)\bin\link /de |
|---|
| 34 |
|
|---|
| 35 |
CFLAGS=-I$(ROOT);$(INCLUDE) $(XFLG) $(OPT) $(DEBUG) -cpp -D_DH |
|---|
| 36 |
MFLAGS=-I$C;$(TK) -DMARS -cpp $(DEBUG) -e -wx -D_DH |
|---|
| 37 |
|
|---|
| 38 |
# Makerules: |
|---|
| 39 |
.c.obj: |
|---|
| 40 |
$(CC) -c $(CFLAGS) $(PREC) $* |
|---|
| 41 |
|
|---|
| 42 |
.asm.obj: |
|---|
| 43 |
$(CC) -c $(CFLAGS) $* |
|---|
| 44 |
|
|---|
| 45 |
defaulttarget: debdmd |
|---|
| 46 |
|
|---|
| 47 |
################ RELEASES ######################### |
|---|
| 48 |
|
|---|
| 49 |
release: |
|---|
| 50 |
$(MAKE) clean |
|---|
| 51 |
$(MAKE) dmd |
|---|
| 52 |
$(MAKE) clean |
|---|
| 53 |
|
|---|
| 54 |
################ NT COMMAND LINE RELEASE ######################### |
|---|
| 55 |
|
|---|
| 56 |
trace: |
|---|
| 57 |
$(MAKE) OPT=-o "DEBUG=-gt -Nc" LFLAGS=-L/ma/co/delexe dmd.exe |
|---|
| 58 |
|
|---|
| 59 |
dmd: |
|---|
| 60 |
$(MAKE) OPT=-o "DEBUG=" LFLAGS=-L/delexe dmd.exe |
|---|
| 61 |
# $(MAKE) OPT=-o "DEBUG=" LFLAGS=-L/ma/co/delexe dmd.exe |
|---|
| 62 |
|
|---|
| 63 |
################ NT COMMAND LINE DEBUG ######################### |
|---|
| 64 |
|
|---|
| 65 |
debdmd: |
|---|
| 66 |
$(MAKE) OPT= "DEBUG=-D -g -DUNITTEST" LFLAGS=-L/ma/co dmd.exe |
|---|
| 67 |
|
|---|
| 68 |
######################################### |
|---|
| 69 |
|
|---|
| 70 |
# D front end |
|---|
| 71 |
|
|---|
| 72 |
OBJ1= mars.obj enum.obj struct.obj dsymbol.obj import.obj id.obj \ |
|---|
| 73 |
staticassert.obj identifier.obj mtype.obj expression.obj \ |
|---|
| 74 |
optimize.obj template.obj lexer.obj declaration.obj cast.obj \ |
|---|
| 75 |
init.obj func.obj utf.obj unialpha.obj parse.obj statement.obj \ |
|---|
| 76 |
constfold.obj version.obj inifile.obj typinf.obj \ |
|---|
| 77 |
module.obj scope.obj dump.obj cond.obj inline.obj opover.obj \ |
|---|
| 78 |
entity.obj class.obj mangle.obj attrib.obj impcnvtab.obj \ |
|---|
| 79 |
link.obj access.obj doc.obj macro.obj hdrgen.obj delegatize.obj \ |
|---|
| 80 |
interpret.obj traits.obj aliasthis.obj \ |
|---|
| 81 |
builtin.obj clone.obj libomf.obj arrayop.obj irstate.obj \ |
|---|
| 82 |
glue.obj msc.obj ph.obj tk.obj s2ir.obj todt.obj e2ir.obj tocsym.obj \ |
|---|
| 83 |
util.obj bit.obj eh.obj toobj.obj toctype.obj tocvdebug.obj toir.obj \ |
|---|
| 84 |
json.obj unittests.obj imphint.obj argtypes.obj |
|---|
| 85 |
|
|---|
| 86 |
# from C/C++ compiler optimizer and back end |
|---|
| 87 |
|
|---|
| 88 |
OBJ8= go.obj gdag.obj gother.obj gflow.obj gloop.obj var.obj el.obj \ |
|---|
| 89 |
newman.obj glocal.obj os.obj nteh.obj evalu8.obj cgcs.obj \ |
|---|
| 90 |
rtlsym.obj html.obj cgelem.obj cgen.obj cgreg.obj out.obj \ |
|---|
| 91 |
blockopt.obj cgobj.obj cg.obj cgcv.obj type.obj dt.obj \ |
|---|
| 92 |
debug.obj code.obj cg87.obj cgsched.obj ee.obj csymbol.obj \ |
|---|
| 93 |
cgcod.obj cod1.obj cod2.obj cod3.obj cod4.obj cod5.obj outbuf.obj \ |
|---|
| 94 |
bcomplex.obj iasm.obj ptrntab.obj aa.obj ti_achar.obj md5.obj |
|---|
| 95 |
|
|---|
| 96 |
# from ROOT |
|---|
| 97 |
|
|---|
| 98 |
ROOTOBJS= lstring.obj array.obj gnuc.obj man.obj rmem.obj port.obj root.obj \ |
|---|
| 99 |
stringtable.obj dchar.obj response.obj async.obj speller.obj aav.obj |
|---|
| 100 |
|
|---|
| 101 |
OBJS= $(OBJ1) $(OBJ8) $(ROOTOBJS) |
|---|
| 102 |
|
|---|
| 103 |
SRCS= mars.c enum.c struct.c dsymbol.c import.c idgen.c impcnvgen.c utf.h \ |
|---|
| 104 |
utf.c entity.c identifier.c mtype.c expression.c optimize.c \ |
|---|
| 105 |
template.h template.c lexer.c declaration.c cast.c \ |
|---|
| 106 |
cond.h cond.c link.c aggregate.h staticassert.h parse.c statement.c \ |
|---|
| 107 |
constfold.c version.h version.c inifile.c iasm.c staticassert.c \ |
|---|
| 108 |
module.c scope.c dump.c init.h init.c attrib.h attrib.c opover.c \ |
|---|
| 109 |
eh.c toctype.c class.c mangle.c bit.c tocsym.c func.c inline.c \ |
|---|
| 110 |
access.c complex_t.h unialpha.c irstate.h irstate.c glue.c msc.c \ |
|---|
| 111 |
ph.c tk.c s2ir.c todt.c e2ir.c util.c toobj.c cppmangle.c \ |
|---|
| 112 |
identifier.h parse.h scope.h enum.h import.h \ |
|---|
| 113 |
typinf.c tocvdebug.c toelfdebug.c mars.h module.h mtype.h dsymbol.h \ |
|---|
| 114 |
declaration.h lexer.h expression.h statement.h doc.h doc.c \ |
|---|
| 115 |
macro.h macro.c hdrgen.h hdrgen.c arraytypes.h \ |
|---|
| 116 |
delegatize.c toir.h toir.c interpret.c traits.c builtin.c \ |
|---|
| 117 |
clone.c lib.h libomf.c libelf.c libmach.c arrayop.c \ |
|---|
| 118 |
aliasthis.h aliasthis.c json.h json.c unittests.c imphint.c argtypes.c |
|---|
| 119 |
|
|---|
| 120 |
# From C++ compiler |
|---|
| 121 |
|
|---|
| 122 |
BACKSRC= $C\cdef.h $C\cc.h $C\oper.h $C\ty.h $C\optabgen.c \ |
|---|
| 123 |
$C\global.h $C\parser.h $C\code.h $C\type.h $C\dt.h $C\cgcv.h \ |
|---|
| 124 |
$C\el.h $C\iasm.h $C\rtlsym.h $C\html.h \ |
|---|
| 125 |
$C\bcomplex.c $C\blockopt.c $C\cg.c $C\cg87.c \ |
|---|
| 126 |
$C\cgcod.c $C\cgcs.c $C\cgcv.c $C\cgelem.c $C\cgen.c $C\cgobj.c \ |
|---|
| 127 |
$C\cgreg.c $C\var.c \ |
|---|
| 128 |
$C\cgsched.c $C\cod1.c $C\cod2.c $C\cod3.c $C\cod4.c $C\cod5.c \ |
|---|
| 129 |
$C\code.c $C\symbol.c $C\debug.c $C\dt.c $C\ee.c $C\el.c \ |
|---|
| 130 |
$C\evalu8.c $C\go.c $C\gflow.c $C\gdag.c \ |
|---|
| 131 |
$C\gother.c $C\glocal.c $C\gloop.c $C\html.c $C\newman.c \ |
|---|
| 132 |
$C\nteh.c $C\os.c $C\out.c $C\outbuf.c $C\ptrntab.c $C\rtlsym.c \ |
|---|
| 133 |
$C\type.c $C\melf.h $C\mach.h $C\bcomplex.h \ |
|---|
| 134 |
$C\cdeflnx.h $C\outbuf.h $C\token.h $C\tassert.h \ |
|---|
| 135 |
$C\elfobj.c $C\cv4.h $C\dwarf2.h $C\cpp.h $C\exh.h $C\go.h \ |
|---|
| 136 |
$C\dwarf.c $C\dwarf.h $C\cppman.c $C\machobj.c \ |
|---|
| 137 |
$C\strtold.c $C\aa.h $C\aa.c $C\tinfo.h $C\ti_achar.c \ |
|---|
| 138 |
$C\md5.h $C\md5.c \ |
|---|
| 139 |
$C\backend.txt |
|---|
| 140 |
|
|---|
| 141 |
# From TK |
|---|
| 142 |
|
|---|
| 143 |
TKSRC= $(TK)\filespec.h $(TK)\mem.h $(TK)\list.h $(TK)\vec.h \ |
|---|
| 144 |
$(TK)\filespec.c $(TK)\mem.c $(TK)\vec.c $(TK)\list.c |
|---|
| 145 |
|
|---|
| 146 |
# From root |
|---|
| 147 |
|
|---|
| 148 |
ROOTSRC= $(ROOT)\dchar.h $(ROOT)\dchar.c $(ROOT)\lstring.h \ |
|---|
| 149 |
$(ROOT)\lstring.c $(ROOT)\root.h $(ROOT)\root.c $(ROOT)\array.c \ |
|---|
| 150 |
$(ROOT)\rmem.h $(ROOT)\rmem.c $(ROOT)\port.h \ |
|---|
| 151 |
$(ROOT)\stringtable.h $(ROOT)\stringtable.c \ |
|---|
| 152 |
$(ROOT)\gnuc.h $(ROOT)\gnuc.c $(ROOT)\man.c $(ROOT)\port.c \ |
|---|
| 153 |
$(ROOT)\response.c $(ROOT)\async.h $(ROOT)\async.c \ |
|---|
| 154 |
$(ROOT)\speller.h $(ROOT)\speller.c \ |
|---|
| 155 |
$(ROOT)\aav.h $(ROOT)\aav.c |
|---|
| 156 |
|
|---|
| 157 |
MAKEFILES=win32.mak linux.mak osx.mak freebsd.mak solaris.mak |
|---|
| 158 |
|
|---|
| 159 |
######################################### |
|---|
| 160 |
|
|---|
| 161 |
$(TARGET).exe : $(OBJS) win32.mak |
|---|
| 162 |
dmc -o$(TARGET).exe $(OBJS) -cpp -mn -Ar $(LFLAGS) |
|---|
| 163 |
|
|---|
| 164 |
|
|---|
| 165 |
##################### INCLUDE MACROS ##################### |
|---|
| 166 |
|
|---|
| 167 |
CCH= |
|---|
| 168 |
#TOTALH=$(CCH) total.sym |
|---|
| 169 |
TOTALH=$(CCH) id.h |
|---|
| 170 |
CH= $C\cc.h $C\global.h $C\parser.h $C\oper.h $C\code.h $C\type.h $C\dt.h $C\cgcv.h $C\el.h $C\iasm.h |
|---|
| 171 |
|
|---|
| 172 |
##################### GENERATED SOURCE ##################### |
|---|
| 173 |
|
|---|
| 174 |
msgs.h msgs.c sj1041.msg sj1036.msg sj1031.msg : msgsx.exe |
|---|
| 175 |
msgsx |
|---|
| 176 |
|
|---|
| 177 |
msgsx.exe : msgsx.c |
|---|
| 178 |
dmc msgsx -mn -D$(TARGET) $(DEFINES) $(WINLIBS) |
|---|
| 179 |
|
|---|
| 180 |
elxxx.c cdxxx.c optab.c debtab.c fltables.c tytab.c : \ |
|---|
| 181 |
$C\cdef.h $C\cc.h $C\oper.h $C\ty.h $C\optabgen.c |
|---|
| 182 |
dmc -cpp -ooptabgen.exe $C\optabgen -DMARS -I$(TK) $(WINLIBS) #-L$(LINKS) |
|---|
| 183 |
optabgen |
|---|
| 184 |
|
|---|
| 185 |
impcnvtab.c : impcnvgen.c |
|---|
| 186 |
$(CC) -I$(ROOT) -cpp impcnvgen |
|---|
| 187 |
impcnvgen |
|---|
| 188 |
|
|---|
| 189 |
id.h id.c : idgen.c |
|---|
| 190 |
dmc -cpp idgen |
|---|
| 191 |
idgen |
|---|
| 192 |
|
|---|
| 193 |
##################### SPECIAL BUILDS ##################### |
|---|
| 194 |
|
|---|
| 195 |
total.sym : $(ROOT)\root.h mars.h lexer.h parse.h enum.h dsymbol.h \ |
|---|
| 196 |
mtype.h expression.h attrib.h init.h cond.h version.h \ |
|---|
| 197 |
declaration.h statement.h scope.h import.h module.h id.h \ |
|---|
| 198 |
template.h aggregate.h arraytypes.h lib.h total.h |
|---|
| 199 |
$(CC) -c $(CFLAGS) -HFtotal.sym total.h |
|---|
| 200 |
|
|---|
| 201 |
impcnvtab.obj : mtype.h impcnvtab.c |
|---|
| 202 |
$(CC) -c -I$(ROOT) -cpp impcnvtab |
|---|
| 203 |
|
|---|
| 204 |
iasm.obj : $(CH) $(TOTALH) $C\iasm.h iasm.c |
|---|
| 205 |
$(CC) -c $(MFLAGS) -I$(ROOT) iasm |
|---|
| 206 |
|
|---|
| 207 |
bcomplex.obj : $C\bcomplex.c |
|---|
| 208 |
$(CC) -c $(MFLAGS) $C\bcomplex |
|---|
| 209 |
|
|---|
| 210 |
aa.obj : $C\tinfo.h $C\aa.h $C\aa.c |
|---|
| 211 |
$(CC) -c $(MFLAGS) -I. $C\aa |
|---|
| 212 |
|
|---|
| 213 |
bit.obj : expression.h bit.c |
|---|
| 214 |
$(CC) -c -I$(ROOT) $(MFLAGS) bit |
|---|
| 215 |
|
|---|
| 216 |
blockopt.obj : $C\blockopt.c |
|---|
| 217 |
$(CC) -c $(MFLAGS) $C\blockopt |
|---|
| 218 |
|
|---|
| 219 |
cg.obj : $C\cg.c |
|---|
| 220 |
$(CC) -c $(MFLAGS) -I. $C\cg |
|---|
| 221 |
|
|---|
| 222 |
cg87.obj : $C\cg87.c |
|---|
| 223 |
$(CC) -c $(MFLAGS) $C\cg87 |
|---|
| 224 |
|
|---|
| 225 |
cgcod.obj : $C\cgcod.c |
|---|
| 226 |
$(CC) -c $(MFLAGS) -I. $C\cgcod |
|---|
| 227 |
|
|---|
| 228 |
cgcs.obj : $C\cgcs.c |
|---|
| 229 |
$(CC) -c $(MFLAGS) $C\cgcs |
|---|
| 230 |
|
|---|
| 231 |
cgcv.obj : $C\cgcv.c |
|---|
| 232 |
$(CC) -c $(MFLAGS) $C\cgcv |
|---|
| 233 |
|
|---|
| 234 |
cgelem.obj : $C\rtlsym.h $C\cgelem.c |
|---|
| 235 |
$(CC) -c $(MFLAGS) -I. $C\cgelem |
|---|
| 236 |
|
|---|
| 237 |
cgen.obj : $C\rtlsym.h $C\cgen.c |
|---|
| 238 |
$(CC) -c $(MFLAGS) $C\cgen |
|---|
| 239 |
|
|---|
| 240 |
cgobj.obj : $C\md5.h $C\cgobj.c |
|---|
| 241 |
$(CC) -c $(MFLAGS) $C\cgobj |
|---|
| 242 |
|
|---|
| 243 |
cgreg.obj : $C\cgreg.c |
|---|
| 244 |
$(CC) -c $(MFLAGS) $C\cgreg |
|---|
| 245 |
|
|---|
| 246 |
cgsched.obj : $C\rtlsym.h $C\cgsched.c |
|---|
| 247 |
$(CC) -c $(MFLAGS) $C\cgsched |
|---|
| 248 |
|
|---|
| 249 |
cod1.obj : $C\rtlsym.h $C\cod1.c |
|---|
| 250 |
$(CC) -c $(MFLAGS) $C\cod1 |
|---|
| 251 |
|
|---|
| 252 |
cod2.obj : $C\rtlsym.h $C\cod2.c |
|---|
| 253 |
$(CC) -c $(MFLAGS) $C\cod2 |
|---|
| 254 |
|
|---|
| 255 |
cod3.obj : $C\rtlsym.h $C\cod3.c |
|---|
| 256 |
$(CC) -c $(MFLAGS) $C\cod3 |
|---|
| 257 |
|
|---|
| 258 |
cod4.obj : $C\cod4.c |
|---|
| 259 |
$(CC) -c $(MFLAGS) $C\cod4 |
|---|
| 260 |
|
|---|
| 261 |
cod5.obj : $C\cod5.c |
|---|
| 262 |
$(CC) -c $(MFLAGS) $C\cod5 |
|---|
| 263 |
|
|---|
| 264 |
code.obj : $C\code.c |
|---|
| 265 |
$(CC) -c $(MFLAGS) $C\code |
|---|
| 266 |
|
|---|
| 267 |
irstate.obj : irstate.h irstate.c |
|---|
| 268 |
$(CC) -c $(MFLAGS) -I$(ROOT) irstate |
|---|
| 269 |
|
|---|
| 270 |
csymbol.obj : $C\symbol.c |
|---|
| 271 |
$(CC) -c $(MFLAGS) $C\symbol -ocsymbol.obj |
|---|
| 272 |
|
|---|
| 273 |
debug.obj : $C\debug.c |
|---|
| 274 |
$(CC) -c $(MFLAGS) -I. $C\debug |
|---|
| 275 |
|
|---|
| 276 |
dt.obj : $C\dt.h $C\dt.c |
|---|
| 277 |
$(CC) -c $(MFLAGS) $C\dt |
|---|
| 278 |
|
|---|
| 279 |
ee.obj : $C\ee.c |
|---|
| 280 |
$(CC) -c $(MFLAGS) $C\ee |
|---|
| 281 |
|
|---|
| 282 |
eh.obj : $C\cc.h $C\code.h $C\type.h $C\dt.h eh.c |
|---|
| 283 |
$(CC) -c $(MFLAGS) eh |
|---|
| 284 |
|
|---|
| 285 |
el.obj : $C\rtlsym.h $C\el.h $C\el.c |
|---|
| 286 |
$(CC) -c $(MFLAGS) $C\el |
|---|
| 287 |
|
|---|
| 288 |
evalu8.obj : $C\evalu8.c |
|---|
| 289 |
$(CC) -c $(MFLAGS) $C\evalu8 |
|---|
| 290 |
|
|---|
| 291 |
go.obj : $C\go.c |
|---|
| 292 |
$(CC) -c $(MFLAGS) $C\go |
|---|
| 293 |
|
|---|
| 294 |
gflow.obj : $C\gflow.c |
|---|
| 295 |
$(CC) -c $(MFLAGS) $C\gflow |
|---|
| 296 |
|
|---|
| 297 |
gdag.obj : $C\gdag.c |
|---|
| 298 |
$(CC) -c $(MFLAGS) $C\gdag |
|---|
| 299 |
|
|---|
| 300 |
gother.obj : $C\gother.c |
|---|
| 301 |
$(CC) -c $(MFLAGS) $C\gother |
|---|
| 302 |
|
|---|
| 303 |
glocal.obj : $C\rtlsym.h $C\glocal.c |
|---|
| 304 |
$(CC) -c $(MFLAGS) $C\glocal |
|---|
| 305 |
|
|---|
| 306 |
gloop.obj : $C\gloop.c |
|---|
| 307 |
$(CC) -c $(MFLAGS) $C\gloop |
|---|
| 308 |
|
|---|
| 309 |
glue.obj : $(CH) $(TOTALH) $C\rtlsym.h mars.h module.h glue.c |
|---|
| 310 |
$(CC) -c $(MFLAGS) -I$(ROOT) glue |
|---|
| 311 |
|
|---|
| 312 |
html.obj : $(CH) $(TOTALH) $C\html.h $C\html.c |
|---|
| 313 |
$(CC) -c -I$(ROOT) $(MFLAGS) $C\html |
|---|
| 314 |
|
|---|
| 315 |
imphint.obj : imphint.c |
|---|
| 316 |
$(CC) -c $(CFLAGS) $* |
|---|
| 317 |
|
|---|
| 318 |
mars.obj : $(TOTALH) module.h mars.h mars.c |
|---|
| 319 |
$(CC) -c $(CFLAGS) $(PREC) $* -Ae |
|---|
| 320 |
|
|---|
| 321 |
md5.obj : $C\md5.h $C\md5.c |
|---|
| 322 |
$(CC) -c $(MFLAGS) $C\md5 |
|---|
| 323 |
|
|---|
| 324 |
module.obj : $(TOTALH) $C\html.h module.c |
|---|
| 325 |
$(CC) -c $(CFLAGS) -I$C $(PREC) module.c |
|---|
| 326 |
|
|---|
| 327 |
msc.obj : $(CH) mars.h msc.c |
|---|
| 328 |
$(CC) -c $(MFLAGS) msc |
|---|
| 329 |
|
|---|
| 330 |
newman.obj : $(CH) $C\newman.c |
|---|
| 331 |
$(CC) -c $(MFLAGS) $C\newman |
|---|
| 332 |
|
|---|
| 333 |
nteh.obj : $C\rtlsym.h $C\nteh.c |
|---|
| 334 |
$(CC) -c $(MFLAGS) $C\nteh |
|---|
| 335 |
|
|---|
| 336 |
os.obj : $C\os.c |
|---|
| 337 |
$(CC) -c $(MFLAGS) $C\os |
|---|
| 338 |
|
|---|
| 339 |
out.obj : $C\out.c |
|---|
| 340 |
$(CC) -c $(MFLAGS) $C\out |
|---|
| 341 |
|
|---|
| 342 |
outbuf.obj : $C\outbuf.h $C\outbuf.c |
|---|
| 343 |
$(CC) -c $(MFLAGS) $C\outbuf |
|---|
| 344 |
|
|---|
| 345 |
ph.obj : ph.c |
|---|
| 346 |
$(CC) -c $(MFLAGS) ph |
|---|
| 347 |
|
|---|
| 348 |
ptrntab.obj : $C\iasm.h $C\ptrntab.c |
|---|
| 349 |
$(CC) -c $(MFLAGS) $C\ptrntab |
|---|
| 350 |
|
|---|
| 351 |
rtlsym.obj : $C\rtlsym.h $C\rtlsym.c |
|---|
| 352 |
$(CC) -c $(MFLAGS) $C\rtlsym |
|---|
| 353 |
|
|---|
| 354 |
ti_achar.obj : $C\tinfo.h $C\ti_achar.c |
|---|
| 355 |
$(CC) -c $(MFLAGS) -I. $C\ti_achar |
|---|
| 356 |
|
|---|
| 357 |
toctype.obj : $(CH) $(TOTALH) $C\rtlsym.h mars.h module.h toctype.c |
|---|
| 358 |
$(CC) -c $(MFLAGS) -I$(ROOT) toctype |
|---|
| 359 |
|
|---|
| 360 |
tocvdebug.obj : $(CH) $(TOTALH) $C\rtlsym.h mars.h module.h tocvdebug.c |
|---|
| 361 |
$(CC) -c $(MFLAGS) -I$(ROOT) tocvdebug |
|---|
| 362 |
|
|---|
| 363 |
toobj.obj : $(CH) $(TOTALH) mars.h module.h toobj.c |
|---|
| 364 |
$(CC) -c $(MFLAGS) -I$(ROOT) toobj |
|---|
| 365 |
|
|---|
| 366 |
type.obj : $C\type.c |
|---|
| 367 |
$(CC) -c $(MFLAGS) $C\type |
|---|
| 368 |
|
|---|
| 369 |
typinf.obj : $(CH) $(TOTALH) $C\rtlsym.h mars.h module.h typinf.c |
|---|
| 370 |
$(CC) -c $(MFLAGS) -I$(ROOT) typinf |
|---|
| 371 |
|
|---|
| 372 |
todt.obj : mtype.h expression.h $C\dt.h todt.c |
|---|
| 373 |
$(CC) -c -I$(ROOT) $(MFLAGS) todt |
|---|
| 374 |
|
|---|
| 375 |
s2ir.obj : $C\rtlsym.h statement.h s2ir.c |
|---|
| 376 |
$(CC) -c -I$(ROOT) $(MFLAGS) s2ir |
|---|
| 377 |
|
|---|
| 378 |
e2ir.obj : $C\rtlsym.h expression.h toir.h e2ir.c |
|---|
| 379 |
$(CC) -c -I$(ROOT) $(MFLAGS) e2ir |
|---|
| 380 |
|
|---|
| 381 |
toir.obj : $C\rtlsym.h expression.h toir.h toir.c |
|---|
| 382 |
$(CC) -c -I$(ROOT) $(MFLAGS) toir |
|---|
| 383 |
|
|---|
| 384 |
tocsym.obj : $(CH) $(TOTALH) mars.h module.h tocsym.c |
|---|
| 385 |
$(CC) -c $(MFLAGS) -I$(ROOT) tocsym |
|---|
| 386 |
|
|---|
| 387 |
unittests.obj : $(TOTALH) unittests.c |
|---|
| 388 |
$(CC) -c $(CFLAGS) $(PREC) $* |
|---|
| 389 |
|
|---|
| 390 |
util.obj : util.c |
|---|
| 391 |
$(CC) -c $(MFLAGS) util |
|---|
| 392 |
|
|---|
| 393 |
var.obj : $C\var.c optab.c |
|---|
| 394 |
$(CC) -c $(MFLAGS) -I. $C\var |
|---|
| 395 |
|
|---|
| 396 |
|
|---|
| 397 |
tk.obj : tk.c |
|---|
| 398 |
$(CC) -c $(MFLAGS) tk.c |
|---|
| 399 |
|
|---|
| 400 |
# ROOT |
|---|
| 401 |
|
|---|
| 402 |
aav.obj : $(ROOT)\aav.h $(ROOT)\aav.c |
|---|
| 403 |
$(CC) -c $(CFLAGS) $(ROOT)\aav.c |
|---|
| 404 |
|
|---|
| 405 |
array.obj : $(ROOT)\array.c |
|---|
| 406 |
$(CC) -c $(CFLAGS) $(ROOT)\array.c |
|---|
| 407 |
|
|---|
| 408 |
async.obj : $(ROOT)\async.h $(ROOT)\async.c |
|---|
| 409 |
$(CC) -c $(CFLAGS) $(ROOT)\async.c |
|---|
| 410 |
|
|---|
| 411 |
dchar.obj : $(ROOT)\dchar.c |
|---|
| 412 |
$(CC) -c $(CFLAGS) $(ROOT)\dchar.c |
|---|
| 413 |
|
|---|
| 414 |
gnuc.obj : $(ROOT)\gnuc.c |
|---|
| 415 |
$(CC) -c $(CFLAGS) $(ROOT)\gnuc.c |
|---|
| 416 |
|
|---|
| 417 |
lstring.obj : $(ROOT)\lstring.c |
|---|
| 418 |
$(CC) -c $(CFLAGS) $(ROOT)\lstring.c |
|---|
| 419 |
|
|---|
| 420 |
man.obj : $(ROOT)\man.c |
|---|
| 421 |
$(CC) -c $(CFLAGS) $(ROOT)\man.c |
|---|
| 422 |
|
|---|
| 423 |
rmem.obj : $(ROOT)\rmem.c |
|---|
| 424 |
$(CC) -c $(CFLAGS) $(ROOT)\rmem.c |
|---|
| 425 |
|
|---|
| 426 |
port.obj : $(ROOT)\port.c |
|---|
| 427 |
$(CC) -c $(CFLAGS) $(ROOT)\port.c |
|---|
| 428 |
|
|---|
| 429 |
root.obj : $(ROOT)\root.c |
|---|
| 430 |
$(CC) -c $(CFLAGS) $(ROOT)\root.c |
|---|
| 431 |
|
|---|
| 432 |
response.obj : $(ROOT)\response.c |
|---|
| 433 |
$(CC) -c $(CFLAGS) $(ROOT)\response.c |
|---|
| 434 |
|
|---|
| 435 |
speller.obj : $(ROOT)\speller.h $(ROOT)\speller.c |
|---|
| 436 |
$(CC) -c $(CFLAGS) $(ROOT)\speller.c |
|---|
| 437 |
|
|---|
| 438 |
stringtable.obj : $(ROOT)\stringtable.c |
|---|
| 439 |
$(CC) -c $(CFLAGS) $(ROOT)\stringtable.c |
|---|
| 440 |
|
|---|
| 441 |
|
|---|
| 442 |
################# Source file dependencies ############### |
|---|
| 443 |
|
|---|
| 444 |
access.obj : $(TOTALH) enum.h aggregate.h init.h attrib.h access.c |
|---|
| 445 |
aliasthis.obj : $(TOTALH) aliasthis.h aliasthis.c |
|---|
| 446 |
argtypes.obj : $(TOTALH) mtype.h argtypes.c |
|---|
| 447 |
arrayop.obj : $(TOTALH) identifier.h declaration.h arrayop.c |
|---|
| 448 |
attrib.obj : $(TOTALH) identifier.h declaration.h attrib.h attrib.c |
|---|
| 449 |
builtin.obj : $(TOTALH) builtin.c |
|---|
| 450 |
cast.obj : $(TOTALH) expression.h mtype.h cast.c |
|---|
| 451 |
class.obj : $(TOTALH) enum.h class.c |
|---|
| 452 |
clone.obj : $(TOTALH) clone.c |
|---|
| 453 |
constfold.obj : $(TOTALH) expression.h constfold.c |
|---|
| 454 |
cond.obj : $(TOTALH) identifier.h declaration.h cond.h cond.c |
|---|
| 455 |
declaration.obj : $(TOTALH) identifier.h attrib.h declaration.h declaration.c |
|---|
| 456 |
delegatize.obj : $(TOTALH) delegatize.c |
|---|
| 457 |
doc.obj : $(TOTALH) doc.h doc.c |
|---|
| 458 |
enum.obj : $(TOTALH) identifier.h enum.h enum.c |
|---|
| 459 |
expression.obj : $(TOTALH) expression.h expression.c |
|---|
| 460 |
func.obj : $(TOTALH) identifier.h attrib.h declaration.h func.c |
|---|
| 461 |
hdrgen.obj : $(TOTALH) hdrgen.h hdrgen.c |
|---|
| 462 |
id.obj : $(TOTALH) id.h id.c |
|---|
| 463 |
identifier.obj : $(TOTALH) identifier.h identifier.c |
|---|
| 464 |
import.obj : $(TOTALH) dsymbol.h import.h import.c |
|---|
| 465 |
inifile.obj : $(TOTALH) inifile.c |
|---|
| 466 |
init.obj : $(TOTALH) init.h init.c |
|---|
| 467 |
inline.obj : $(TOTALH) inline.c |
|---|
| 468 |
interpret.obj : $(TOTALH) interpret.c |
|---|
| 469 |
json.obj : $(TOTALH) json.h json.c |
|---|
| 470 |
lexer.obj : $(TOTALH) lexer.c |
|---|
| 471 |
libomf.obj : $(TOTALH) lib.h libomf.c |
|---|
| 472 |
link.obj : $(TOTALH) link.c |
|---|
| 473 |
macro.obj : $(TOTALH) macro.h macro.c |
|---|
| 474 |
mangle.obj : $(TOTALH) dsymbol.h declaration.h mangle.c |
|---|
| 475 |
#module.obj : $(TOTALH) mars.h $C\html.h module.h module.c |
|---|
| 476 |
opover.obj : $(TOTALH) expression.h opover.c |
|---|
| 477 |
optimize.obj : $(TOTALH) expression.h optimize.c |
|---|
| 478 |
parse.obj : $(TOTALH) attrib.h lexer.h parse.h parse.c |
|---|
| 479 |
scope.obj : $(TOTALH) scope.h scope.c |
|---|
| 480 |
statement.obj : $(TOTALH) statement.h statement.c |
|---|
| 481 |
staticassert.obj : $(TOTALH) staticassert.h staticassert.c |
|---|
| 482 |
struct.obj : $(TOTALH) identifier.h enum.h struct.c |
|---|
| 483 |
traits.obj : $(TOTALH) traits.c |
|---|
| 484 |
dsymbol.obj : $(TOTALH) identifier.h dsymbol.h dsymbol.c |
|---|
| 485 |
mtype.obj : $(TOTALH) mtype.h mtype.c |
|---|
| 486 |
#typinf.obj : $(TOTALH) mtype.h typinf.c |
|---|
| 487 |
utf.obj : utf.h utf.c |
|---|
| 488 |
template.obj : $(TOTALH) template.h template.c |
|---|
| 489 |
version.obj : $(TOTALH) identifier.h dsymbol.h cond.h version.h version.c |
|---|
| 490 |
|
|---|
| 491 |
################### Utilities ################ |
|---|
| 492 |
|
|---|
| 493 |
clean: |
|---|
| 494 |
del *.obj |
|---|
| 495 |
del total.sym |
|---|
| 496 |
del msgs.h msgs.c |
|---|
| 497 |
del elxxx.c cdxxx.c optab.c debtab.c fltables.c tytab.c |
|---|
| 498 |
del impcnvtab.c |
|---|
| 499 |
|
|---|
| 500 |
zip : detab tolf $(MAKEFILES) |
|---|
| 501 |
del dmdsrc.zip |
|---|
| 502 |
zip32 dmdsrc $(MAKEFILES) |
|---|
| 503 |
zip32 dmdsrc $(SRCS) |
|---|
| 504 |
zip32 dmdsrc $(BACKSRC) |
|---|
| 505 |
zip32 dmdsrc $(TKSRC) |
|---|
| 506 |
zip32 dmdsrc $(ROOTSRC) |
|---|
| 507 |
|
|---|
| 508 |
################### Detab ################ |
|---|
| 509 |
|
|---|
| 510 |
detab: |
|---|
| 511 |
detab $(SRCS) $(ROOTSRC) $(TKSRC) $(BACKSRC) |
|---|
| 512 |
|
|---|
| 513 |
tolf: |
|---|
| 514 |
tolf $(SRCS) $(ROOTSRC) $(TKSRC) $(BACKSRC) $(MAKEFILES) |
|---|
| 515 |
|
|---|
| 516 |
################### Install ################ |
|---|
| 517 |
|
|---|
| 518 |
install: detab install2 |
|---|
| 519 |
|
|---|
| 520 |
install2: |
|---|
| 521 |
copy dmd.exe $(DIR)\windows\bin\ |
|---|
| 522 |
copy phobos\phobos.lib $(DIR)\windows\lib |
|---|
| 523 |
$(CP) $(SRCS) $(DIR)\src\dmd\ |
|---|
| 524 |
$(CP) $(ROOTSRC) $(DIR)\src\dmd\root\ |
|---|
| 525 |
$(CP) $(TKSRC) $(DIR)\src\dmd\tk\ |
|---|
| 526 |
$(CP) $(BACKSRC) $(DIR)\src\dmd\backend\ |
|---|
| 527 |
$(CP) $(MAKEFILES) $(DIR)\src\dmd\ |
|---|
| 528 |
copy gpl.txt $(DIR)\src\dmd\ |
|---|
| 529 |
copy readme.txt $(DIR)\src\dmd\ |
|---|
| 530 |
copy artistic.txt $(DIR)\src\dmd\ |
|---|
| 531 |
copy backendlicense.txt $(DIR)\src\dmd\ |
|---|
| 532 |
|
|---|
| 533 |
################### Write to SVN ################ |
|---|
| 534 |
|
|---|
| 535 |
svn: detab tolf svn2 |
|---|
| 536 |
|
|---|
| 537 |
svn2: |
|---|
| 538 |
$(CP) $(SRCS) $(DMDSVN)\ |
|---|
| 539 |
$(CP) $(ROOTSRC) $(DMDSVN)\root\ |
|---|
| 540 |
$(CP) $(TKSRC) $(DMDSVN)\tk\ |
|---|
| 541 |
$(CP) $(BACKSRC) $(DMDSVN)\backend\ |
|---|
| 542 |
$(CP) $(MAKEFILES) $(DMDSVN)\ |
|---|
| 543 |
copy gpl.txt $(DMDSVN)\ |
|---|
| 544 |
copy readme.txt $(DMDSVN)\ |
|---|
| 545 |
copy artistic.txt $(DMDSVN)\ |
|---|
| 546 |
copy backendlicense.txt $(DMDSVN)\ |
|---|
| 547 |
|
|---|
| 548 |
################################### |
|---|