diff mbox

Makefile: Put VERSION info into version.texi rather than using -D

Message ID 1487344340-30471-1-git-send-email-peter.maydell@linaro.org
State New
Headers show

Commit Message

Peter Maydell Feb. 17, 2017, 3:12 p.m. UTC
Unfortunately some older versions of makeinfo don't correctly
handle the -D command line option and fail to set the variable.
This then causes them to complain
 docs/qemu-ga-ref.texi:41: warning: undefined flag: VERSION

Work around this by doing as the autotools do, and writing
the information into a version.texi file which we then
include from the .texi files that need it.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
 Makefile               | 17 ++++++++++-------
 docs/qemu-ga-ref.texi  |  2 ++
 docs/qemu-qmp-ref.texi |  2 ++
 3 files changed, 14 insertions(+), 7 deletions(-)

Comments

Marc-Andre Lureau Feb. 17, 2017, 3:47 p.m. UTC | #1
Hi

----- Original Message -----
> Unfortunately some older versions of makeinfo don't correctly
> handle the -D command line option and fail to set the variable.
> This then causes them to complain
>  docs/qemu-ga-ref.texi:41: warning: undefined flag: VERSION
> 
> Work around this by doing as the autotools do, and writing
> the information into a version.texi file which we then
> include from the .texi files that need it.
> 
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> ---
>  Makefile               | 17 ++++++++++-------
>  docs/qemu-ga-ref.texi  |  2 ++
>  docs/qemu-qmp-ref.texi |  2 ++
>  3 files changed, 14 insertions(+), 7 deletions(-)

looks good,
version.texi should probably be in .gitignore though

> diff --git a/Makefile b/Makefile
> index 830fa5a..1c4c04f 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -516,7 +516,7 @@ distclean: clean
>  	rm -f qemu-doc.vr qemu-doc.txt
>  	rm -f config.log
>  	rm -f linux-headers/asm
> -	rm -f qemu-ga-qapi.texi qemu-qapi.texi
> +	rm -f qemu-ga-qapi.texi qemu-qapi.texi version.texi
>  	rm -f docs/qemu-qmp-ref.7 docs/qemu-ga-ref.7
>  	rm -f docs/qemu-qmp-ref.txt docs/qemu-ga-ref.txt
>  	rm -f docs/qemu-qmp-ref.pdf docs/qemu-ga-ref.pdf
> @@ -663,21 +663,24 @@ ui/console-gl.o: $(SRC_PATH)/ui/console-gl.c \
>  
>  # documentation
>  MAKEINFO=makeinfo
> -MAKEINFOFLAGS=--no-split --number-sections -D 'VERSION $(VERSION)'
> -TEXIFLAG=$(if $(V),,--quiet) --command='@set VERSION $(VERSION)'
> +MAKEINFOFLAGS=--no-split --number-sections
> +TEXIFLAG=$(if $(V),,--quiet)
>  
> -%.html: %.texi
> +version.texi: $(SRC_PATH)/VERSION
> +	$(call quiet-command,echo "@set VERSION $(VERSION)" > $@,"GEN","$@")
> +
> +%.html: %.texi version.texi
>  	$(call quiet-command,LC_ALL=C $(MAKEINFO) $(MAKEINFOFLAGS) --no-headers \
>  	--html $< -o $@,"GEN","$@")
>  
> -%.info: %.texi
> +%.info: %.texi version.texi
>  	$(call quiet-command,$(MAKEINFO) $(MAKEINFOFLAGS) $< -o $@,"GEN","$@")
>  
> -%.txt: %.texi
> +%.txt: %.texi version.texi
>  	$(call quiet-command,LC_ALL=C $(MAKEINFO) $(MAKEINFOFLAGS) --no-headers \
>  	--plaintext $< -o $@,"GEN","$@")
>  
> -%.pdf: %.texi
> +%.pdf: %.texi version.texi
>  	$(call quiet-command,texi2pdf $(TEXIFLAG) -I $(SRC_PATH) -I . $< -o
>  	$@,"GEN","$@")
>  
>  qemu-options.texi: $(SRC_PATH)/qemu-options.hx $(SRC_PATH)/scripts/hxtool
> diff --git a/docs/qemu-ga-ref.texi b/docs/qemu-ga-ref.texi
> index 87cc8d0..ddb76ce 100644
> --- a/docs/qemu-ga-ref.texi
> +++ b/docs/qemu-ga-ref.texi
> @@ -1,6 +1,8 @@
>  \input texinfo
>  @setfilename qemu-ga-ref.info
>  
> +@include version.texi
> +
>  @exampleindent 0
>  @paragraphindent 0
>  
> diff --git a/docs/qemu-qmp-ref.texi b/docs/qemu-qmp-ref.texi
> index 818e525..0a00569 100644
> --- a/docs/qemu-qmp-ref.texi
> +++ b/docs/qemu-qmp-ref.texi
> @@ -1,6 +1,8 @@
>  \input texinfo
>  @setfilename qemu-qmp-ref.info
>  
> +@include version.texi
> +
>  @exampleindent 0
>  @paragraphindent 0
>  
> --
> 2.7.4
> 
>
Eric Blake Feb. 17, 2017, 3:50 p.m. UTC | #2
On 02/17/2017 09:12 AM, Peter Maydell wrote:
> Unfortunately some older versions of makeinfo don't correctly
> handle the -D command line option and fail to set the variable.
> This then causes them to complain
>  docs/qemu-ga-ref.texi:41: warning: undefined flag: VERSION
> 
> Work around this by doing as the autotools do, and writing
> the information into a version.texi file which we then
> include from the .texi files that need it.

