[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2 10/11] Makefile: Abstract out "identify the pkgve
From: |
Peter Maydell |
Subject: |
[Qemu-devel] [PATCH v2 10/11] Makefile: Abstract out "identify the pkgversion" code |
Date: |
Thu, 28 Feb 2019 14:56:23 +0000 |
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 d6b897be0bc..46cb8e62571 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
GENERATED_QAPI_FILES = qapi/qapi-builtin-types.h qapi/qapi-builtin-types.c
@@ -392,23 +406,8 @@ all: $(DOCS) $(if $(BUILD_DOCS),sphinxdocs) $(TOOLS)
$(HELPERS-y) recurse-all mo
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 $@; \
--
2.20.1
- Re: [Qemu-devel] [PATCH v2 01/11] docs/cpu-hotplug.rst: Fix rST markup issues, (continued)
- [Qemu-devel] [PATCH v2 02/11] docs: Convert memory.txt to rst format, Peter Maydell, 2019/02/28
- [Qemu-devel] [PATCH v2 03/11] docs: Commit initial files from sphinx-quickstart, Peter Maydell, 2019/02/28
- [Qemu-devel] [PATCH v2 05/11] docs/conf.py: Configure the 'alabaster' theme, Peter Maydell, 2019/02/28
- [Qemu-devel] [PATCH v2 04/11] docs/conf.py: Disable unused _static directory, Peter Maydell, 2019/02/28
- [Qemu-devel] [PATCH v2 06/11] docs/conf.py: Don't include rST sources in HTML build, Peter Maydell, 2019/02/28
- [Qemu-devel] [PATCH v2 08/11] docs: Provide separate conf.py for each manual we want, Peter Maydell, 2019/02/28
- [Qemu-devel] [PATCH v2 07/11] docs/conf.py: Disable option warnings, Peter Maydell, 2019/02/28
- [Qemu-devel] [PATCH v2 10/11] Makefile: Abstract out "identify the pkgversion" code,
Peter Maydell <=
- [Qemu-devel] [PATCH v2 11/11] docs/conf.py: Don't hard-code QEMU version, Peter Maydell, 2019/02/28
- [Qemu-devel] [PATCH v2 09/11] Makefile, configure: Support building rST documentation, Peter Maydell, 2019/02/28
- Re: [Qemu-devel] [PATCH v2 00/11] Enable build and install of our rST docs, no-reply, 2019/02/28
- Re: [Qemu-devel] [PATCH v2 00/11] Enable build and install of our rST docs, no-reply, 2019/02/28
- Re: [Qemu-devel] [PATCH v2 00/11] Enable build and install of our rST docs, Aleksandar Markovic, 2019/02/28
- Re: [Qemu-devel] [PATCH v2 00/11] Enable build and install of our rST docs, no-reply, 2019/02/28
- Re: [Qemu-devel] [PATCH v2 00/11] Enable build and install of our rST docs, no-reply, 2019/02/28