From: Thomas Monjalon <thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
To: John McNamara <john.mcnamara-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
Cc: dev-VfR2kkLFssw@public.gmane.org
Subject: Re: [PATCH v2 1/4] mk: Add 'make doc-pdf' target to convert guide docs to pdf
Date: Fri, 30 Jan 2015 21:52:07 +0100 [thread overview]
Message-ID: <13813522.nhRjWB08pe@xps13> (raw)
In-Reply-To: <1422641608-8514-2-git-send-email-john.mcnamara-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-01-30 18:13, John McNamara:
> Added make system support for building PDF versions of
> the guides. Requires Python Sphinx and TexLive Full.
>
> Signed-off-by: John McNamara <john.mcnamara-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
> ifndef V
> RTE_SPHINX_VERBOSE := -q
> +RTE_PDFLATEX_VERBOSE := > /dev/null 2>&1
By redirecting everything in /dev/null, you won't see any error.
But pdflatex is an horrible software.
If I remember well, it's very difficult to filter only errors.
You could try "-interaction batchmode" for quiet mode and
"-interaction nonstopmode" for verbose mode.
> +DEFAULT_DPI ?= 300
It's better to prefix this global variable with RTE_ or DPDK_
> -clean: api-html-clean guides-html-clean
> +clean: api-html-clean guides-html-clean guides-latex-clean
Why not guides-pdf-clean?
> +pdf: pdf-rel_notes pdf-linux_gsg pdf-freebsd_gsg pdf-prog_guide \
> + pdf-sample_app_ug pdf-testpmd_app_ug
In general, it's a bad idea to create virtual targets where it could
be a file. Example: the real file $(RTE_OUTPUT)/doc/.../rel_notes.pdf
would be a better target than pdf-rel_notes.
But maybe it's too difficult to have the full dependency chain to make
it able of recompiling only needed parts when needed.
> +pdf-%:
> + @echo 'creating' $* 'pdf ...'
> + # Generate the latex files.
> + $(Q)$(RTE_SPHINX_BUILD) -b latex $(RTE_SPHINX_VERBOSE) \
> + -c $(RTE_SDK)/doc/guides/$* $(RTE_SDK)/doc/guides/$* \
> + $(RTE_OUTPUT)/doc/latex/guides/$*
> +
> + # Convert the svg files to png.
> + $(eval svg_files=$(notdir $(wildcard $(RTE_SDK)/doc/guides/$*/img/*.svg)))
> + $(eval svg_files=$(patsubst %.svg, %, $(svg_files)))
> + @for svg in $(svg_files); do \
You could use $(svg_files:.svg=) instead of doing a patsubst above.
> + inkscape -d $(DEFAULT_DPI) -D -b ffffff \
> + -f $(RTE_SDK)/doc/guides/$*/img/$$svg.svg \
> + -e $(RTE_OUTPUT)/doc/latex/guides/$*/$$svg.png \
> + $(RTE_PDFLATEX_VERBOSE); \
> + done
> +
> + # Change the svg image includes to png in the latex docs.
> + $(Q)sed -i 's/\.svg/.png/g' $(RTE_OUTPUT)/doc/latex/guides/$*/*.tex
No, you could avoid that if every image references where x.* instead of x.svg or x.png.
The image extension should always be .* in rst to be format agnostic.
Then there is a (configurable) rule to choose the best format.
> +
> + # Convert the latex to pdf.
> + $(Q)$(MAKE) -C $(RTE_OUTPUT)/doc/latex/guides/$* \
> + all-pdf $(RTE_PDFLATEX_VERBOSE)
Indentation is broken in this whole rule.
> --- a/mk/rte.sdkroot.mk
> +++ b/mk/rte.sdkroot.mk
> @@ -101,9 +101,10 @@ testall:
> install uninstall:
> $(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkinstall.mk $@
>
> -.PHONY: doc help
> +.PHONY: doc help pdf
> doc: doc-all
> help: doc-help
> +pdf: doc-pdf
> doc-%:
> $(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkdoc.mk $*
Why having a pdf rule? It seems not consistent. doc-pdf is enough.
Thanks
--
Thomas
next prev parent reply other threads:[~2015-01-30 20:52 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-01-14 17:14 [PATCH RFC 0/1] Add 'make pdf' target to convert guide docs to pdf John McNamara
[not found] ` <1421255657-19521-1-git-send-email-john.mcnamara-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-01-14 17:14 ` [PATCH 1/2] doc: " John McNamara
2015-01-30 18:13 ` [PATCH v2 0/4] " John McNamara
[not found] ` <1422641608-8514-1-git-send-email-john.mcnamara-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-01-30 18:13 ` [PATCH v2 1/4] mk: Add 'make doc-pdf' " John McNamara
[not found] ` <1422641608-8514-2-git-send-email-john.mcnamara-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-01-30 20:52 ` Thomas Monjalon [this message]
2015-02-02 13:10 ` Mcnamara, John
[not found] ` <B27915DBBA3421428155699D51E4CFE2EAC4D2-kPTMFJFq+rELt2AQoY/u9bfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-02-02 13:35 ` Thomas Monjalon
2015-02-03 13:24 ` Mcnamara, John
2015-01-30 18:13 ` [PATCH v2 2/4] doc: Add Sphinx config to build pdf version of guides John McNamara
[not found] ` <1422641608-8514-3-git-send-email-john.mcnamara-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-01-30 21:03 ` Thomas Monjalon
2015-02-02 10:19 ` Iremonger, Bernard
[not found] ` <8CEF83825BEC744B83065625E567D7C2049DC928-kPTMFJFq+rEMvF1YICWikbfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-02-02 10:25 ` Thomas Monjalon
2015-02-02 10:28 ` Iremonger, Bernard
2015-01-30 18:13 ` [PATCH v2 3/4] doc: Fix encoding of (r) character John McNamara
2015-01-30 18:13 ` [PATCH v2 4/4] doc: Refactored split cell formatting in one table John McNamara
[not found] ` <1422641608-8514-5-git-send-email-john.mcnamara-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-01-30 21:05 ` Thomas Monjalon
2015-01-30 20:25 ` [PATCH v2 0/4] doc: Add 'make pdf' target to convert guide docs to pdf Thomas Monjalon
2015-02-02 13:16 ` [PATCH v3 " John McNamara
[not found] ` <1422882967-27060-1-git-send-email-john.mcnamara-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-02-02 13:16 ` [PATCH v3 1/4] mk: Add 'make doc-pdf' " John McNamara
2015-02-02 13:16 ` [PATCH v3 2/4] doc: Add Sphinx config to build pdf version of guides John McNamara
[not found] ` <1422882967-27060-3-git-send-email-john.mcnamara-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-02-03 10:30 ` Iremonger, Bernard
2015-02-02 13:16 ` [PATCH v3 3/4] doc: Fix encoding of (r) character John McNamara
2015-02-02 13:16 ` [PATCH v3 4/4] doc: Refactored split cell formatting in one table John McNamara
2015-02-03 14:11 ` [PATCH v4 0/5] doc: Add 'make pdf' target to convert guide docs to pdf John McNamara
[not found] ` <1422972678-7982-1-git-send-email-john.mcnamara-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-02-03 14:11 ` [PATCH v4 1/5] mk: Add 'make doc-pdf' " John McNamara
[not found] ` <1422972678-7982-2-git-send-email-john.mcnamara-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-02-16 12:19 ` Iremonger, Bernard
[not found] ` <8CEF83825BEC744B83065625E567D7C2049E7F31-kPTMFJFq+rEMvF1YICWikbfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-02-16 12:55 ` Mcnamara, John
2015-02-16 14:16 ` Iremonger, Bernard
2015-02-03 14:11 ` [PATCH v4 2/5] doc: Add Sphinx config to build pdf version of guides John McNamara
[not found] ` <1422972678-7982-3-git-send-email-john.mcnamara-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-02-16 14:20 ` Iremonger, Bernard
2015-02-03 14:11 ` [PATCH v4 3/5] doc: Fix encoding of (r) character John McNamara
[not found] ` <1422972678-7982-4-git-send-email-john.mcnamara-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-02-13 14:29 ` Iremonger, Bernard
[not found] ` <8CEF83825BEC744B83065625E567D7C2049E0436-kPTMFJFq+rEMvF1YICWikbfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-02-13 15:59 ` Mcnamara, John
[not found] ` <B27915DBBA3421428155699D51E4CFE2EC267F-kPTMFJFq+rELt2AQoY/u9bfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-02-13 16:42 ` Iremonger, Bernard
2015-02-16 14:22 ` Iremonger, Bernard
2015-02-03 14:11 ` [PATCH v4 4/5] doc: Refactored split cell formatting in one table John McNamara
[not found] ` <1422972678-7982-5-git-send-email-john.mcnamara-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-02-16 14:23 ` Iremonger, Bernard
2015-02-03 14:11 ` [PATCH v4 5/5] doc: Convert image extensions to wildcard John McNamara
[not found] ` <1422972678-7982-6-git-send-email-john.mcnamara-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2015-02-16 12:09 ` Iremonger, Bernard
[not found] ` <8CEF83825BEC744B83065625E567D7C2049E7F0E-kPTMFJFq+rEMvF1YICWikbfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-02-16 12:43 ` Mcnamara, John
2015-02-16 14:25 ` Iremonger, Bernard
2015-03-19 11:23 ` [PATCH v5 0/7] add doc-guides-pdf target Thomas Monjalon
[not found] ` <1426764204-3882-1-git-send-email-thomas.monjalon-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2015-03-19 11:23 ` [PATCH v5 1/7] doc: fix encoding of (r) character Thomas Monjalon
2015-03-19 11:23 ` [PATCH v5 2/7] doc: refactor split cell formatting in table Thomas Monjalon
2015-03-19 11:23 ` [PATCH v5 3/7] doc: convert image extensions to wildcard Thomas Monjalon
2015-03-19 11:23 ` [PATCH v5 4/7] doc: add pdf output Thomas Monjalon
2015-03-19 11:23 ` [PATCH v5 5/7] doc: fix version for python 3 Thomas Monjalon
2015-03-19 11:23 ` [PATCH v5 6/7] doc: tune pdf fonts Thomas Monjalon
2015-03-19 11:23 ` [PATCH v5 7/7] doc: remove blank pages in pdf Thomas Monjalon
2015-03-19 13:47 ` [PATCH v5 0/7] add doc-guides-pdf target Mcnamara, John
[not found] ` <B27915DBBA3421428155699D51E4CFE2ED346C-kPTMFJFq+rELt2AQoY/u9bfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2015-03-19 17:04 ` Thomas Monjalon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=13813522.nhRjWB08pe@xps13 \
--to=thomas.monjalon-pdr9zngts4eavxtiumwx3w@public.gmane.org \
--cc=dev-VfR2kkLFssw@public.gmane.org \
--cc=john.mcnamara-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.