all: testpre relax-restrict-fw-5.o relax-restrict-fw-5-o.o relax-restrict-fw-9-o.o relax-restrict-hw-5.o relax-restrict-hw-5-o.o relax-restrict-hw-9-o.o relax-restrict.h

include ../make.incl
include ../make.incl.general

M4 = m4

testpre.o: testpre.f
	$(F77) $(F77FLAGS) testpre.f -c

testpre: relax-restrict-fw-5.o relax-restrict-fw-5-o.o relax-restrict-fw-9-o.o relax-restrict-hw-5.o relax-restrict-hw-5-o.o relax-restrict-hw-9-o.o testpre.o cleanuc.o
	$(F77) $(F77FLAGS) relax-restrict-hw-5.o relax-restrict-hw-5-o.o relax-restrict-hw-9-o.o relax-restrict-fw-5.o relax-restrict-fw-5-o.o relax-restrict-fw-9-o.o testpre.o cleanuc.o -o testpre

cleanuc.o: cleanuc.f
	$(F77) $(F77FLAGS) cleanuc.f -c

cleanuc.f: cleanuc.f.m4 general.m4
	$(M4) $(M4F77FLAGS) cleanuc.f.m4 > cleanuc.f

testpre.f: testpre.f.m4 general.m4
	$(M4) $(M4F77FLAGS) testpre.f.m4 > testpre.f

relax-restrict-fw-5.f: relax-restrict-fw-5.f.m4 general.m4 preheader.m4 relax.m4\
		  residual.m4 restrict-ops-fw.m4\
                  pre2-incl.m4 pre3-incl.m4\
                  pre4-incl.m4
	$(M4) $(M4F77FLAGS) relax-restrict-fw-5.f.m4 > relax-restrict-fw-5.f

relax-restrict-fw-5-o.f: relax-restrict-fw-5-o.f.m4 general.m4 preheader.m4 relax.m4\
		  residual.m4 restrict-ops-fw-o.m4\
                  pre2-incl-o.m4 pre3-incl-o.m4\
                  pre4-incl-o.m4
	$(M4) $(M4F77FLAGS) relax-restrict-fw-5-o.f.m4 > relax-restrict-fw-5-o.f

relax-restrict-fw-9-o.f: relax-restrict-fw-9-o.f.m4 general.m4 preheader.m4 relax.m4\
		  residual.m4 restrict-ops-fw-o.m4\
                  pre2-incl-o.m4 pre3-incl-o.m4\
                  pre4-incl-o.m4
	$(M4) $(M4F77FLAGS) relax-restrict-fw-9-o.f.m4 > relax-restrict-fw-9-o.f

relax-restrict-hw-5.f: relax-restrict-hw-5.f.m4 general.m4 preheader.m4 relax.m4\
		  residual.m4 restrict-ops-hw.m4\
                  pre2-incl.m4 pre3-incl.m4\
                  pre4-incl.m4
	$(M4) $(M4F77FLAGS) relax-restrict-hw-5.f.m4 > relax-restrict-hw-5.f

relax-restrict-hw-5-o.f: relax-restrict-hw-5-o.f.m4 general.m4 preheader.m4 relax.m4\
		  residual.m4 restrict-ops-hw-o.m4\
                  pre2-incl-o.m4 pre3-incl-o.m4\
                  pre4-incl-o.m4
	$(M4) $(M4F77FLAGS) relax-restrict-hw-5-o.f.m4 > relax-restrict-hw-5-o.f

relax-restrict-hw-9-o.f: relax-restrict-hw-9-o.f.m4 general.m4 preheader.m4 relax.m4\
		  residual.m4 restrict-ops-hw-o.m4\
                  pre2-incl-o.m4 pre3-incl-o.m4\
                  pre4-incl-o.m4
	$(M4) $(M4F77FLAGS) relax-restrict-hw-9-o.f.m4 > relax-restrict-hw-9-o.f


relax-restrict-fw-5.o: relax-restrict-fw-5.f general.m4 relax-restrict-fw-5.f.m4 preheader.m4\
                  residual.m4 restrict-ops-fw.m4 relax.m4\
                  pre2-incl.m4 pre3-incl.m4\
                  pre4-incl.m4
	$(F77) $(F77FLAGS) -c relax-restrict-fw-5.f

relax-restrict-fw-5-o.o: relax-restrict-fw-5-o.f general.m4 relax-restrict-fw-5-o.f.m4 preheader.m4\
                  residual.m4 restrict-ops-fw-o.m4 relax.m4\
                  pre2-incl-o.m4 pre3-incl-o.m4\
                  pre4-incl-o.m4
	$(F77) $(F77FLAGS) -c relax-restrict-fw-5-o.f

relax-restrict-fw-9-o.o: relax-restrict-fw-9-o.f general.m4 relax-restrict-fw-9-o.f.m4 preheader.m4\
                  residual.m4 restrict-ops-fw-o.m4 relax.m4\
                  pre2-incl-o.m4 pre3-incl-o.m4\
                  pre4-incl-o.m4
	$(F77) $(F77FLAGS) -c relax-restrict-fw-9-o.f

relax-restrict-hw-5.o: relax-restrict-hw-5.f general.m4 relax-restrict-hw-5.f.m4 preheader.m4\
                  residual.m4 restrict-ops-hw.m4 relax.m4\
                  pre2-incl.m4 pre3-incl.m4\
                  pre4-incl.m4
	$(F77) $(F77FLAGS) -c relax-restrict-hw-5.f

relax-restrict-hw-5-o.o: relax-restrict-hw-5-o.f general.m4 relax-restrict-hw-5-o.f.m4 preheader.m4\
                  residual.m4 restrict-ops-hw-o.m4 relax.m4\
                  pre2-incl-o.m4 pre3-incl-o.m4\
                  pre4-incl-o.m4
	$(F77) $(F77FLAGS) -c relax-restrict-hw-5-o.f

relax-restrict-hw-9-o.o: relax-restrict-hw-9-o.f general.m4 relax-restrict-hw-9-o.f.m4 preheader.m4\
                  residual.m4 restrict-ops-hw-o.m4 relax.m4\
                  pre2-incl-o.m4 pre3-incl-o.m4\
                  pre4-incl-o.m4
	$(F77) $(F77FLAGS) -c relax-restrict-hw-9-o.f

relax-restrict.h: relax-restrict.h.m4
	$(M4) $(M4CCFLAGS) relax-restrict.h.m4 > relax-restrict.h

clean:
	rm -f *.o relax-restrict-hw-5.f relax-restrict-hw-5-o.f relax-restrict-hw-9-o.f relax-restrict-fw-5.f relax-restrict-fw-5-o.f relax-restrict-fw-9-o.f cleanuc.f testpre.f testpre relax-restrict.h
