From f91a9c9ec95e5de367b210b76bb8d112e29c826c Mon Sep 17 00:00:00 2001 From: Alejandro Colomar Date: Fri, 14 Apr 2023 17:22:05 +0200 Subject: [PATCH] *.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 --- INSTALL | 2 +- Makefile | 1 - share/mk/build/src.mk | 3 +-- share/mk/cmd.mk | 1 + share/mk/lint/man.mk | 1 - 5 files changed, 3 insertions(+), 5 deletions(-) diff --git a/INSTALL b/INSTALL index 402ce53e30..b3f7f4095e 100644 --- a/INSTALL +++ b/INSTALL @@ -106,7 +106,7 @@ Description - clang-tidy(1) - cpplint(1) - iwyu(1) - - man(1) + - mandoc(1) - mkdir(1) - pkg-config(1) - tac(1) diff --git a/Makefile b/Makefile index d55191b4d5..a19ae0b72f 100644 --- a/Makefile +++ b/Makefile @@ -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 365d6c8e6f..454090812a 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 92b469fc37..1653263bfd 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 9d9d6cea8f..c696e2df00 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)) -- 2.47.2