CHARMC=../../../bin/charmc -g

all: pgm

pgm:  main.o CImyClasses.o myClasses.o 
	$(CHARMC) -o pgm main.o CImyClasses.o myClasses.o -language idl

myClasses.o: myClasses.C
	$(CHARMC) -c myClasses.C

main.o: main.decl.h main.def.h main.C CImyClasses.h CImyClasses.decl.h
	$(CHARMC) -c main.C

main.decl.h main.def.h: main.ci
	$(CHARMC) main.ci

CImyClasses.o: CImyClasses.h CImyClasses.C CImyClasses.decl.h CImyClasses.def.h
	$(CHARMC) -c CImyClasses.C

CImyClasses.decl.h CImyClasses.def.h: CImyClasses.ci
	$(CHARMC) CImyClasses.ci

CImyClasses.h CImyClasses.C CImyClasses.ci: myClasses.idl
	$(CHARMC) myClasses.idl

tests: all test1

test1:
	pgm +p2 < test.1 > test.1.out
	diff test.1.out test.1.std

clean:
	-rm -f core conv-host pgm *.o *.decl.h *.def.h *.out CI*

veryclean: clean
	-rm -f *_stub.* *_skeleton.* *_messages.*
