Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0-only
0002 # Based on bpftool's Documentation Makefile
0003 
0004 INSTALL         ?= install
0005 RM              ?= rm -f
0006 RMDIR           ?= rmdir --ignore-fail-on-non-empty
0007 
0008 PREFIX          ?= /usr/share
0009 MANDIR          ?= $(PREFIX)/man
0010 MAN1DIR         = $(MANDIR)/man1
0011 
0012 MAN1_RST        = $(wildcard rtla*.rst)
0013 
0014 _DOC_MAN1       = $(patsubst %.rst,%.1,$(MAN1_RST))
0015 DOC_MAN1        = $(addprefix $(OUTPUT),$(_DOC_MAN1))
0016 
0017 RST2MAN_DEP     := $(shell command -v rst2man 2>/dev/null)
0018 RST2MAN_OPTS    += --verbose
0019 
0020 TEST_RST2MAN = $(shell sh -c "rst2man --version > /dev/null 2>&1 || echo n")
0021 
0022 $(OUTPUT)%.1: %.rst
0023 ifndef RST2MAN_DEP
0024         $(info ********************************************)
0025         $(info ** NOTICE: rst2man not found)
0026         $(info **)
0027         $(info ** Consider installing the latest rst2man from your)
0028         $(info ** distribution, e.g., 'dnf install python3-docutils' on Fedora,)
0029         $(info ** or from source:)
0030         $(info **)
0031         $(info **  https://docutils.sourceforge.io/docs/dev/repository.html )
0032         $(info **)
0033         $(info ********************************************)
0034         $(error NOTICE: rst2man required to generate man pages)
0035 endif
0036         rst2man $(RST2MAN_OPTS) $< > $@
0037 
0038 man1: $(DOC_MAN1)
0039 man: man1
0040 
0041 clean:
0042         $(RM) $(DOC_MAN1)
0043 
0044 install: man
0045         $(INSTALL) -d -m 755 $(DESTDIR)$(MAN1DIR)
0046         $(INSTALL) -m 644 $(DOC_MAN1) $(DESTDIR)$(MAN1DIR)
0047 
0048 uninstall:
0049         $(RM) $(addprefix $(DESTDIR)$(MAN1DIR)/,$(_DOC_MAN1))
0050         $(RMDIR) $(DESTDIR)$(MAN1DIR)
0051 
0052 .PHONY: man man1 clean install uninstall
0053 .DEFAULT_GOAL := man