qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] Build and install more documentation formats


From: Stefan Weil
Subject: Re: [Qemu-devel] [PATCH] Build and install more documentation formats
Date: Mon, 01 Feb 2010 11:22:10 +0100
User-agent: Mozilla-Thunderbird 2.0.0.22 (X11/20090707)

Dirk Ullrich schrieb:
> Hi,
>
> I have patched QEMU's "configure" script and its main makefile: Now
> QEMU's documentation is also created in PDF format (using "texi2pdf"),
> and the targets "install-all-doc" / "install-all" install
> documentation in INFO and PDF format, too. May be others find this
> feature useful.
>
> Dirk
>
> For response please CC me since I am no "qemu-devel" subscriber (yet).
>
> diff --git a/Makefile b/Makefile
> index 3848627..641fdbd 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -21,7 +21,8 @@ endif
> Makefile: ;
> configure: ;
>
> -.PHONY: all clean cscope distclean dvi html info install install-doc \
> +.PHONY: all clean cscope distclean dvi pdf html info install
> install-all \
> + install-nodoc install-doc install-all-doc \
> recurse-all speed tar tarbin test build-all
>
> $(call set-vpath, $(SRC_PATH):$(SRC_PATH)/hw)
> @@ -34,6 +35,12 @@ else
> DOCS=
> endif
>
> +ifdef BUILD_DOCS
> +MORE_DOCS=qemu-doc.pdf qemu-tech.pdf qemu-doc.info qemu-tech.info
> +else
> +MORE_DOCS=
> +endif
> +
> SUBDIR_MAKEFLAGS=$(if $(V),,--no-print-directory)
> SUBDIR_DEVICES_MAK=$(patsubst %, %/config-devices.mak, $(TARGET_DIRS))
>
> @@ -65,7 +72,7 @@ defconfig:
>
> -include config-all-devices.mak
>
> -build-all: $(DOCS) $(TOOLS) recurse-all
> +build-all: $(DOCS) $(MORE_DOCS) $(TOOLS) recurse-all
>
> config-host.h: config-host.h-timestamp
> config-host.h-timestamp: config-host.mak
> @@ -160,7 +167,7 @@ distclean: clean
> rm -f config-host.mak config-host.h* config-host.ld $(DOCS)
> qemu-options.texi qemu-img-cmds.texi qemu-monitor.texi
> rm -f config-all-devices.mak
> rm -f roms/seabios/config.mak roms/vgabios/config.mak
> - rm -f qemu-{doc,tech}.{info,aux,cp,dvi,fn,info,ky,log,pg,toc,tp,vr}
> + rm -f qemu-{doc,tech}.{info,aux,cp,dvi,pdf,fn,info,ky,log,pg,toc,tp,vr}
> for d in $(TARGET_DIRS) libhw32 libhw64 libuser; do \
> rm -rf $$d || exit 1 ; \
> done
> @@ -191,7 +198,19 @@ ifdef CONFIG_POSIX
> $(INSTALL_DATA) qemu-nbd.8 "$(DESTDIR)$(mandir)/man8"
> endif
>
> -install: all $(if $(BUILD_DOCS),install-doc)
> +install-all-doc: $(MORE_DOCS) install-doc
> + $(INSTALL_DIR) "$(DESTDIR)$(docdir)"
> + $(INSTALL_DATA) qemu-doc.pdf qemu-tech.pdf "$(DESTDIR)$(docdir)"
> +ifdef CONFIG_POSIX
> + $(INSTALL_DIR) "$(DESTDIR)$(infodir)"
> + $(INSTALL_DATA) qemu-doc.info qemu-tech.info "$(DESTDIR)$(infodir)"
> + install-info --info-dir="$(DESTDIR)$(infodir)" \
> + "$(DESTDIR)$(infodir)/qemu-doc.info"
> + install-info --info-dir="$(DESTDIR)$(infodir)" \
> + "$(DESTDIR)$(infodir)/qemu-tech.info"
> +endif
> +
> +install-nodoc: all
> $(INSTALL_DIR) "$(DESTDIR)$(bindir)"
> ifneq ($(TOOLS),)
> $(INSTALL_PROG) $(STRIP_OPT) $(TOOLS) "$(DESTDIR)$(bindir)"
> @@ -207,9 +226,13 @@ endif
> $(INSTALL_DATA) $(SRC_PATH)/pc-bios/keymaps/$$x
> "$(DESTDIR)$(datadir)/keymaps"; \
> done
> for d in $(TARGET_DIRS); do \
> - $(MAKE) -C $$d $@ || exit 1 ; \
> + $(MAKE) -C $$d install || exit 1 ; \
> done
>
> +install: install-nodoc $(if $(BUILD_DOCS),install-doc)
> +
> +install-all: install-nodoc $(if $(BUILD_DOCS),install-all-doc)
> +
> # various test targets
> test speed: all
> $(MAKE) -C tests $@
> @@ -233,6 +256,9 @@ cscope:
> %.dvi: %.texi
> $(call quiet-command,texi2dvi -I . $<," GEN $@")
>
> +%.pdf: %.texi
> + $(call quiet-command,texi2pdf -I . $<," GEN $@")
> +
> qemu-options.texi: $(SRC_PATH)/qemu-options.hx
> $(call quiet-command,sh $(SRC_PATH)/hxtool -t < $< > $@," GEN $@")
>
> @@ -266,7 +292,9 @@ dvi: qemu-doc.dvi qemu-tech.dvi
>
> html: qemu-doc.html qemu-tech.html
>
> -qemu-doc.dvi qemu-doc.html qemu-doc.info: qemu-img.texi qemu-nbd.texi
> qemu-options.texi qemu-monitor.texi qemu-img-cmds.texi
> +pdf: qemu-doc.pdf qemu-tech.pdf
> +
> +qemu-doc.dvi qemu-doc.html qemu-doc.info qemu-doc.pdf: qemu-img.texi
> qemu-nbd.texi qemu-options.texi qemu-monitor.texi qemu-img-cmds.texi
>
> VERSION ?= $(shell cat VERSION)
> FILE = qemu-$(VERSION)
> diff --git a/configure b/configure
> index 42ef628..27f9a75 100755
> --- a/configure
> +++ b/configure
> @@ -1872,6 +1872,7 @@ if test "$mingw32" = "yes" ; then
> prefix="c:/Program Files/Qemu"
> fi
> mansuffix=""
> + infosuffix=""
> datasuffix=""
> confsuffix=""
> docsuffix=""
> @@ -1884,6 +1885,7 @@ else
> prefix="/usr/local"
> fi
> mansuffix="/share/man"
> + infosuffix="/share/info"
> datasuffix="/share/qemu"
> docsuffix="/share/doc/qemu"
> binsuffix="/bin"
> @@ -1897,6 +1899,7 @@ echo "BIOS directory $prefix$datasuffix"
> echo "binary directory $prefix$binsuffix"
> if test "$mingw32" = "no" ; then
> echo "Manual directory $prefix$mansuffix"
> +echo "Info directory $prefix$infosuffix"
> echo "ELF interp prefix $interp_prefix"
> fi
> echo "Source path $source_path"
> @@ -2215,6 +2218,7 @@ echo "ROMS=$roms" >> $config_host_mak
> echo "prefix=$prefix" >> $config_host_mak
> echo "bindir=\${prefix}$binsuffix" >> $config_host_mak
> echo "mandir=\${prefix}$mansuffix" >> $config_host_mak
> +echo "infodir=\${prefix}$infosuffix" >> $config_host_mak
> echo "datadir=\${prefix}$datasuffix" >> $config_host_mak
> echo "sysconfdir=$sysconfdir" >> $config_host_mak
> echo "docdir=\${prefix}$docsuffix" >> $config_host_mak
> diff --git a/qemu-doc.texi b/qemu-doc.texi
> index 2fb5c0b..eba6437 100644
> --- a/qemu-doc.texi
> +++ b/qemu-doc.texi
> @@ -6,6 +6,12 @@
> @paragraphindent 0
> @c %**end of header
>
> address@hidden
> address@hidden
> +* QEMU: (qemu-doc). The QEMU Emulator User Documentation.
> address@hidden direntry
> address@hidden ifinfo
> +
> @iftex
> @titlepage
> @sp 7
> diff --git a/qemu-tech.texi b/qemu-tech.texi
> index 97d8dea..52560dc 100644
> --- a/qemu-tech.texi
> +++ b/qemu-tech.texi
> @@ -6,6 +6,12 @@
> @paragraphindent 0
> @c %**end of header
>
> address@hidden
> address@hidden
> +* QEMU Internals: (qemu-tech). The QEMU Emulator Internals.
> address@hidden direntry
> address@hidden ifinfo
> +
> @iftex
> @titlepage
> @sp 7
>

Hi Dirk,

there is already a patch which adds pdf support:
http://lists.gnu.org/archive/html/qemu-devel/2010-01/msg02076.html
is waiting for a commit. This former patch is less noisy
by default when pdf (or dvi) files are build.

The @direntry part of your patch for qemu-*.texi is new.
If you want to get it included in the official qemu,
you should send it as a signed git patch (works best
with git send-email).

I don't know whether extended install targets are needed.
Personally, I did not miss them because I never use any
of the existing install targets.

Regards,
Stefan





reply via email to

[Prev in Thread] Current Thread [Next in Thread]