Polish the version strings containing the package version
Since commit67a1de0d19
there is no space anymore between the version number and the parentheses when running configure with --with-pkgversion=foo : $ qemu-system-s390x --version QEMU emulator version 2.11.50(foo) But the space is included when building without that option when building from a git checkout: $ qemu-system-s390x --version QEMU emulator version 2.11.50 (v2.11.0-1494-gbec9c64-dirty) The same confusion exists with the "query-version" QMP command. Let's fix this by introducing a proper QEMU_FULL_VERSION definition that includes the space and parentheses, while the QEMU_PKGVERSION should just cleanly contain the package version string itself. Note that this also changes the behavior of the "query-version" QMP command (the space and parentheses are not included there anymore), but that's supposed to be OK since the strings there are not meant to be parsed by other tools. Fixes:67a1de0d19
Buglink: https://bugs.launchpad.net/qemu/+bug/1673373 Signed-off-by: Thomas Huth <thuth@redhat.com> Message-Id: <1518692807-25859-1-git-send-email-thuth@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
8cc436d9c5
commit
7e563bfb8a
20
Makefile
20
Makefile
@ -434,21 +434,23 @@ all: $(DOCS) $(TOOLS) $(HELPERS-y) recurse-all modules
|
||||
qemu-version.h: FORCE
|
||||
$(call quiet-command, \
|
||||
(cd $(SRC_PATH); \
|
||||
printf '#define QEMU_PKGVERSION '; \
|
||||
if test -n "$(PKGVERSION)"; then \
|
||||
printf '"$(PKGVERSION)"\n'; \
|
||||
pkgvers="$(PKGVERSION)"; \
|
||||
else \
|
||||
if test -d .git; then \
|
||||
printf '" ('; \
|
||||
git describe --match 'v*' 2>/dev/null | tr -d '\n'; \
|
||||
pkgvers=$$(git describe --match 'v*' 2>/dev/null | tr -d '\n');\
|
||||
if ! git diff-index --quiet HEAD &>/dev/null; then \
|
||||
printf -- '-dirty'; \
|
||||
pkgvers="$${pkgvers}-dirty"; \
|
||||
fi; \
|
||||
printf ')"\n'; \
|
||||
else \
|
||||
printf '""\n'; \
|
||||
fi; \
|
||||
fi) > $@.tmp)
|
||||
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; \
|
||||
) > $@.tmp)
|
||||
$(call quiet-command, if ! cmp -s $@ $@.tmp; then \
|
||||
mv $@.tmp $@; \
|
||||
else \
|
||||
|
@ -649,7 +649,7 @@ void cpu_loop(CPUSPARCState *env)
|
||||
|
||||
static void usage(void)
|
||||
{
|
||||
printf("qemu-" TARGET_NAME " version " QEMU_VERSION QEMU_PKGVERSION
|
||||
printf("qemu-" TARGET_NAME " version " QEMU_FULL_VERSION
|
||||
"\n" QEMU_COPYRIGHT "\n"
|
||||
"usage: qemu-" TARGET_NAME " [options] program [arguments...]\n"
|
||||
"BSD CPU emulator (compiled for %s emulation)\n"
|
||||
|
2
configure
vendored
2
configure
vendored
@ -1163,7 +1163,7 @@ for opt do
|
||||
;;
|
||||
--disable-blobs) blobs="no"
|
||||
;;
|
||||
--with-pkgversion=*) pkgversion=" ($optarg)"
|
||||
--with-pkgversion=*) pkgversion="$optarg"
|
||||
;;
|
||||
--with-coroutine=*) coroutine="$optarg"
|
||||
;;
|
||||
|
@ -4163,7 +4163,7 @@ static void handle_arg_strace(const char *arg)
|
||||
|
||||
static void handle_arg_version(const char *arg)
|
||||
{
|
||||
printf("qemu-" TARGET_NAME " version " QEMU_VERSION QEMU_PKGVERSION
|
||||
printf("qemu-" TARGET_NAME " version " QEMU_FULL_VERSION
|
||||
"\n" QEMU_COPYRIGHT "\n");
|
||||
exit(EXIT_SUCCESS);
|
||||
}
|
||||
|
@ -46,7 +46,7 @@
|
||||
#include "crypto/init.h"
|
||||
#include "trace/control.h"
|
||||
|
||||
#define QEMU_IMG_VERSION "qemu-img version " QEMU_VERSION QEMU_PKGVERSION \
|
||||
#define QEMU_IMG_VERSION "qemu-img version " QEMU_FULL_VERSION \
|
||||
"\n" QEMU_COPYRIGHT "\n"
|
||||
|
||||
typedef struct img_cmd_t {
|
||||
|
@ -558,7 +558,7 @@ int main(int argc, char **argv)
|
||||
trace_file = trace_opt_parse(optarg);
|
||||
break;
|
||||
case 'V':
|
||||
printf("%s version " QEMU_VERSION QEMU_PKGVERSION "\n"
|
||||
printf("%s version " QEMU_FULL_VERSION "\n"
|
||||
QEMU_COPYRIGHT "\n", progname);
|
||||
exit(0);
|
||||
case 'h':
|
||||
|
@ -130,7 +130,7 @@ QEMU_HELP_BOTTOM "\n"
|
||||
static void version(const char *name)
|
||||
{
|
||||
printf(
|
||||
"%s " QEMU_VERSION QEMU_PKGVERSION "\n"
|
||||
"%s " QEMU_FULL_VERSION "\n"
|
||||
"Written by Anthony Liguori.\n"
|
||||
"\n"
|
||||
QEMU_COPYRIGHT "\n"
|
||||
|
@ -218,7 +218,7 @@ static void usage(const char *cmd)
|
||||
{
|
||||
printf(
|
||||
"Usage: %s [-m <method> -p <path>] [<options>]\n"
|
||||
"QEMU Guest Agent " QEMU_VERSION QEMU_PKGVERSION "\n"
|
||||
"QEMU Guest Agent " QEMU_FULL_VERSION "\n"
|
||||
QEMU_COPYRIGHT "\n"
|
||||
"\n"
|
||||
" -m, --method transport method: one of unix-listen, virtio-serial,\n"
|
||||
|
@ -102,7 +102,7 @@ QEMU_HELP_BOTTOM "\n"
|
||||
static void version(const char *name)
|
||||
{
|
||||
printf(
|
||||
"%s " QEMU_VERSION QEMU_PKGVERSION "\n"
|
||||
"%s " QEMU_FULL_VERSION "\n"
|
||||
"Written by Paolo Bonzini.\n"
|
||||
"\n"
|
||||
QEMU_COPYRIGHT "\n"
|
||||
|
@ -1330,7 +1330,7 @@ QemuCocoaView *cocoaView;
|
||||
/* Create the version string*/
|
||||
NSString *version_string;
|
||||
version_string = [[NSString alloc] initWithFormat:
|
||||
@"QEMU emulator version %s%s", QEMU_VERSION, QEMU_PKGVERSION];
|
||||
@"QEMU emulator version %s", QEMU_FULL_VERSION];
|
||||
[version_label setStringValue: version_string];
|
||||
[superView addSubview: version_label];
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user