Autotools defines a few more macros, but we can always beef up our
version.texi if we find ourselves needing any of them.

> 
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> ---
>  Makefile               | 17 ++++++++++-------
>  docs/qemu-ga-ref.texi  |  2 ++
>  docs/qemu-qmp-ref.texi |  2 ++
>  3 files changed, 14 insertions(+), 7 deletions(-)

Missing a change to .gitignore for version.texi.  With that fixed, you
can add:

Reviewed-by: Eric Blake <eblake@redhat.com>
diff mbox

Patch

diff --git a/Makefile b/Makefile
index 830fa5a..1c4c04f 100644
--- a/Makefile
+++ b/Makefile
@@ -516,7 +516,7 @@  distclean: clean
 	rm -f qemu-doc.vr qemu-doc.txt
 	rm -f config.log
 	rm -f linux-headers/asm
-	rm -f qemu-ga-qapi.texi qemu-qapi.texi
+	rm -f qemu-ga-qapi.texi qemu-qapi.texi version.texi
 	rm -f docs/qemu-qmp-ref.7 docs/qemu-ga-ref.7
 	rm -f docs/qemu-qmp-ref.txt docs/qemu-ga-ref.txt
 	rm -f docs/qemu-qmp-ref.pdf docs/qemu-ga-ref.pdf
@@ -663,21 +663,24 @@  ui/console-gl.o: $(SRC_PATH)/ui/console-gl.c \
 
 # documentation
 MAKEINFO=makeinfo
-MAKEINFOFLAGS=--no-split --number-sections -D 'VERSION $(VERSION)'
-TEXIFLAG=$(if $(V),,--quiet) --command='@set VERSION $(VERSION)'
+MAKEINFOFLAGS=--no-split --number-sections
+TEXIFLAG=$(if $(V),,--quiet)
 
-%.html: %.texi
+version.texi: $(SRC_PATH)/VERSION
+	$(call quiet-command,echo "@set VERSION $(VERSION)" > $@,"GEN","$@")
+
+%.html: %.texi version.texi
 	$(call quiet-command,LC_ALL=C $(MAKEINFO) $(MAKEINFOFLAGS) --no-headers \
 	--html $< -o $@,"GEN","$@")
 
-%.info: %.texi
+%.info: %.texi version.texi
 	$(call quiet-command,$(MAKEINFO) $(MAKEINFOFLAGS) $< -o $@,"GEN","$@")
 
-%.txt: %.texi
+%.txt: %.texi version.texi
 	$(call quiet-command,LC_ALL=C $(MAKEINFO) $(MAKEINFOFLAGS) --no-headers \
 	--plaintext $< -o $@,"GEN","$@")
 
-%.pdf: %.texi
+%.pdf: %.texi version.texi
 	$(call quiet-command,texi2pdf $(TEXIFLAG) -I $(SRC_PATH) -I . $< -o $@,"GEN","$@")
 
 qemu-options.texi: $(SRC_PATH)/qemu-options.hx $(SRC_PATH)/scripts/hxtool
diff --git a/docs/qemu-ga-ref.texi b/docs/qemu-ga-ref.texi
index 87cc8d0..ddb76ce 100644
--- a/docs/qemu-ga-ref.texi
+++ b/docs/qemu-ga-ref.texi
@@ -1,6 +1,8 @@ 
 \input texinfo
 @setfilename qemu-ga-ref.info
 
+@include version.texi
+
 @exampleindent 0
 @paragraphindent 0
 
diff --git a/docs/qemu-qmp-ref.texi b/docs/qemu-qmp-ref.texi
index 818e525..0a00569 100644
--- a/docs/qemu-qmp-ref.texi
+++ b/docs/qemu-qmp-ref.texi
@@ -1,6 +1,8 @@ 
 \input texinfo
 @setfilename qemu-qmp-ref.info
 
+@include version.texi
+
 @exampleindent 0
 @paragraphindent 0