1# SPDX-License-Identifier: GPL-2.0-or-later 2# Copyright (c) 2019 Cyril Hrubis <chrubis@suse.cz> 3# Copyright (c) 2020 Petr Vorel <pvorel@suse.cz> 4 5top_srcdir ?= .. 6 7include $(top_srcdir)/include/mk/env_pre.mk 8include $(top_srcdir)/include/mk/functions.mk 9 10ifeq ($(METADATA_GENERATOR),asciidoctor) 11METADATA_GENERATOR_CMD := asciidoctor 12METADATA_GENERATOR_PARAMS := -d book metadata.txt 13METADATA_GENERATOR_PARAMS_HTML := -b xhtml 14METADATA_GENERATOR_PARAMS_PDF := -b pdf -r asciidoctor-pdf 15else ifeq ($(METADATA_GENERATOR),asciidoc) 16METADATA_GENERATOR_CMD := a2x 17METADATA_GENERATOR_PARAMS := --xsltproc-opts "--stringparam toc.section.depth 1" -d book -L --resource="$(PWD)" metadata.txt 18METADATA_GENERATOR_PARAMS_HTML := -f xhtml 19METADATA_GENERATOR_PARAMS_PDF := -f pdf 20METADATA_GENERATOR_PARAMS_HTML_CHUNKED := -f chunked 21else ifeq ($(METADATA_GENERATOR),) 22$(error 'METADATA_GENERATOR' not not configured, run ./configure in the root directory) 23else 24$(error '$(METADATA_GENERATOR)' not supported, only asciidoctor and asciidoc are supported) 25endif 26 27ifdef VERBOSE 28METADATA_GENERATOR_PARAMS += -v 29endif 30 31CLEAN_TARGETS := *.css *.js *.txt 32MAKE_TARGETS := metadata.json 33 34ifeq ($(WITH_METADATA_HTML),yes) 35MAKE_TARGETS += metadata.html 36ifneq ($(METADATA_GENERATOR_PARAMS_HTML_CHUNKED),) 37MAKE_TARGETS += metadata.chunked 38endif 39endif 40 41ifeq ($(WITH_METADATA_PDF),yes) 42MAKE_TARGETS += metadata.pdf 43endif 44 45HOST_MAKE_TARGETS := docparse 46 47INSTALL_DIR = metadata 48INSTALL_TARGETS = *.css *.js 49 50ifndef METADATA_GENERATOR 51METADATA_GENERATOR := asciidoctor 52endif 53 54.PHONY: metadata.json 55 56metadata.json: docparse 57 $(abs_srcdir)/parse.sh > metadata.json 58 59txt: metadata.json 60 $(abs_srcdir)/testinfo.pl metadata.json 61 62ifeq ($(WITH_METADATA_HTML),yes) 63metadata.html: txt 64 $(METADATA_GENERATOR_CMD) $(METADATA_GENERATOR_PARAMS) $(METADATA_GENERATOR_PARAMS_HTML) 65 66ifneq ($(METADATA_GENERATOR_PARAMS_HTML_CHUNKED),) 67metadata.chunked: txt 68 $(METADATA_GENERATOR_CMD) $(METADATA_GENERATOR_PARAMS) $(METADATA_GENERATOR_PARAMS_HTML_CHUNKED) 69endif 70endif 71 72ifeq ($(WITH_METADATA_PDF),yes) 73metadata.pdf: txt 74 $(METADATA_GENERATOR_CMD) $(METADATA_GENERATOR_PARAMS) $(METADATA_GENERATOR_PARAMS_PDF) 75endif 76 77include $(top_srcdir)/include/mk/generic_leaf_target.mk 78