SRC = \ dmd\access.c \ dmd\array.c \ dmd\attrib.c \ dmd\cast.c \ dmd\class.c \ dmd\constfold.c \ dmd\dchar.c \ dmd\debcond.c \ dmd\declaration.c \ dmd\dsymbol.c \ dmd\dump.c \ dmd\entity.c \ dmd\enum.c \ dmd\expression.c \ dmd\func.c \ dmd\gnuc.c \ dmd\html.c \ dmd\id.c \ dmd\identifier.c \ dmd\import.c \ dmd\inifile.c \ dmd\init.c \ dmd\inline.c \ dmd\lexer.c \ dmd\link.c \ dmd\lstring.c \ dmd\mangle.c \ dmd\mars.c \ dmd\mem.c \ dmd\module.c \ dmd\mtype.c \ dmd\opover.c \ dmd\optimize.c \ dmd\parse.c \ dmd\root.c \ dmd\scope.c \ dmd\statement.c \ dmd\staticassert.c \ dmd\stringtable.c \ dmd\struct.c \ dmd\template.c \ dmd\unialpha.c \ dmd\utf.c \ dmd\version.c \ dmd\impcnvtab.c \ stubs\typinf.c \ stubs\toobj.c \ stubs\tocsym.c \ stubs\todt.c \ stubs\ir.c \ stubs\annotation.c \ stubs\xml.c OBJ = \ dmd\access.obj \ dmd\array.obj \ dmd\attrib.obj \ dmd\cast.obj \ dmd\class.obj \ dmd\constfold.obj \ dmd\dchar.obj \ dmd\debcond.obj \ dmd\declaration.obj \ dmd\dsymbol.obj \ dmd\dump.obj \ dmd\entity.obj \ dmd\enum.obj \ dmd\expression.obj \ dmd\func.obj \ dmd\gnuc.obj \ dmd\html.obj \ dmd\id.obj \ dmd\identifier.obj \ dmd\import.obj \ dmd\inifile.obj \ dmd\init.obj \ dmd\inline.obj \ dmd\lexer.obj \ dmd\link.obj \ dmd\lstring.obj \ dmd\mangle.obj \ dmd\mars.obj \ dmd\mem.obj \ dmd\module.obj \ dmd\mtype.obj \ dmd\opover.obj \ dmd\optimize.obj \ dmd\parse.obj \ dmd\root.obj \ dmd\scope.obj \ dmd\statement.obj \ dmd\staticassert.obj \ dmd\stringtable.obj \ dmd\struct.obj \ dmd\template.obj \ dmd\unialpha.obj \ dmd\utf.obj \ dmd\version.obj \ dmd\impcnvtab.obj \ stubs\typinf.obj \ stubs\toobj.obj \ stubs\tocsym.obj \ stubs\todt.obj \ stubs\ir.obj \ stubs\annotation.obj \ stubs\xml.obj DMC = dmc CFLAGS = -g -Istubs -Idmd -w2 EXE = dexter.exe MAP = dexter.map IDGEN = idgen.exe IMPCNV = impcnvgen.exe targets : $(EXE) # Make helper programs to generate conversion table and identifiers dmd\$(IDGEN) : dmd\idgen.c cd dmd $(DMC) -cpp idgen.c cd .. dmd\id.h : dmd\$(IDGEN) cd dmd $(IDGEN) cd .. dmd\id.c : dmd\$(IDGEN) cd dmd $(IDGEN) cd .. dmd\$(IMPCNV) : dmd\impcnvgen.c cd dmd $(DMC) -cpp impcnvgen.c cd .. dmd\impcnvtab.c : dmd\$(IMPCNV) cd dmd $(IMPCNV) cd .. # Default Rule .c.obj : $(DMC) -cpp -c $(CFLAGS) -o$@ $< # Build main executable $(EXE) : $(SRC) $(OBJ) $(DMC) -cpp -o$@ $(OBJ) # Clean obj files clean : - del $(OBJ) $(EXE) $(MAP)