X-Git-Url: https://git.dlugolecki.net.pl/?a=blobdiff_plain;f=Makefile;h=db56b46f1881f83f01b80b212b1b60c0943b38a2;hb=c926d497966535067288bb5d9707ed16e7f69570;hp=125b82e0b281410b448c600f6205c72dd60d8cd6;hpb=845f7ac49d5e63b96aca7a4cd1f60ac5e3230033;p=gedcom-parse.git diff --git a/Makefile b/Makefile index 125b82e..db56b46 100644 --- a/Makefile +++ b/Makefile @@ -8,53 +8,70 @@ CFLAGS=-g -W -Wall -pedantic YFLAGS=--debug --defines LFLAGS=-8 +all: ansel_module gedcom_parse + gedcom_parse: standalone.o lex.gedcom_1byte_.o lex.gedcom_hilo_.o \ lex.gedcom_lohi_.o gedcom.tab.o message.o multilex.o \ encoding.o $(CC) $(LDFLAGS) $^ $(LOADLIBES) $(LDLIBS) -o $@ -libgedcom.so: +ansel_module: + cd ansel && $(MAKE) -lex.gedcom_1byte_.c: gedcom_1byte.lex gedcom.tab.h gedcom.h multilex.h +lex.gedcom_1byte_.c: gedcom_1byte.lex gedcom.tab.h gedcom.h multilex.h \ + gedcom_lex_common.c encoding.h $(LEX) $(LFLAGS) -Pgedcom_1byte_ gedcom_1byte.lex -lex.gedcom_hilo_.c: gedcom_hilo.lex gedcom.tab.h gedcom.h multilex.h +lex.gedcom_hilo_.c: gedcom_hilo.lex gedcom.tab.h gedcom.h multilex.h \ + gedcom_lex_common.c encoding.h $(LEX) $(LFLAGS) -Pgedcom_hilo_ gedcom_hilo.lex -lex.gedcom_lohi_.c: gedcom_lohi.lex gedcom.tab.h gedcom.h multilex.h +lex.gedcom_lohi_.c: gedcom_lohi.lex gedcom.tab.h gedcom.h multilex.h \ + gedcom_lex_common.c encoding.h $(LEX) $(LFLAGS) -Pgedcom_lohi_ gedcom_lohi.lex gedcom.tab.c gedcom.tab.h: gedcom.y gedcom.h $(YACC) $(YFLAGS) --name-prefix=gedcom_ gedcom.y clean: - rm -f core gedcom_parse test_* *.o lex.gedcom_* \ + rm -f core gedcom_parse lexer_* *.o lex.gedcom_* \ gedcom.tab.* gedcom.output + cd ansel && $(MAKE) clean # Lexer test programs -test_1byte: lex.gedcom_1byte_.test.o message.o encoding.o +lexer_1byte: lex.gedcom_1byte_.test.o message.o encoding.o $(CC) $(LDFLAGS) $^ $(LOADLIBES) $(LDLIBS) -o $@ lex.gedcom_1byte_.test.o: lex.gedcom_1byte_.c $(CC) -DLEXER_TEST -c $(CPPFLAGS) $(CFLAGS) $^ -o $@ -test_hilo: lex.gedcom_hilo_.test.o message.o encoding.o +test_1byte: lexer_1byte + cat t/allged.ged | ./lexer_1byte + +lexer_hilo: lex.gedcom_hilo_.test.o message.o encoding.o $(CC) $(LDFLAGS) $^ $(LOADLIBES) $(LDLIBS) -o $@ lex.gedcom_hilo_.test.o: lex.gedcom_hilo_.c $(CC) -DLEXER_TEST -c $(CPPFLAGS) $(CFLAGS) $^ -o $@ -test_lohi: lex.gedcom_lohi_.test.o message.o encoding.o +test_hilo: lexer_hilo + cat t/uhlcl.ged | ./lexer_hilo + +lexer_lohi: lex.gedcom_lohi_.test.o message.o encoding.o $(CC) $(LDFLAGS) $^ $(LOADLIBES) $(LDLIBS) -o $@ lex.gedcom_lohi_.test.o: lex.gedcom_lohi_.c $(CC) -DLEXER_TEST -c $(CPPFLAGS) $(CFLAGS) $^ -o $@ +test_lohi: lexer_lohi + cat t/ulhcl.ged | ./lexer_lohi + # Test of parser -test: gedcom_parse - @for file in t/*.ged; do \ +test: all + @export GCONV_PATH=./ansel; \ + for file in t/*.ged; do \ echo "=== testing $$file"; \ ./gedcom_parse $$file; \ done