diff options
author | Alejandro Colomar <alx@kernel.org> | 2023-04-14 17:22:05 +0200 |
---|---|---|
committer | Alejandro Colomar <alx@kernel.org> | 2023-04-14 17:37:58 +0200 |
commit | f91a9c9ec95e5de367b210b76bb8d112e29c826c (patch) | |
tree | 18e7992578931690dd5e449c3cda180e36d57c40 | |
parent | f76ae175aa2ad029f22dfa5c799eebc297a4e876 (diff) |
*.mk, INSTALL: build-src-c: Optimize pipeline
Calling man(1) is slow. Since we only need to format the page, calling
mandoc(1) is faster and simpler (we could also use groff(1), but
mandoc(1) is probably faster and simpler than groff(1) too). This
brings times down ~3x in my system.
Signed-off-by: Alejandro Colomar <alx@kernel.org>
-rw-r--r-- | INSTALL | 2 | ||||
-rw-r--r-- | Makefile | 1 | ||||
-rw-r--r-- | share/mk/build/src.mk | 3 | ||||
-rw-r--r-- | share/mk/cmd.mk | 1 | ||||
-rw-r--r-- | share/mk/lint/man.mk | 1 |
5 files changed, 3 insertions, 5 deletions
@@ -106,7 +106,7 @@ Description - clang-tidy(1) - cpplint(1) - iwyu(1) - - man(1) + - mandoc(1) - mkdir(1) - pkg-config(1) - tac(1) @@ -176,7 +176,6 @@ help-variables: $(info GROTTY {EXTRA_,}GROTTYFLAGS) $(info COL {EXTRA_,}COLFLAGS) $(info ) - $(info MAN) $(info MANDOC {EXTRA_,}MANDOCFLAGS) $(info MAN2HTML {EXTRA_,}MAN2HTMLFLAGS) $(info ) diff --git a/share/mk/build/src.mk b/share/mk/build/src.mk index 365d6c8e6..454090812 100644 --- a/share/mk/build/src.mk +++ b/share/mk/build/src.mk @@ -52,7 +52,6 @@ LDLIBS := $(DEFAULT_LDLIBS) $(EXTRA_LDLIBS) CC := cc LD := $(CC) $(CFLAGS) -MAN := man _SRCPAGEDIRS := $(patsubst $(MANDIR)/%,$(_MANDIR)/%.d,$(NONSO_MAN)) @@ -84,7 +83,7 @@ $(_UNITS_src_src): -e '/^\.TH/,/^\.SH/{/^\.SH/!p}' \ -e '/^\.SH EXAMPLES/p' \ -e "/^\... SRC BEGIN ($(@F))$$/,/^\... SRC END$$/p" \ - | $(MAN) -P cat -l - \ + | $(MANDOC) -Tutf8 \ | $(SED) '/^[^ ]/d' \ | $(SED) 's/^ //' \ >$@ diff --git a/share/mk/cmd.mk b/share/mk/cmd.mk index 92b469fc3..1653263bf 100644 --- a/share/mk/cmd.mk +++ b/share/mk/cmd.mk @@ -21,6 +21,7 @@ INSTALL := install LN := ln LOCALE := locale LZIP := lzip +MANDOC := mandoc PKGCONF := pkgconf SED := sed SORT := sort diff --git a/share/mk/lint/man.mk b/share/mk/lint/man.mk index 9d9d6cea8..c696e2df0 100644 --- a/share/mk/lint/man.mk +++ b/share/mk/lint/man.mk @@ -18,7 +18,6 @@ DEFAULT_MANDOCFLAGS := -man DEFAULT_MANDOCFLAGS += -Tlint EXTRA_MANDOCFLAGS := MANDOCFLAGS := $(DEFAULT_MANDOCFLAGS) $(EXTRA_MANDOCFLAGS) -MANDOC := mandoc _LINT_man_mandoc:=$(patsubst $(MANDIR)/%,$(_MANDIR)/%.lint-man.mandoc.touch,$(NONSO_MAN)) |