diff options
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 73 |
1 files changed, 48 insertions, 25 deletions
@@ -65,29 +65,44 @@ existing = \ src/urubu/tester \ xtests = \ - tests/unit/compressor \ - tests/unit/grammar/symbol \ - tests/unit/spec/test \ - tests/unit/utf8 \ - tests/unit/spec/grammar/parser \ - tests/unit/grammar \ - tests/unit/tester \ - tests/unit/grammar/lexical/dfa \ - tests/unit/grammar/lexical/parser \ - tests/unit/grammar/lexical \ - tests/unit/driver/lexer \ - tests/unit/driver/parser \ + tests/unit/compressor/compressor.go \ + tests/unit/grammar/symbol/symbol.go \ + tests/unit/spec/test/test.go \ + tests/unit/utf8/utf8.go \ + tests/unit/spec/grammar/parser/parser.go \ + tests/unit/grammar/grammar.go \ + tests/unit/tester/tester.go \ + tests/unit/grammar/lexical/dfa/dfa.go \ + tests/unit/grammar/lexical/parser/parser.go \ + tests/unit/grammar/lexical/lexical.go \ + tests/unit/driver/lexer/lexer.go \ + tests/unit/driver/parser/parser.go \ xmains = \ src/urubu/cmd/ucdgen \ src/urubu/cmd/vartan \ src/urubu/cmd/vartan-go \ -existing.a = $(existing:=.a) -xmains.a = $(xmains:=.a) -xtests.a = $(xtests:=.a) -xmains.bin = $(xmains:=.bin) -_xtests.bin = $(xtests:=.bin) +xtmains = \ + tests/unit/compressor/main.go \ + tests/unit/grammar/symbol/main.go \ + tests/unit/spec/test/main.go \ + tests/unit/tester/main.go \ + tests/unit/utf8/main.go \ + tests/unit/spec/grammar/parser/main.go \ + tests/unit/grammar/main.go \ + tests/unit/grammar/lexical/dfa/main.go \ + tests/unit/grammar/lexical/parser/main.go \ + tests/unit/grammar/lexical/main.go \ + tests/unit/driver/lexer/main.go \ + tests/unit/driver/parser/main.go \ + +existing.a = $(existing:=.a) +xmains.a = $(xmains:=.a) +xmains.bin = $(xmains:=.bin) +xtests.a = $(xtests:.go=.a) +xtmains.a = $(xtmains:.go=.a) +xtmains.bin = $(xtmains:.go=.bin) sources = \ @@ -97,16 +112,17 @@ sources = \ derived-assets = \ + $(xtests.a) \ + $(xtmains.a) \ + $(xtmains.bin) \ + $(existing.a) \ + $(xmains.a) \ + $(xmains.bin) \ src/version.go \ $(libs.a) \ $(mains.a) \ $(mains.bin) \ $(NAME).bin \ - $(existing.a) \ - $(xmains.a) \ - $(xmains.bin) \ - $(xtests.a) \ - $(xtest.bin) \ side-assets = \ tests/fuzz/corpus/ \ @@ -128,15 +144,21 @@ $(existing.a): go tool compile -I src -o $@ -p `echo $* | sed 's,^src/,,'` $*.go $(xtests.a): - p="`echo $* | sed 's,^tests/unit/,urubu/,'`"; \ - go tool compile -I src -o $@ -p $$p src/$$p.go $*.go + p="`echo $(*D) | sed 's,^tests/unit/,,'`"; \ + go tool compile -I src -o $@ -p $(*F) src/urubu/$$p.go $*.go $(xmains.a): go tool compile -I src -o $@ -p main $*/*.go -$(xmains.bin) $(xtests.bin): +$(xmains.bin): go tool link -L src -o $@ --extldflags '$(LDLIBS)' $*.a +$(xtmains.a): + go tool compile -I $(@D) -o $@ -p main $*.go + +$(xtmains.bin): + go tool link -L $(@D) -L src -o $@ --extldflags '$(LDLIBS)' $*.a + $(fuzz-targets/lib.a): go tool compile $(GOCFLAGS) -o $@ -p $(NAME) -d=libfuzzer \ $*.go src/$(NAME).go src/version.go @@ -152,6 +174,7 @@ $(NAME).bin: src/main.bin tests.bin-check = \ tests/main.bin-check \ $(functional-tests/main.go:.go=.bin-check) \ + $(xtmains:.go=.bin-check) \ $(tests.bin-check): $(EXEC)$*.bin |