61 lines
1.7 KiB
Plaintext
61 lines
1.7 KiB
Plaintext
|
# $Header$
|
||
|
|
||
|
#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
|