diff options
author | EuAndreh <eu@euandre.org> | 2025-05-15 04:32:50 -0300 |
---|---|---|
committer | EuAndreh <eu@euandre.org> | 2025-05-15 04:32:50 -0300 |
commit | 87beb9a92b61a2210523b30b2e3305efc7c6911f (patch) | |
tree | 6f3b7af0ad4897e1341b6efb5933676cddab6c87 | |
parent | Revamp i18n: use gotext (diff) | |
download | uuid-87beb9a92b61a2210523b30b2e3305efc7c6911f.tar.gz uuid-87beb9a92b61a2210523b30b2e3305efc7c6911f.tar.xz |
Makefile: Simplify variable names and use instool(1)
-rw-r--r-- | Makefile | 40 | ||||
-rw-r--r-- | deps.mk | 10 | ||||
-rwxr-xr-x | mkdeps.sh | 19 |
3 files changed, 37 insertions, 32 deletions
@@ -37,7 +37,7 @@ GOLDFLAGS = -L $(GOLIBDIR) asciidoctor -b manpage -o $@ $< .po.mo: - msgfmt -c -o $@ $< + msgfmt -cfv -o $@ $< @@ -45,15 +45,15 @@ all: include deps.mk -libs.a = $(libs.go:.go=.a) -mains.a = $(mains.go:.go=.a) -mains.bin = $(mains.go:.go=.bin) -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.adoc = $(manpages.en.N.adoc) $(manpages.xx.N.adoc) -manpages.N = $(manpages.N.adoc:.adoc=) -sources.mo = $(sources.po:.po=.mo) +libs.a = $(libs.go:.go=.a) +mains.a = $(mains.go:.go=.a) +mains.bin = $(mains.go:.go=.bin) +functional/lib.a = $(functional/lib.go:.go=.a) +fuzz/lib.a = $(fuzz/lib.go:.go=.a) +benchmarks/lib.a = $(benchmarks/lib.go:.go=.a) +manpages.N.adoc = $(manpages.en.N.adoc) $(manpages.XX.N.adoc) +manpages.N = $(manpages.N.adoc:.adoc=) +sources.mo = $(sources.po:.po=.mo) sources = \ src/$(NAME).go \ @@ -67,7 +67,7 @@ derived-assets = \ $(mains.a) \ $(mains.bin) \ $(NAME).bin \ - $(manpages.xx.N.adoc) \ + $(manpages.XX.N.adoc) \ $(manpages.N) \ $(sources.mo) \ @@ -86,7 +86,7 @@ $(libs.a): Makefile deps.mk $(libs.a): src/$(NAME).go src/meta.go -$(fuzz-targets/lib.a): +$(fuzz/lib.a): go tool compile $(GOCFLAGS) -o $@ -p $(NAME) -d=libfuzzer \ $*.go src/$(NAME).go src/meta.go @@ -99,14 +99,14 @@ src/meta.go: Makefile $(NAME).bin: src/main.bin ln -fs src/main.bin $@ -$(manpages.xx.N.adoc): po/doc/po4a.cfg +$(manpages.XX.N.adoc): po/doc/po4a.cfg po4a --no-update --translate-only $@ po/doc/po4a.cfg tests.bin-check = \ tests/main.bin-check \ - $(functional-tests/main.go:.go=.bin-check) \ + $(functional/main.go:.go=.bin-check) \ $(tests.bin-check): $(EXEC)$*.bin @@ -135,12 +135,12 @@ check: check-unit check-integration FUZZSEC=1 -fuzz-targets/main.bin-check = $(fuzz-targets/main.go:.go=.bin-check) -$(fuzz-targets/main.bin-check): +fuzz/main.bin-check = $(fuzz/main.go:.go=.bin-check) +$(fuzz/main.bin-check): $(EXEC)$*.bin --test.fuzztime=$(FUZZSEC)s \ --test.fuzz='.*' --test.fuzzcachedir=tests/fuzz/corpus -fuzz: $(fuzz-targets/main.bin-check) +fuzz: $(fuzz/main.bin-check) @@ -182,7 +182,8 @@ install: all cp $(NAME).bin '$(DESTDIR)$(BINDIR)'/$(NAME) cp src/$(NAME).a '$(DESTDIR)$(GOLIBDIR)' cp $(sources) '$(DESTDIR)$(SRCDIR)' - mandir install '$(DESTDIR)$(MANDIR)' $(manpages.N) + instool '$(DESTDIR)$(MANDIR)' install man $(manpages.N) + instool '$(DESTDIR)$(LOCALEDIR)' install mo $(sources.mo) ## Uninstalls from $(DESTDIR)$(PREFIX). This is a perfect mirror ## of the "install" target, and removes *all* that was installed. @@ -193,7 +194,8 @@ uninstall: '$(DESTDIR)$(GOLIBDIR)'/$(NAME).a \ '$(DESTDIR)$(SRCDIR)' \ - mandir uninstall '$(DESTDIR)$(MANDIR)' $(manpages.N) + instool '$(DESTDIR)$(MANDIR)' uninstall man $(manpages.N) + instool '$(DESTDIR)$(LOCALEDIR)' uninstall mo $(sources.mo) @@ -27,7 +27,7 @@ manpages.en.N.adoc = \ doc/uuid.en.7tutorial.adoc \ doc/uuid.en.7why.adoc \ -manpages.xx.N.adoc = \ +manpages.XX.N.adoc = \ doc/uuid.de.0.adoc \ doc/uuid.de.1.adoc \ doc/uuid.de.3.adoc \ @@ -81,18 +81,18 @@ sources.po = \ po/uuid/fr.po \ po/uuid/pt.po \ -functional-tests/lib.go = \ +functional/lib.go = \ tests/functional/string-round-trip/uuid.go \ -functional-tests/main.go = \ +functional/main.go = \ tests/functional/string-round-trip/main.go \ -fuzz-targets/lib.go = \ +fuzz/lib.go = \ tests/fuzz/from-string/uuid.go \ tests/fuzz/new-v4-from/uuid.go \ tests/fuzz/new-v7-from/uuid.go \ -fuzz-targets/main.go = \ +fuzz/main.go = \ tests/fuzz/from-string/main.go \ tests/fuzz/new-v4-from/main.go \ tests/fuzz/new-v7-from/main.go \ @@ -5,8 +5,10 @@ export LANG=POSIX.UTF-8 libs() { - find src tests -name '*.go' | grep -v '/main\.go$' | - grep -v '/meta\.go$' + find src tests -name '*.go' | + grep -Ev '/(main|meta)\.go$' | + grep -Ev '/_cgo_(import|gotypes)\.go$' | + grep -Ev '\.cgo1\.go$' } mains() { @@ -24,19 +26,20 @@ xdocs() { } pos() { - find po/ -name '*.po' | grep -v '^po/doc/' + find po/ -name '*.po' | grep -Ev '^po/(doc|tests)/' } + libs | varlist 'libs.go' mains | varlist 'mains.go' docs | varlist 'manpages.en.N.adoc' -xdocs | varlist 'manpages.xx.N.adoc' +xdocs | varlist 'manpages.XX.N.adoc' pos | varlist 'sources.po' -find tests/functional/*/*.go -not -name main.go | varlist 'functional-tests/lib.go' -find tests/functional/*/main.go | varlist 'functional-tests/main.go' -find tests/fuzz/*/*.go -not -name main.go | varlist 'fuzz-targets/lib.go' -find tests/fuzz/*/main.go | varlist 'fuzz-targets/main.go' +find tests/functional/*/*.go -not -name main.go | varlist 'functional/lib.go' +find tests/functional/*/main.go | varlist 'functional/main.go' +find tests/fuzz/*/*.go -not -name main.go | varlist 'fuzz/lib.go' +find tests/fuzz/*/main.go | varlist 'fuzz/main.go' find tests/benchmarks/*/*.go -not -name main.go | varlist 'benchmarks/lib.go' find tests/benchmarks/*/main.go | varlist 'benchmarks/main.go' |