ack/util/topgen/proto.make
1994-06-24 11:31:16 +00:00

61 lines
1.7 KiB
Makefile

# $Id$
#PARAMS do not remove this line!
SRC_DIR = $(SRC_HOME)/util/topgen
INCLUDES = -I$(SRC_DIR) -I.
CFLAGS = $(COPTIONS) $(INCLUDES)
LDFLAGS = $(LDOPTIONS)
LINTFLAGS = $(LINTOPTIONS) $(INCLUDES)
SOURCE = $(SRC_DIR)/token.h $(SRC_DIR)/symtab.h $(SRC_DIR)/misc.h \
$(SRC_DIR)/tunable.h $(SRC_DIR)/main.c $(SRC_DIR)/topgen.g \
$(SRC_DIR)/LLlex.c $(SRC_DIR)/symtab.c $(SRC_DIR)/pattern.c \
$(SRC_DIR)/hash.c
CFILES = $(SRC_DIR)/main.c topgen.c Lpars.c $(SRC_DIR)/LLlex.c \
$(SRC_DIR)/symtab.c $(SRC_DIR)/pattern.c $(SRC_DIR)/hash.c
OFILES = main.$(SUF) topgen.$(SUF) Lpars.$(SUF) LLlex.$(SUF) \
symtab.$(SUF) pattern.$(SUF) hash.$(SUF)
all: parser
@make topgen
cmp: all
cmp topgen $(TARGET_HOME)/lib.bin/topgen
install: all
cp topgen $(TARGET_HOME)/lib.bin/topgen
clean:
rm -f topgen *.$(SUF) Lpars.c Lpars.h topgen.c parser
parser: $(SRC_DIR)/topgen.g
$(UTIL_HOME)/bin/LLgen $(SRC_DIR)/topgen.g
touch parser
topgen.$(SUF): $(SRC_DIR)/token.h Lpars.h $(SRC_DIR)/symtab.h $(SRC_DIR)/misc.h topgen.c
$(CC) -c $(CFLAGS) topgen.c
Lpars.$(SUF): Lpars.h Lpars.c
$(CC) -c $(CFLAGS) Lpars.c
LLlex.$(SUF): $(SRC_DIR)/token.h Lpars.h $(SRC_DIR)/tunable.h $(SRC_DIR)/LLlex.c
$(CC) -c $(CFLAGS) $(SRC_DIR)/LLlex.c
symtab.$(SUF): $(SRC_DIR)/symtab.h $(SRC_DIR)/symtab.c
$(CC) -c $(CFLAGS) $(SRC_DIR)/symtab.c
hash.$(SUF): $(SRC_DIR)/misc.h $(SRC_DIR)/hash.c
$(CC) -c $(CFLAGS) $(SRC_DIR)/hash.c
pattern.$(SUF): $(SRC_DIR)/misc.h $(SRC_DIR)/symtab.h $(SRC_DIR)/pattern.c
$(CC) -c $(CFLAGS) $(SRC_DIR)/pattern.c
main.$(SUF): $(SRC_DIR)/main.c
$(CC) -c $(CFLAGS) $(SRC_DIR)/main.c
topgen: $(OFILES)
$(CC) $(LDFLAGS) $(OFILES) -o topgen
lint: parser
$(LINT) $(LINTFLAGS) $(CFILES)
pr:
@pr $(SOURCE) $(SRC_DIR)/proto.make
opr:
make pr ^ opr