diff options
| author | EuAndreh <eu@euandre.org> | 2025-05-12 07:36:15 -0300 |
|---|---|---|
| committer | EuAndreh <eu@euandre.org> | 2025-05-12 10:31:18 -0300 |
| commit | 80ae5eff35d4fe48953cb5e61f929f765ab7cd0f (patch) | |
| tree | 8037182f336a421de927138f5c562015023c38fe /Makefile | |
| parent | mv po/* po/doc/ (diff) | |
| download | gotext-80ae5eff35d4fe48953cb5e61f929f765ab7cd0f.tar.gz gotext-80ae5eff35d4fe48953cb5e61f929f765ab7cd0f.tar.xz | |
Absorb gettext_test.go
Diffstat (limited to 'Makefile')
| -rw-r--r-- | Makefile | 41 |
1 files changed, 31 insertions, 10 deletions
@@ -24,7 +24,7 @@ GOLDFLAGS = -L $(GOLIBDIR) .SUFFIXES: -.SUFFIXES: .go .a .c .o .bin .bin-check .adoc +.SUFFIXES: .go .a .c .o .bin .bin-check .adoc .po .mo .c.o: $(CC) $(CFLAGS) -o $@ -c $< @@ -32,7 +32,7 @@ GOLDFLAGS = -L $(GOLIBDIR) .go.a: go tool compile -I $(@D) $(GOCFLAGS) -o $@ -p $(*F) \ `find $< $$(if [ $(*F) != main ]; then \ - echo src/$(NAME).go src/version.go; fi) | uniq` + echo src/$(NAME).go src/meta.go; fi) | uniq` .a.bin: go tool link -L $(@D) $(GOLDFLAGS) -o $@ --extldflags '$(LDLIBS)' $< @@ -40,6 +40,9 @@ GOLDFLAGS = -L $(GOLIBDIR) .adoc: asciidoctor -b manpage -o $@ $< +.po.mo: + msgfmt -cfv -o $@ $< + all: @@ -53,6 +56,7 @@ functional-tests/lib.a = $(functional-tests/lib.go:.go=.a) fuzz-targets/lib.a = $(fuzz-targets/lib.go:.go=.a) benchmarks/lib.a = $(benchmarks/lib.go:.go=.a) manpages.N = $(manpages.N.adoc:.adoc=) +sources.mo = $(sources.po:.po=.mo) cgo.go = \ src/_cgo_import.go \ @@ -73,24 +77,27 @@ objects = \ sources = \ src/$(NAME).go \ - src/version.go \ + src/meta.go \ src/main.go \ derived-assets = \ - src/version.go \ + src/meta.go \ $(objects) \ $(libs.a) \ $(mains.a) \ $(mains.bin) \ $(NAME).bin \ $(manpages.N) \ + $(sources.mo) \ + locale/.gitignore \ side-assets = \ src/_cgo_export.h \ src/_cgo_main.c \ tests/fuzz/corpus/ \ tests/benchmarks/*/main.txt \ + locale/ \ @@ -101,7 +108,7 @@ all: $(derived-assets) $(objects): Makefile deps.mk $(libs.a): Makefile deps.mk -$(libs.a): src/$(NAME).go src/version.go +$(libs.a): src/$(NAME).go src/meta.go $(libs.a): $(cgo.go) $(cgo.o) $(cgo.go) $(cgo.c) $(cgo.o): src/_cgo_.o @@ -114,27 +121,35 @@ src/_cgo_import.go: src/_cgo_.o go tool cgo --dynpackage $(NAME) --dynimport src/_cgo_.o --dynout $@ src/$(NAME).a tests/$(NAME).a $(functional-tests/lib.a) $(benchmarks/lib.a): - go tool compile $(GOCFLAGS) -o $@ -p $(*F) $(cgo.go) src/version.go \ + go tool compile $(GOCFLAGS) -o $@ -p $(*F) $(cgo.go) src/meta.go \ `find $*.go | grep -Ev '^src/$(NAME)\.go$$'` go tool pack r $@ $(cgo.o) $(fuzz-targets/lib.a): go tool compile $(GOCFLAGS) -o $@ -p $(NAME) -d=libfuzzer \ - $*.go $(cgo.go) src/version.go + $*.go $(cgo.go) src/meta.go go tool pack r $@ $(cgo.o) -src/version.go: Makefile - echo 'package $(NAME); const Version = "$(VERSION)"' > $@ +src/meta.go: Makefile + echo 'package $(NAME)' > $@ + echo 'const Version = "$(VERSION)"' >> $@ + echo 'const Name = "$(NAME)"' >> $@ + echo 'const LOCALEDIR = "$(LOCALEDIR)"' >> $@ $(NAME).bin: src/main.bin ln -fs src/main.bin $@ +locale/.gitignore: po/tests/de.mo po/tests/es.mo + instool $(@D) install mo $(sources.mo) + echo '*' > $@ + tests.bin-check = \ tests/main.bin-check \ $(functional-tests/main.go:.go=.bin-check) \ +tests/functional/api-usage/bin-check: locale/dir.sentinel $(tests.bin-check): $(EXEC)$*.bin @@ -181,9 +196,15 @@ bench: $(benchmarks/main.bin-check) -i18n: +i18n-doc: po4a po/doc/po4a.cfg +i18n-tests: + gotext tests/functional/api-usage/gotext.go > po/tests/tests.pot + po4a po/tests/po4a.cfg + +i18n: i18n-doc i18n-tests + ## Remove *all* derived artifacts produced during the build. |
