coreboot-kgpe-d16/Documentation/Makefile
Jonathan Neuschäfer 5e48c75fca Documentation: Add support for building with Sphinx
This commit adds the necessary infrastructure to convert the Markdown
files in the Documentation directory to HTML using Sphinx[1] and
recommonmark[2]. I selected "sphinx_rtd_theme" as the theme, because it
offers a useful navigation sidebar, and because it's already used for
the Linux kernel[3].

Makefile.sphinx was auto-generated by sphinx-quickstart. conf.py was
auto-generated and manually adjusted.

[1]: http://www.sphinx-doc.org/en/stable/
[2]: https://recommonmark.readthedocs.io/en/latest/
[3]: https://www.kernel.org/doc/html/latest/index.html

Change-Id: Ie4de96978e334c598cf5890775807d3e15c29c4d
Signed-off-by: Jonathan Neuschäfer <j.neuschaefer@gmx.net>
Reviewed-on: https://review.coreboot.org/25787
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
2018-04-26 12:25:03 +00:00

76 lines
2 KiB
Makefile

#
# Makefile for coreboot paper.
# hacked together by Stefan Reinauer <stepan@openbios.org>
#
PDFLATEX=pdflatex -t a4
FIGS=codeflow.pdf hypertransport.pdf
all: corebootPortingGuide.pdf Kconfig.pdf
SVG2PDF=$(shell which svg2pdf)
INKSCAPE=$(shell which inkscape)
CONVERT=$(shell which convert)
codeflow.pdf: codeflow.svg
ifneq ($(strip $(SVG2PDF)),)
svg2pdf $< $@
else ifneq ($(strip $(INKSCAPE)),)
inkscape $< --export-pdf=$@
else ifneq ($(strip $(CONVERT)),)
convert $< $@
endif
hypertransport.pdf: hypertransport.svg
ifneq ($(strip $(SVG2PDF)),)
svg2pdf $< $@
else ifneq ($(strip $(INKSCAPE)),)
inkscape $< --export-pdf=$@
else ifneq ($(strip $(CONVERT)),)
convert $< $@
endif
corebootPortingGuide.toc: $(FIGS) corebootBuildingGuide.tex
# 2 times to make sure we have a current toc.
$(PDFLATEX) corebootBuildingGuide.tex
$(PDFLATEX) corebootBuildingGuide.tex
corebootPortingGuide.pdf: $(FIGS) corebootBuildingGuide.tex corebootPortingGuide.toc
$(PDFLATEX) corebootBuildingGuide.tex
Kconfig.pdf: Kconfig.tex mainboardkconfig.tex cpukconfig.tex socketfkconfig.tex
$(PDFLATEX) $<
# quick, somebody! make me a macro!
mainboardkconfig.tex: ../src/mainboard/Kconfig
cat beginverbatim.tex > $@
grep '^config' $< | awk '{print $2}' >>$@
cat endverbatim.tex >> $@
skconfig.tex: ../src/mainboard/amd/serengeti_cheetah/Kconfig
cat beginverbatim.tex > $@
grep '^config' $< | awk '{print $2}' >>$@
cat endverbatim.tex >> $@
cpukconfig.tex: ../src/cpu/Kconfig
cat beginverbatim.tex > $@
grep '^config' $< | awk '{print $2}' >>$@
cat endverbatim.tex >> $@
socketfkconfig.tex: ../src/cpu/amd/socket_F/Kconfig
cat beginverbatim.tex > $@
grep '^config' $< | awk '{print $2}' >>$@
cat endverbatim.tex >> $@
sphinx:
$(MAKE) -f Makefile.sphinx html
clean-sphinx:
$(MAKE) -f Makefile.sphinx clean
clean: clean-sphinx
rm -f *.aux *.idx *.log *.toc *.out $(FIGS) mainboardkconfig.tex skconfig.tex cpukconfig.tex socketfkconfig.tex
distclean: clean
rm -f corebootPortingGuide.pdf Kconfig.pdf