CFLAGS = -I../../../include -O3 $(EXTRACFLAGS)
CYCFLAGS = $(CFLAGS)
CYCC = cyclone
LEX=flex -Sflexcyc.skl
YACC=cycbison --defines

OBJ		=	lexpol.o translate_tab.o MPolAdd.o MPolIn.o \
			MPolOut.o MPolFree.o MPolCopy.o

NC_OBJ		=	$(addprefix nc_,$(OBJ))

lib: $(OBJ)
	ar cruv ../../../lib/libmultpol-sun.a $(OBJ)

nocheck: $(NC_OBJ)
	ar cruv ../../../lib/libmultpol-sun-nc.a $(NC_OBJ)

lexpol.cyc: lexpol.l translate_tab.h
	$(LEX) -olexpol.tmp lexpol.l
	sed "s/char *\*/char ?/" lexpol.tmp > lexpol.cyc
	rm lexpol.tmp

translate_tab.cyc translate_tab.h: translate.y
	$(YACC) $<

%.o: %.cyc
	${CYCC} ${CYCFLAGS} ${INCSTR} -o $@ -c $*.cyc

nc_%.o: %.cyc
	${CYCC} ${CYCFLAGS} --nochecks ${INCSTR} -o $@ -c $*.cyc

MPolAdd.o: MPolAdd.cyc
MPolIn.o: MPolIn.cyc
MPolOut.o: MPolOut.cyc
MPolFree.o: MPolFree.cyc
MPolMult.o: MPolMult.cyc
MPolUnit.o: MPolUnit.cyc
MPolCopy.o: MPolCopy.cyc
MPolSub.o: MPolSub.cyc
MPolEqual.o: MPolEqual.cyc

