• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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