[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 10/11] Makefile: Abstract out "identify the pkgv
From: |
Alex Bennée |
Subject: |
Re: [Qemu-devel] [PATCH 10/11] Makefile: Abstract out "identify the pkgversion" code |
Date: |
Fri, 01 Feb 2019 16:59:11 +0000 |
User-agent: |
mu4e 1.0; emacs 26.1 |
Peter Maydell <address@hidden> writes:
> Abstract out the "identify the pkgversion" code from the
> rule for creating qemu-version.h, so it sets makefile
> variables for QEMU_PKGVERSION and QEMU_FULL_VERSION.
> (We will want to use these when building the Sphinx docs.)
>
> Signed-off-by: Peter Maydell <address@hidden>
Reviewed-by: Alex Bennée <address@hidden>
> ---
> Makefile | 33 ++++++++++++++++-----------------
> 1 file changed, 16 insertions(+), 17 deletions(-)
>
> diff --git a/Makefile b/Makefile
> index d519fadee39..2d19d28a271 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -87,6 +87,20 @@ endif
>
> include $(SRC_PATH)/rules.mak
>
> +# Create QEMU_PKGVERSION and FULL_VERSION strings
> +# If PKGVERSION is set, use that; otherwise get version and -dirty status
> from git
> +QEMU_PKGVERSION := $(if $(PKGVERSION),$(PKGVERSION),$(shell \
> + cd $(SRC_PATH); \
> + if test -d .git; then \
> + git describe --match 'v*' 2>/dev/null | tr -d '\n'; \
> + if ! git diff-index --quiet HEAD &>/dev/null; then \
> + echo "-dirty"; \
> + fi; \
> + fi))
> +
> +# Either "version (pkgversion)", or just "version" if pkgversion not set
> +FULL_VERSION := $(if $(QEMU_PKGVERSION),$(VERSION)
> ($(QEMU_PKGVERSION)),$(VERSION))
> +
> GENERATED_FILES = qemu-version.h config-host.h qemu-options.def
>
> #see Makefile.objs for the definition of QAPI_MODULES
> @@ -391,23 +405,8 @@ all: $(DOCS) sphinxdocs $(TOOLS) $(HELPERS-y)
> recurse-all modules
>
> qemu-version.h: FORCE
> $(call quiet-command, \
> - (cd $(SRC_PATH); \
> - if test -n "$(PKGVERSION)"; then \
> - pkgvers="$(PKGVERSION)"; \
> - else \
> - if test -d .git; then \
> - pkgvers=$$(git describe --match 'v*'
> 2>/dev/null | tr -d '\n');\
> - if ! git diff-index --quiet HEAD &>/dev/null;
> then \
> - pkgvers="$${pkgvers}-dirty"; \
> - fi; \
> - fi; \
> - fi; \
> - printf "#define QEMU_PKGVERSION \"$${pkgvers}\"\n"; \
> - if test -n "$${pkgvers}"; then \
> - printf '#define QEMU_FULL_VERSION QEMU_VERSION " ("
> QEMU_PKGVERSION ")"\n'; \
> - else \
> - printf '#define QEMU_FULL_VERSION QEMU_VERSION\n'; \
> - fi; \
> + (printf '#define QEMU_PKGVERSION "$(QEMU_PKGVERSION)"\n'; \
> + printf '#define QEMU_FULL_VERSION "$(FULL_VERSION)"\n'; \
> ) > address@hidden)
> $(call quiet-command, if ! cmp -s $@ address@hidden; then \
> mv address@hidden $@; \
--
Alex Bennée
- [Qemu-devel] [PATCH 08/11] Separate conf.py for each manual we want, (continued)
- [Qemu-devel] [PATCH 10/11] Makefile: Abstract out "identify the pkgversion" code, Peter Maydell, 2019/02/01
- Re: [Qemu-devel] [PATCH 10/11] Makefile: Abstract out "identify the pkgversion" code,
Alex Bennée <=
- Re: [Qemu-devel] [PATCH 00/11] Enable build and install of our rST docs, no-reply, 2019/02/01
- Re: [Qemu-devel] [PATCH 00/11] Enable build and install of our rST docs, no-reply, 2019/02/01
- Re: [Qemu-devel] [PATCH 00/11] Enable build and install of our rST docs, no-reply, 2019/02/01
- Re: [Qemu-devel] [PATCH 00/11] Enable build and install of our rST docs, no-reply, 2019/02/01
- Re: [Qemu-devel] [PATCH 00/11] Enable build and install of our rST docs, no-reply, 2019/02/01
- Re: [Qemu-devel] [PATCH 00/11] Enable build and install of our rST docs, no-reply, 2019/02/01
- Re: [Qemu-devel] [PATCH 00/11] Enable build and install of our rST docs, no-reply, 2019/02/01
- Re: [Qemu-devel] [PATCH 00/11] Enable build and install of our rST docs, no-reply, 2019/02/01
- Re: [Qemu-devel] [PATCH 00/11] Enable build and install of our rST docs, no-reply, 2019/02/01