From 6d6e70659e93820d9ac3afe9e76d1b625da6a63a Mon Sep 17 00:00:00 2001 From: Alejandro Colomar Date: Sun, 23 Apr 2023 01:22:51 +0200 Subject: *.mk: build-pre*: Split device-independent preprocessing from the catman targets To build other output formats from the same sources, let's split the generic part of the pipelines. Signed-off-by: Alejandro Colomar --- Makefile | 7 +++++-- share/mk/build/catman.mk | 25 ------------------------ share/mk/build/pre.mk | 50 ++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 55 insertions(+), 27 deletions(-) create mode 100644 share/mk/build/pre.mk diff --git a/Makefile b/Makefile index 4dda2001e..a75469871 100644 --- a/Makefile +++ b/Makefile @@ -50,9 +50,11 @@ help: $(info ) $(info build Wrapper for "build-catman build-html build-src") $(info ) + $(info build-pre Preprocess man pages; alias for "build-pre-tbl") + $(info build-pre-preconv Preprocess man pages with preconv(1)) + $(info build-pre-tbl Preprocess man pages with tbl(1)) + $(info ) $(info build-catman Build cat pages; alias for "build-catman-grotty") - $(info build-catman-preconv preconv(1) step of "build-catman") - $(info build-catman-tbl tbl(1) step of "build-catman") $(info build-catman-eqn eqn(1) step of "build-catman") $(info build-catman-troff Wrapper for build-catman-troff-* targets) $(info build-catman-troff-man troff(1) step of "build-catman" for man(7) pages) @@ -122,6 +124,7 @@ include $(MAKEFILEDIR)/check/catman.mk include $(MAKEFILEDIR)/build/_.mk include $(MAKEFILEDIR)/build/catman.mk include $(MAKEFILEDIR)/build/html.mk +include $(MAKEFILEDIR)/build/pre.mk include $(MAKEFILEDIR)/build/src.mk include $(MAKEFILEDIR)/dist.mk include $(MAKEFILEDIR)/install/_.mk diff --git a/share/mk/build/catman.mk b/share/mk/build/catman.mk index 47f7666d5..b3a15f0e9 100644 --- a/share/mk/build/catman.mk +++ b/share/mk/build/catman.mk @@ -23,13 +23,6 @@ NROFF_OUT_DEVICE := $(shell $(LOCALE) charmap \ && $(ECHO) utf8 \ || $(ECHO) ascii) -DEFAULT_PRECONVFLAGS := -EXTRA_PRECONVFLAGS := -PRECONVFLAGS := $(DEFAULT_PRECONVFLAGS) $(EXTRA_PRECONVFLAGS) -PRECONV := preconv - -TBL := tbl - DEFAULT_EQNFLAGS := EXTRA_EQNFLAGS := EQNFLAGS := $(DEFAULT_EQNFLAGS) $(EXTRA_EQNFLAGS) @@ -60,22 +53,12 @@ GROTTYFLAGS := $(DEFAULT_GROTTYFLAGS) $(EXTRA_GROTTYFLAGS) GROTTY := grotty -_MAN_tbl := $(patsubst $(MANDIR)/%,$(_MANDIR)/%.tbl,$(NONSO_MAN) $(NONSO_MDOC)) -_MAN_eqn := $(patsubst $(MANDIR)/%,$(_MANDIR)/%.eqn,$(NONSO_MAN) $(NONSO_MDOC)) _CATMAN_troff := $(patsubst $(MANDIR)/%,$(_MANDIR)/%.cat.troff,$(NONSO_MAN) $(NONSO_MDOC)) _CATMAN_MAN_set := $(patsubst $(MANDIR)/%,$(_MANDIR)/%.cat.set,$(NONSO_MAN)) _CATMAN_MDOC_set:= $(patsubst $(MANDIR)/%,$(_MANDIR)/%.cat.set,$(NONSO_MDOC)) _CATMAN := $(patsubst $(MANDIR)/%,$(_MANDIR)/%.cat,$(NONSO_MAN) $(NONSO_MDOC)) -$(_MAN_tbl): $(_MANDIR)/%.tbl: $(MANDIR)/% | $$(@D)/ - $(info PRECONV $@) - $(PRECONV) $(PRECONVFLAGS) $< >$@ - -$(_MAN_eqn): %.eqn: %.tbl | $$(@D)/ - $(info TBL $@) - $(TBL) <$< >$@ - $(_CATMAN_troff): %.cat.troff: %.eqn | $$(@D)/ $(info EQN $@) $(EQN) -T$(NROFF_OUT_DEVICE) $(EQNFLAGS) <$< 2>&1 >$@ \ @@ -96,14 +79,6 @@ $(_CATMAN): %.cat: %.cat.set | $$(@D)/ $(GROTTY) $(GROTTYFLAGS) <$< >$@ -.PHONY: build-catman-preconv -build-catman-preconv: $(_MAN_tbl) - @: - -.PHONY: build-catman-tbl -build-catman-tbl: $(_MAN_eqn) - @: - .PHONY: build-catman-eqn build-catman-eqn: $(_CATMAN_troff) @: diff --git a/share/mk/build/pre.mk b/share/mk/build/pre.mk new file mode 100644 index 000000000..cfa01f663 --- /dev/null +++ b/share/mk/build/pre.mk @@ -0,0 +1,50 @@ +######################################################################## +# Copyright 2021-2023, Alejandro Colomar +# SPDX-License-Identifier: GPL-3.0-or-later +######################################################################## + + +ifndef MAKEFILE_BUILD_PRE_INCLUDED +MAKEFILE_BUILD_PRE_INCLUDED := 1 + + +include $(MAKEFILEDIR)/build/_.mk +include $(MAKEFILEDIR)/cmd.mk +include $(MAKEFILEDIR)/src.mk + + +DEFAULT_PRECONVFLAGS := +EXTRA_PRECONVFLAGS := +PRECONVFLAGS := $(DEFAULT_PRECONVFLAGS) $(EXTRA_PRECONVFLAGS) +PRECONV := preconv + +TBL := tbl + + +_MAN_tbl := $(patsubst $(MANDIR)/%,$(_MANDIR)/%.tbl,$(NONSO_MAN) $(NONSO_MDOC)) +_MAN_eqn := $(patsubst $(MANDIR)/%,$(_MANDIR)/%.eqn,$(NONSO_MAN) $(NONSO_MDOC)) + + +$(_MAN_tbl): $(_MANDIR)/%.tbl: $(MANDIR)/% | $$(@D)/ + $(info PRECONV $@) + $(PRECONV) $(PRECONVFLAGS) $< >$@ + +$(_MAN_eqn): %.eqn: %.tbl | $$(@D)/ + $(info TBL $@) + $(TBL) <$< >$@ + + +.PHONY: build-pre-preconv +build-pre-preconv: $(_MAN_tbl) + @: + +.PHONY: build-pre-tbl +build-pre-tbl: $(_MAN_eqn) + @: + +.PHONY: build-pre +build-pre: build-pre-tbl + @: + + +endif # include guard -- cgit v1.2.3