diff --git a/Makefile b/Makefile index 7756c56..9ecbedb 100644 --- a/Makefile +++ b/Makefile @@ -29,12 +29,12 @@ RUSTLIBS = --extern getopt=build/o/libgetopt.rlib \ CFLAGS += -I$(SYSEXITS) .PHONY: all -all: dj false fop hru intcmp mm npc rpn scrut str strcmp swab true +all: docs dj false fop hru intcmp mm npc rpn scrut str strcmp swab true # keep build/include until bindgen(1) has stdin support # https://github.com/rust-lang/rust-bindgen/issues/2703 build: - mkdir -p build/bin build/include build/lib build/o build/test + mkdir -p build/bin build/docs build/include build/lib build/o build/test .PHONY: clean clean: @@ -43,7 +43,7 @@ clean: dist: all mkdir -p $(DESTDIR)/$(PREFIX)/bin $(DESTDIR)/$(PREFIX)/share/man/man1 cp build/bin/* $(DESTDIR)/$(PREFIX)/bin - cp docs/*.1 $(DESTDIR)/$(PREFIX)/$(MANDIR)/man1 + cp build/docs/*.1 $(DESTDIR)/$(PREFIX)/$(MANDIR)/man1 .PHONY: install install: dist @@ -54,6 +54,13 @@ test: build tests/posix-compat.sh $(RUSTC) --test src/getopt-rs/lib.rs -o build/test/getopt +.PHONY: docs +docs: docs/ build + for file in docs/*; do original="$$(sed -n '/^\.TH/p' <"$$file")"; \ + title="$$(printf '%s\n' "$$original" | sed \ + "s/X\.X\.X/$$(git describe --tags --long | cut -d'-' -f1)/g")"; \ + sed "s/$$original/$$title/g" <"$$file" >"build/$$file"; done + .PHONY: rustlibs rustlibs: build/o/libsysexits.rlib build/o/libgetopt.rlib \ build/o/libstrerror.rlib diff --git a/docs/dj.1 b/docs/dj.1 index 5cf2368..7031ccf 100644 --- a/docs/dj.1 +++ b/docs/dj.1 @@ -4,7 +4,7 @@ .\" This work is licensed under CC BY-SA 4.0. To see a copy of this license, .\" visit . .\" -.TH DJ 1 2024-06-17 "Harakit 0.13.11" +.TH DJ 1 2024-06-17 "Harakit X.X.X" .SH NAME dj \(en disk jockey .\" diff --git a/docs/false.1 b/docs/false.1 index 1d6691b..b940909 100644 --- a/docs/false.1 +++ b/docs/false.1 @@ -4,7 +4,7 @@ .\" This work is licensed under CC BY-SA 4.0. To see a copy of this license, .\" visit . .\" -.TH FALSE 1 2024-06-06 "Harakit 0.13.11" +.TH FALSE 1 2024-06-06 "Harakit X.X.X" .SH NAME false \(en do nothing, unsuccessfully .\" diff --git a/docs/fop.1 b/docs/fop.1 index 2d54720..d777c68 100644 --- a/docs/fop.1 +++ b/docs/fop.1 @@ -4,7 +4,7 @@ .\" This work is licensed under CC BY-SA 4.0. To see a copy of this license, .\" visit . .\" -.TH FOP 1 2024-06-17 "Harakit 0.13.11" +.TH FOP 1 2024-06-17 "Harakit X.X.X" .SH NAME fop \(en field operator .\" diff --git a/docs/hru.1 b/docs/hru.1 index eb0ce5e..6929d51 100644 --- a/docs/hru.1 +++ b/docs/hru.1 @@ -3,7 +3,7 @@ .\" This work is licensed under CC BY-SA 4.0. To see a copy of this license, .\" visit . .\" -.TH HRU 1 2024-06-17 "Harakit 0.13.11" +.TH HRU 1 2024-06-17 "Harakit X.X.X" .SH NAME hru \(en human readable units .\" diff --git a/docs/intcmp.1 b/docs/intcmp.1 index 19c2c75..034a4fd 100644 --- a/docs/intcmp.1 +++ b/docs/intcmp.1 @@ -4,7 +4,7 @@ .\" This work is licensed under CC BY-SA 4.0. To see a copy of this license, .\" visit . .\" -.TH INTCMP 1 2024-06-06 "Harakit 0.13.11" +.TH INTCMP 1 2024-06-06 "Harakit X.X.X" .SH NAME intcmp \(en compare integers .\" diff --git a/docs/mm.1 b/docs/mm.1 index 0f1b97b..2ff9f44 100644 --- a/docs/mm.1 +++ b/docs/mm.1 @@ -3,7 +3,7 @@ .\" This work is licensed under CC BY-SA 4.0. To see a copy of this license, .\" visit . .\" -.TH MM 1 2024-06-17 "Harakit 0.13.11" +.TH MM 1 2024-06-17 "Harakit X.X.X" .SH NAME mm \(en middleman .\" diff --git a/docs/npc.1 b/docs/npc.1 index 03890fb..3e7af39 100644 --- a/docs/npc.1 +++ b/docs/npc.1 @@ -4,7 +4,7 @@ .\" This work is licensed under CC BY-SA 4.0. To see a copy of this license, .\" visit . .\" -.TH NPC 1 2024-06-17 "Harakit 0.13.11" +.TH NPC 1 2024-06-17 "Harakit X.X.X" .SH NAME npc \(en show non-printing characters .\" diff --git a/docs/rpn.1 b/docs/rpn.1 index f937889..8c8cd84 100644 --- a/docs/rpn.1 +++ b/docs/rpn.1 @@ -4,7 +4,7 @@ .\" This work is licensed under CC BY-SA 4.0. To see a copy of this license, .\" visit . .\" -.TH RPN 1 2024-06-17 "Harakit 0.13.11" +.TH RPN 1 2024-06-17 "Harakit X.X.X" .SH NAME rpn \(en reverse polish notation evaluation .\" diff --git a/docs/scrut.1 b/docs/scrut.1 index 541dcf2..56383b8 100644 --- a/docs/scrut.1 +++ b/docs/scrut.1 @@ -4,7 +4,7 @@ .\" This work is licensed under CC BY-SA 4.0. To see a copy of this license, .\" visit . .\" -.TH SCRUT 1 2024-06-06 "Harakit 0.13.11" +.TH SCRUT 1 2024-06-06 "Harakit X.X.X" .SH NAME scrut \(en scrutinize file properties .SH SYNOPSIS diff --git a/docs/str.1 b/docs/str.1 index c4d68cc..22ffea1 100644 --- a/docs/str.1 +++ b/docs/str.1 @@ -4,7 +4,7 @@ .\" This work is licensed under CC BY-SA 4.0. To see a copy of this license, .\" visit . .\" -.TH STR 1 2024-06-17 "Harakit 0.13.11" +.TH STR 1 2024-06-17 "Harakit X.X.X" .SH NAME str \(en test string arguments .\" diff --git a/docs/strcmp.1 b/docs/strcmp.1 index 781fc92..0ad21b2 100644 --- a/docs/strcmp.1 +++ b/docs/strcmp.1 @@ -4,7 +4,7 @@ .\" This work is licensed under CC BY-SA 4.0. To see a copy of this license, .\" visit . .\" -.TH STRCMP 1 2024-06-17 "Harakit 0.13.11" +.TH STRCMP 1 2024-06-17 "Harakit X.X.X" .SH NAME strcmp \(en compare strings .\" diff --git a/docs/swab.1 b/docs/swab.1 index 708a59b..72f0f19 100644 --- a/docs/swab.1 +++ b/docs/swab.1 @@ -4,7 +4,7 @@ .\" This work is licensed under CC BY-SA 4.0. To see a copy of this license, .\" visit . .\" -.TH SWAB 1 2024-06-17 "Harakit 0.13.11" +.TH SWAB 1 2024-06-17 "Harakit X.X.X" .SH NAME swab \(en swap bytes .\" diff --git a/docs/true.1 b/docs/true.1 index 15a4667..97af65b 100644 --- a/docs/true.1 +++ b/docs/true.1 @@ -4,7 +4,7 @@ .\" This work is licensed under CC BY-SA 4.0. To see a copy of this license, .\" visit . .\" -.TH TRUE 1 2024-06-06 "Harakit 0.13.11" +.TH TRUE 1 2024-06-06 "Harakit X.X.X" .SH NAME true \(en do nothing, successfully .\"