include ../../make.include

CXXFLAGS = $(CXXOPT) \
	-I. -I.. -I../widget -I../vector -I../util \
	-I../../include -I$(X11INCLUDE)

SS	= \
	magnifier.C \
	magnifiertrue.C

ifeq ($(OS),unix)
SSP =	\
	magnifierpseudo.C
endif

SRC	= $(SS) $(SSP) \
	parser.C \
	lex.C

INCLS	= $(wildcard *.h)
OBJS	= $(SRC:%.C=%.o)

all	: $(OBJS) TAGS

clean	: FORCE
	rm -f core *~ *#

distclean : clean
	rm -f TAGS *.o $(LIB) parser.output

ifdef DEPENDS
TAGS	: $(SS) $(INCLS)
	etags $+
else
TAGS	: FORCE
endif

parsers	: parser

parser	: FORCE
	bison -d -p mg -o parser.C parser.Y
	flex -Pmg -olex.C lex.L

FORCE	:

ifdef DEPENDS
%.d: %.C
	set -e; $(CXX) -MM $(CXXFLAGS) $< \
	| sed 's/\($*\)\.o[ :]*/\1.o $@ : /g' > $@; \
	[ -s $@ ] || rm -f $@

include $(SRC:.C=.d)
endif
