diff options
author | 2024-11-15 17:26:17 +0600 | |
---|---|---|
committer | 2024-11-15 17:27:34 +0600 | |
commit | d8fe6ba3c6eff80a87335ece23c6111d4996c23c (patch) | |
tree | 5a576ec762a1e9baf608a82685cabb828d85aeb1 | |
parent | 5a02f27098f62f4bfac015c2ed4023715a7d1c33 (diff) | |
download | log-parser-d8fe6ba3c6eff80a87335ece23c6111d4996c23c.tar.gz log-parser-d8fe6ba3c6eff80a87335ece23c6111d4996c23c.zip |
Generate docs on build
Signed-off-by: Mubashshir <ahmubashshir@gmail.com>
-rw-r--r-- | Makefile | 38 |
1 files changed, 29 insertions, 9 deletions
@@ -9,28 +9,29 @@ ifneq ($(shell eval 'echo -e'),-e) endif -<<sources>> := src/system.l src/system.proto src/system.yy <<objects>> := obj/system.lex.o obj/system.tab.o obj/system.pb.o -all: $(BINARY) -%.lex.cc: %.l +all: $(BINARY) doc + +%.lex.cc: %.flex $(<<) " LEX\t" $(<:src/%=%) @flex -+ -o $(@) $(<) %.tab.cc: %.yy $(<<) "BISON\t" $(<:src/%=%) $(@:src/%=%) - @bison -o $(@) $(<) + @bison -r -o $(@) $(<) %.tab.hh: %.yy $(<<) "BISON\t" $(<:src/%=%) $(@:src/%=%) @bison -o /dev/null --header=$(@) $(<) + %.pb.cc %.pb.h: %.proto $(<<) "PROTOC" $(<) @protoc --cpp_out=. $(<) -src/system.lex.cc: src/system.tab.hh src/system.tab.cc +src/system.lex.cc: src/system.tab.hh src/system.tab.cc: src/system.pb.h obj/%.o: src/%.cc @@ -38,14 +39,33 @@ obj/%.o: src/%.cc @mkdir -p $(shell dirname $(@)) @$(CXX) -c $(<) -o $(@) $(CXXFLAGS) +doc/%.tab.gv: src/%.yy + $(<<) "BISON\t" $(<:src/%=%) $(@:doc/%=%) + @mkdir -p $(shell dirname $(@)) + @bison -o $(<:src/%.yy=.%.gv.tab) --graph=$(@) $(<) + @$(RM) $(<:src/%.yy=.%.gv.tab) + +doc/%.tab.html: src/%.yy + $(<<) "BISON\t" $(<:src/%=%) $(@:doc/%=%) + @mkdir -p $(shell dirname $(@)) + @bison -o $(<:src/%.yy=.%.html.tab) --html=$(@) $(<) + @$(RM) $(<:src/%.yy=.%.html.tab) $(<:src/%.yy=.%.html.xml) + +doc/%.tab.xml: src/%.yy + $(<<) "BISON\t" $(<:src/%=%) $(@:doc/%=%) + @mkdir -p $(shell dirname $(@)) + @bison -o $(<:src/%.yy=.%.xml.tab) --xml=$(@) $(<) + @$(RM) $(<:src/%.yy=.%.xml.tab) $(BINARY): $(<<objects>>) $(<<) "LINK\t" $(^:obj/%=%) @$(CXX) $(^) -o $(@) $(LDFLAGS) clean: - $(<<) " RM\t" $(<<objects>>:obj/%=%) $(BINARY) - @$(RM) -f $(<<objects>>) $(BINARY) + $(<<) " RM\t" obj doc + @$(RM) -vf obj doc + +doc: doc/system.tab.gv doc/system.tab.html doc/system.tab.xml -.PHONY: all clean install uninstall test -#.INTERMEDIATE: src/system.lex.cc src/system.pb.h src/system.tab.cc src/system.tab.hh +.PHONY: all clean install uninstall test doc +.INTERMEDIATE: src/system.lex.cc src/system.pb.h src/system.tab.cc src/system.tab.hh |