1# SPDX-License-Identifier: GPL-2.0-only 2 3INSTALL ?= install 4RM ?= rm -f 5RMDIR ?= rmdir --ignore-fail-on-non-empty 6 7PREFIX ?= /usr/share 8MANDIR ?= $(PREFIX)/man 9MAN1DIR = $(MANDIR)/man1 10 11MAN1_RST = $(wildcard rv*.rst) 12 13_DOC_MAN1 = $(patsubst %.rst,%.1,$(MAN1_RST)) 14DOC_MAN1 = $(addprefix $(OUTPUT),$(_DOC_MAN1)) 15 16RST2MAN_DEP := $(shell command -v rst2man 2>/dev/null) 17RST2MAN_OPTS += --verbose 18 19TEST_RST2MAN = $(shell sh -c "rst2man --version > /dev/null 2>&1 || echo n") 20 21$(OUTPUT)%.1: %.rst 22ifndef RST2MAN_DEP 23 $(info ********************************************) 24 $(info ** NOTICE: rst2man not found) 25 $(info **) 26 $(info ** Consider installing the latest rst2man from your) 27 $(info ** distribution, e.g., 'dnf install python3-docutils' on Fedora,) 28 $(info ** or from source:) 29 $(info **) 30 $(info ** https://docutils.sourceforge.io/docs/dev/repository.html ) 31 $(info **) 32 $(info ********************************************) 33 $(error NOTICE: rst2man required to generate man pages) 34endif 35 rst2man $(RST2MAN_OPTS) $< > $@ 36 37man1: $(DOC_MAN1) 38man: man1 39 40clean: 41 $(RM) $(DOC_MAN1) 42 43install: man 44 $(INSTALL) -d -m 755 $(DESTDIR)$(MAN1DIR) 45 $(INSTALL) -m 644 $(DOC_MAN1) $(DESTDIR)$(MAN1DIR) 46 47uninstall: 48 $(RM) $(addprefix $(DESTDIR)$(MAN1DIR)/,$(_DOC_MAN1)) 49 $(RMDIR) $(DESTDIR)$(MAN1DIR) 50 51.PHONY: man man1 clean install uninstall 52.DEFAULT_GOAL := man 53