[FFmpeg-devel] [PATCH] doc: enable compilation of monolithic tools doc with --enable-monolithic-tools-doc
Clément Bœsch
ubitux at gmail.com
Thu Apr 4 09:55:50 CEST 2013
On Thu, Apr 04, 2013 at 12:20:35AM +0200, Stefano Sabatini wrote:
[...]
> From 4ae2477a05efcd19f4ec88c1753d552a876b2edf Mon Sep 17 00:00:00 2001
> From: Stefano Sabatini <stefasab at gmail.com>
> Date: Tue, 19 Mar 2013 20:54:26 +0100
> Subject: [PATCH] doc: enable compilation of -all tool pages
>
> In particular, add documentation configuration system, through the
> doc/config.texi file.
>
> Fix trac issue #2374.
> ---
> configure | 13 +++++++++++--
> doc/Makefile | 21 +++++++++++++++++----
> doc/all-components.texi | 30 ++++++++++++++++++++++++++++++
> doc/ffmpeg.texi | 9 +++++++--
> doc/ffplay.texi | 9 +++++++--
> doc/ffprobe.texi | 9 +++++++--
> doc/ffserver.texi | 9 +++++++--
> 7 files changed, 86 insertions(+), 14 deletions(-)
> create mode 100644 doc/all-components.texi
>
> diff --git a/configure b/configure
> index 4b46007..a6ab58e 100755
> --- a/configure
> +++ b/configure
> @@ -658,6 +658,12 @@ print_config(){
> } else if (file ~ /\\.mak\$/) {
> n = -v ? \"\" : \"!\";
> printf(\"%s%s=yes\\n\", n, c) >>file;
> + } else if (file ~ /\\.texi\$/) {
> + pre = -v ? \"\" : \"@c \";
> + yesno = \$2;
> + c2 = tolower(c);
> + gsub(/_/, \"-\", c2);
> + printf(\"%s at set %s %s\\n\", pre, c2, yesno) >>file;
> }
> }
> }"
> @@ -4406,13 +4412,13 @@ fi
>
> echo "License: $license"
>
> -echo "Creating config.mak and config.h..."
> +echo "Creating config.mak, config.h, and doc/config.texi..."
>
doc/config.texi looks .gitignore compliant.
[...]
> @@ -61,11 +60,22 @@ doc/%.html: doc/%.texi $(SRC_PATH)/doc/t2h.init $(GENTEXI)
> $(Q)$(TEXIDEP)
> $(M)texi2html -I doc -monolithic --init-file $(SRC_PATH)/doc/t2h.init --output $@ $<
>
> +doc/%-all.html: TAG = HTML
> +doc/%-all.html: doc/%.texi $(SRC_PATH)/doc/t2h.init $(GENTEXI)
> + $(Q)$(TEXIDEP)
> + $(M)texi2html -I doc -monolithic --D=config-all --init-file $(SRC_PATH)/doc/t2h.init --output $@ $<
> + $(RM) config-all.texi
> +
> doc/%.pod: TAG = POD
> doc/%.pod: doc/%.texi $(SRC_PATH)/doc/texi2pod.pl $(GENTEXI)
> $(Q)$(TEXIDEP)
> $(M)perl $(SRC_PATH)/doc/texi2pod.pl -Idoc $< $@
>
> +doc/%-all.pod: TAG = POD
> +doc/%-all.pod: doc/%.texi $(SRC_PATH)/doc/texi2pod.pl $(GENTEXI)
> + $(Q)$(TEXIDEP)
> + $(M)perl $(SRC_PATH)/doc/texi2pod.pl -Dconfig-all=yes -Idoc $< $@
> +
I wonder if you can't factorize this. Maybe something like (untested):
doc/%-all.pod: EXTRA_OPTS = -Dconfig-all=yes
doc/%.pod: TAG = POD
doc/%.pod: doc/%.texi $(SRC_PATH)/doc/texi2pod.pl $(GENTEXI)
$(Q)$(TEXIDEP)
$(M)perl $(SRC_PATH)/doc/texi2pod.pl $(EXTRA_OPTS) -Idoc $< $@
Note: I don't consider this blocking if the above doesn't work.
> doc/%.1 doc/%.3: TAG = MAN
> doc/%.1: doc/%.pod $(GENTEXI)
> $(M)pod2man --section=1 --center=" " --release=" " $< > $@
> @@ -94,6 +104,9 @@ uninstall-man:
>
> clean:: docclean
>
> +distclean:: docclean
> + $(RM) doc/config.texi
> +
> docclean:
> $(RM) $(TXTPAGES) doc/*.html doc/*.pod doc/*.1 doc/*.3 $(CLEANSUFFIXES:%=doc/%) doc/avoptions_*.texi
> $(RM) -r doc/doxy/html
[...]
> diff --git a/doc/ffprobe.texi b/doc/ffprobe.texi
> index 6e30b2f..a4e19bd 100644
> --- a/doc/ffprobe.texi
> +++ b/doc/ffprobe.texi
> @@ -487,10 +487,15 @@ DV, GXF and AVI timecodes are available in format metadata
> @end itemize
> @c man end TIMECODE
>
> + at include config.texi
> + at ifset monolithic-tools-doc
> + at include all-components.texi
> + at end ifset
> +
> @chapter See Also
>
> @ifhtml
> - at url{ffplay.html,ffmpeg}, @url{ffprobe.html,ffprobe}, @url{ffserver.html,ffserver},
> + at url{ffprobe-all.html,ffprobe-all} @url{ffplay.html,ffmpeg}, @url{ffprobe.html,ffprobe}, @url{ffserver.html,ffserver},
Note: @url{ffplay.html,ffmpeg} looks wrong.
[...]
Rest LGTM
--
Clément B.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 490 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20130404/8491a09e/attachment.asc>
More information about the ffmpeg-devel
mailing list