
MAKEFILE	=	Makefile
PRODUCT		=	../../../product/

CCMDT		=	RT\
				acyc\
				clkwise\
				delstrdum\
				expand\
				extract\
				layer\
				opt\
				proper\
				reflect\
				revrev\
				rlns\
				rotate\
				tr4\
				trans\
				uclip\
				untangle\
				uscale\
				wildcat\
				wildcomp\
				wildspring\
				sklansky\
				skl2

CCMDS		=	$(CCMDT:%=$(PRODUCT)%)

COBJS		=	RT.o\
				cyc.o\
				adjac.o\
				clkwise.o\
				delstrdum.o\
				expand.o\
				extract.o\
				in_out.o\
				layer.o\
				opt.o\
				proper.o\
				reflect.o\
				revrev.o\
				rlns.o\
				rotate.o\
				switch.o\
				tr4.o\
				trans.o\
				uclip.o\
				untangle.o\
				uscale.o\
				wildcat.o\
				wildcomp.o\
				wildspring.o\
				sklansky.o\
				skl2.o

CFILES		=	RT.c\
				acyc.c\
				adjac.c\
				clkwise.c\
				delstrdum.c\
				expand.c\
				extract.c\
				in_out.c\
				layer.c\
				opt.c\
				proper.c\
				reflect.c\
				revrev.c\
				rlns.c\
				rotate.c\
				switch.c\
				tr4.c\
				trans.c\
				uclip.c\
				untangle.c\
				uscale.c\
				wildcat.c\
				wildcomp.c\
				wildspring.c\
				sklansky.c\
				skl2.c

CFLAGS		=	-Dvoid=int -I../../h -g

LIBS		=	../../lib.a

LINKLIBS	=	-ll -lm

PRINTER		=	imprint -P -n -L

all:		$(CCMDS)

$(LIBS):
		@cd ../../subroutines;	make

$(PRODUCT)acyc:	acyc.o adjac.o in_out.o $(LIBS)
		$(LINK.c) -o $@ acyc.o adjac.o in_out.o $(LIBS) $(LINKLIBS)

$(PRODUCT)delstrdum:	 delstrdum.o in_out.o $(LIBS)
		$(LINK.c) -o $@ delstrdum.o in_out.o $(LIBS) $(LINKLIBS)

$(PRODUCT)untangle:	 untangle.o in_out.o switch.o
		$(LINK.c) -o $@ untangle.o in_out.o switch.o $(LIBS) $(LINKLIBS)

$(PRODUCT)RT:			RT.c $(LIBS)
			$(LINK.c) -o $@ $(@F).c $(LIBS) $(LINKLIBS)

$(PRODUCT)clkwise:		clkwise.c $(LIBS)
			$(LINK.c) -o $@ $(@F).c $(LIBS) $(LINKLIBS)

$(PRODUCT)expand:		expand.c $(LIBS)
			$(LINK.c) -o $@ $(@F).c $(LIBS) $(LINKLIBS)

$(PRODUCT)extract:		extract.c $(LIBS)
			$(LINK.c) -o $@ $(@F).c $(LIBS) $(LINKLIBS)

$(PRODUCT)layer:		layer.c $(LIBS)
			$(LINK.c) -o $@ $(@F).c $(LIBS) $(LINKLIBS)

$(PRODUCT)opt:			opt.c $(LIBS)
			$(LINK.c) -o $@ $(@F).c $(LIBS) $(LINKLIBS)

$(PRODUCT)proper:		proper.c $(LIBS)
			$(LINK.c) -o $@ $(@F).c $(LIBS) $(LINKLIBS)

$(PRODUCT)reflect:		reflect.c $(LIBS)
			$(LINK.c) -o $@ $(@F).c $(LIBS) $(LINKLIBS)

$(PRODUCT)revrev:		revrev.c $(LIBS)
			$(LINK.c) -o $@ $(@F).c $(LIBS) $(LINKLIBS)

$(PRODUCT)rlns:			rlns.c $(LIBS)
			$(LINK.c) -o $@ $(@F).c $(LIBS) $(LINKLIBS)

$(PRODUCT)rotate:		rotate.c $(LIBS)
			$(LINK.c) -o $@ $(@F).c $(LIBS) $(LINKLIBS)

$(PRODUCT)tr4:			tr4.c $(LIBS)
			$(LINK.c) -o $@ $(@F).c $(LIBS) $(LINKLIBS)

$(PRODUCT)trans:		trans.c $(LIBS)
			$(LINK.c) -o $@ $(@F).c $(LIBS) $(LINKLIBS)

$(PRODUCT)uclip:		uclip.c $(LIBS)
			$(LINK.c) -o $@ $(@F).c $(LIBS) $(LINKLIBS)

$(PRODUCT)uscale:		uscale.c $(LIBS)
			$(LINK.c) -o $@ $(@F).c $(LIBS) $(LINKLIBS)

$(PRODUCT)wildcat:		wildcat.c $(LIBS)
			$(LINK.c) -o $@ $(@F).c $(LIBS) $(LINKLIBS)

$(PRODUCT)wildcomp:		wildcomp.c $(LIBS)
			$(LINK.c) -o $@ $(@F).c $(LIBS) $(LINKLIBS)

$(PRODUCT)wildspring:	wildspring.c $(LIBS)
			$(LINK.c) -o $@ $(@F).c $(LIBS) $(LINKLIBS)

$(PRODUCT)sklansky:		sklansky.c $(LIBS)
			$(LINK.c) -o $@ $(@F).c $(LIBS) $(LINKLIBS)

$(PRODUCT)skl2:			skl2.c $(LIBS)
			$(LINK.c) -o $@ $(@F).c $(LIBS) $(LINKLIBS)


clean:
		@echo "Removing filter C object files..."
		rm -f *.o

clobber:
		@echo "Removing filter C objects and executables..."
		rm -f *.o $(CCMDS)

print:
		@echo "Printing the filter C source..."
		$(PRINTER) $(MAKEFILE) $(CFILES)
