36 lines
865 B
Makefile
36 lines
865 B
Makefile
# Makefile - hhl - /usr/src/world/usr.bin/awk
|
|
# Copyright 2020 Nathan Fisher <nfisher.sr@gmail.com>
|
|
#
|
|
progname = awk
|
|
cflags += -pedantic -Wcast-qual
|
|
bld_cflags = -pedantic -Wcast-qual -O2
|
|
libs += -lm
|
|
objs += $(objdir)/awkgram.tab.o
|
|
objs += $(objdir)/proctab.o
|
|
tabs = src/awkgram.tab.c src/awkgram.tab.h
|
|
include hhl.cprog.mk
|
|
|
|
$(tabs) &: awkgram.y
|
|
$(info $(grn)=== Preparing sources for awk ===$(reset))
|
|
cd src && bison -d ../$<
|
|
|
|
src/proctab.c: src/awkgram.tab.h ${objdir}/maketab
|
|
${objdir}/maketab src/awkgram.tab.h > $@
|
|
|
|
$(objdir)/maketab: maketab/maketab.c src/awkgram.tab.h
|
|
$(BLD_CC) $(bld_cflags) -I./src -o $@ maketab/maketab.c
|
|
|
|
$(objdir)/lex.o: src/awkgram.tab.h
|
|
|
|
$(objdir)/parse.o: src/awkgram.tab.h
|
|
|
|
$(objdir)/b.o: src/awkgram.tab.h
|
|
|
|
$(objdir)/run.o: src/awkgram.tab.h
|
|
|
|
|
|
clean: proper
|
|
|
|
proper:
|
|
rm -rf ${tabs} src/proctab.c
|