
FAB_BINDIR = $(HOME)/bin
FAB_MANDIR = $(HOME)/man
#FAB_BINDIR = /usr/local/bin
#FAB_MANDIR = /usr/local/man

LEX = flex -l
YACC = bison -y -d
CC = objc
CFLAGS = -q -O

OFILES = fab.obj grammar.obj token.obj\
Fabricator.obj Fabobject.obj Fablist.obj\
Fabstring.obj Prettystring.obj Copyright.obj\
Source.obj Header.obj All.obj Unit.obj\
Include.obj Definition.obj Fabclass.obj\
Methodsummary.obj Methodtype.obj Method.obj\
Methodatom.obj Example.obj Doc.obj\
Subtitle.obj Note.obj Seealso.obj Dotlist.obj Test.obj\
Textlink.obj Textanchor.obj\
html.obj nroff.obj ascii.obj rtf.obj

.SUFFIXES: .m .ym .lm

.m.obj:
	$(CC) -c $(CFLAGS) $*.m -o $*.obj

.ym.obj:
	$(YACC) $*.ym
	mv y_tab.c $*.m
	$(CC) -c $(CFLAGS) $*.m -o $*.obj
	rm $*.m

.lm.obj:
	$(LEX) $*.lm
	mv lexyy.c $*.m
	$(CC) -c $(CFLAGS) $*.m -o $*.obj
	rm $*.m

fab : $(OFILES)
	$(CC) $(CFLAGS) $(OFILES) -o fab.exe

install : fab
	strip fab
	cp fab $(FAB_BINDIR)
	cp fab.1 $(FAB_MANDIR)/man1/fab.1

clean ::
	rm -f *.c *.P
	rm -f fab grammar.m token.m y.tab.h $(OFILES)

