diff options
Diffstat (limited to 'src/tools/c/examples/bronzeage/Makefile')
| -rw-r--r-- | src/tools/c/examples/bronzeage/Makefile | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/src/tools/c/examples/bronzeage/Makefile b/src/tools/c/examples/bronzeage/Makefile new file mode 100644 index 000000000..67367920a --- /dev/null +++ b/src/tools/c/examples/bronzeage/Makefile @@ -0,0 +1,47 @@ + +GFDIR=../../../../../ + +LIBGFCC_INCLUDES = $(GFDIR)/lib/c +LIBGFCC_LIBDIR = $(GFDIR)/lib/c + +GFCC2C = $(GFDIR)/bin/gfcc2c + +TEST_PROG = bronzeage-test + +GRAMMAR_DIR = $(GFDIR)/examples/bronzeage + +GRAMMAR_MODULES = Bronzeage BronzeageEng BronzeageSwe + +GRAMMAR_H_FILES = $(addsuffix .h, $(GRAMMAR_MODULES)) +GRAMMAR_C_FILES = $(addsuffix .c, $(GRAMMAR_MODULES)) +GRAMMAR_O_FILES = $(addsuffix .o, $(GRAMMAR_MODULES)) + +CFLAGS += -O2 +CPPFLAGS += -I$(LIBGFCC_INCLUDES) + +.PHONY: clean + +all: bronzeage.gfcc $(TEST_PROG) + +$(TEST_PROG): $(GRAMMAR_O_FILES) $(TEST_PROG).o $(LIBGFCC_LIBDIR)/libgfcc.a + +$(TEST_PROG).o: $(GRAMMAR_H_FILES) $(GRAMMAR_O_FILES) $(TEST_PROG).c + +$(GRAMMAR_H_FILES) $(GRAMMAR_C_FILES): $(GFCC2C) bronzeage.gfcc + $(GFCC2C) bronzeage.gfcc + +bronzeage.gfcc: + echo "i -optimize=all $(GRAMMAR_DIR)/BronzeageEng.gf" > mkBronzeage.gfs + echo "i -optimize=all $(GRAMMAR_DIR)/BronzeageSwe.gf" >> mkBronzeage.gfs + echo "s" >> mkBronzeage.gfs + echo "pm -printer=gfcc | wf bronzeage.gfcc" >> mkBronzeage.gfs + cat mkBronzeage.gfs | gf + rm -f mkBronzeage.gfs + +clean: + -rm -f $(TEST_PROG) *.o + + +distclean: clean + -rm -f $(GRAMMAR_H_FILES) $(GRAMMAR_C_FILES) + -rm -f bronzeage.gfcc |
