
SRCDIR	= 
OBJDIR	= obj/
POptions = #-rebuild
Libraries := $(shell mpw GetEnv Libraries)
PLibraries := $(shell mpw GetEnv PLibraries)

OBJECTS = \
		$(OBJDIR)CCommon.p.o \
		$(OBJDIR)Shell.p.o \
		$(OBJDIR)MM.p.o \
		$(OBJDIR)CGI.p.o \
		$(OBJDIR)Scanner.p.o \
		$(OBJDIR)Symbol.p.o \
		$(OBJDIR)HeaderUnit.p.o \
		$(OBJDIR)ExpressionUnit.p.o \
		$(OBJDIR)CGC.p.o \
		$(OBJDIR)Asm.p.o \
		$(OBJDIR)Parser.p.o \
		$(OBJDIR)CC.p.o \
		$(OBJDIR)ObjOut.p.o \
		$(OBJDIR)Native.p.o \
		$(OBJDIR)GenUnit.p.o \
		$(OBJDIR)DAG.p.o

cciigs : $(OBJECTS)
	mpw Link -p -d -c 'MPS ' -t MPST \
		$(OBJECTS) \
		$(Libraries)Stubs.o \
		$(Libraries)Runtime.o \
		$(Libraries)Interface.o \
		$(PLibraries)PasLib.o \
		$(Libraries)ToolLibs.o \
		-o cciigs

###		$(PLibraries)SANELib.o \


$(OBJDIR)%.p.o: %.p
	mpw pascal $(POptions) -o $@ $< 

clean :
	rm -f cciigs
	rm -f $(OBJECTS)



$(OBJDIR)Asm.p.o : \
    Options.p \
	CCommon.p \
	Shell.p \
	CGI.p \
	Scanner.p \
	Symbol.p \
	MM.p \
	ExpressionUnit.p \
	Asm.p

$(OBJDIR)CC.p.o :  \
    Options.p \
	CCommon.p \
	Shell.p \
	CGI.p \
	Scanner.p \
	HeaderUnit.p \
	Symbol.p \
	MM.p \
	ExpressionUnit.p \
	Parser.p \
	Asm.p \
	CC.p

$(OBJDIR)CCommon.p.o :  \
    Options.p \
	CCommon.p

$(OBJDIR)CGC.p.o :  \
    Options.p \
	CCommon.p \
	CGI.p \
	CGC.p

$(OBJDIR)CGI.p.o :  \
    Options.p \
	CCommon.p \
	Shell.p \
	CGI.p

$(OBJDIR)DAG.p.o :  \
    Options.p \
	CCommon.p \
	Shell.p \
	CGI.p \
	CGC.p \
	GenUnit.p \
	DAG.p

$(OBJDIR)ExpressionUnit.p.o :  \
    Options.p \
	CCommon.p \
	Shell.p \
	CGI.p \
	Scanner.p \
	Symbol.p \
	MM.p \
	ExpressionUnit.p

$(OBJDIR)GenUnit.p.o :  \
    Options.p \
	CCommon.p \
	Shell.p \
	CGI.p \
	CGC.p \
	ObjOut.p \
	Native.p \
	GenUnit.p

#	mpw Pascal -model farCode GenUnit.p -o $(OBJDIR)GenUnit.p.o

$(OBJDIR)HeaderUnit.p.o :  \
    Options.p \
	CCommon.p \
	Shell.p \
	MM.p \
	Scanner.p \
	Symbol.p \
	CGI.p \
	HeaderUnit.p

$(OBJDIR)MM.p.o :  \
    Options.p \
	Shell.p \
	CCommon.p \
	MM.p

$(OBJDIR)Native.p.o :  \
    Options.p \
	CCommon.p \
	Shell.p \
	CGI.p \
	CGC.p \
	ObjOut.p \
	Native.p

$(OBJDIR)ObjOut.p.o :  \
    Options.p \
	CCommon.p \
	Shell.p \
	ObjOut.p

$(OBJDIR)Parser.p.o :  \
    Options.p \
	CCommon.p \
	Shell.p \
	MM.p \
	CGI.p \
	Scanner.p \
	HeaderUnit.p \
	Symbol.p \
	ExpressionUnit.p \
	Asm.p \
	Parser.p

$(OBJDIR)Scanner.p.o :  \
    Options.p \
	CCommon.p \
	Shell.p \
	CGI.p \
	MM.p \
	Scanner.p

$(OBJDIR)Shell.p.o :  \
    Options.p \
	CCommon.p \
	Shell.p

$(OBJDIR)Symbol.p.o :  \
    Options.p \
	CCommon.p \
	Shell.p \
	CGI.p \
	MM.p \
	Scanner.p \
	Symbol.print \
	Symbol.p
