All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Andreas Färber" <afaerber@suse.de>
To: Stefan Hajnoczi <stefanha@redhat.com>, qemu-devel@nongnu.org
Cc: Paolo Bonzini <pbonzini@redhat.com>, Stefan Weil <sw@weilnetz.de>
Subject: Re: [Qemu-devel] [PATCH 2/2] tests: correctly skip qtest on non-POSIX hosts
Date: Thu, 27 Mar 2014 13:22:54 +0100	[thread overview]
Message-ID: <5334181E.1000902@suse.de> (raw)
In-Reply-To: <1395918686-27043-3-git-send-email-stefanha@redhat.com>

Am 27.03.2014 12:11, schrieb Stefan Hajnoczi:
> qtest test cases only work on POSIX hosts.  The following line only
> defines dependencies for qtest binaries on POSIX hosts:
> 
>   check-qtest-$(CONFIG_POSIX)=$(foreach TARGET,$(TARGETS),$(check-qtest-$(TARGET)-y))
> 
> But the QTEST_TARGETS definition earlier in the Makefile fails to check
> CONFIG_POSIX.  The causes targets to be generated for qtest test cases
> even though we don't know how to build the binaries.
> 
> The following error message is printed when trying to run gtester on a
> binary that was never built:
> 
>   GLib-WARNING **: Failed to execute test binary: tests/endianness-test.exe: Failed to execute child process "tests/endianness-test.exe" (No such file or directory)
> 
> This patch makes QTEST_TARGETS empty on non-POSIX hosts.  This prevents
> the targets from being generated.
> 
> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
> ---
>  tests/Makefile | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/tests/Makefile b/tests/Makefile
> index 803c8e6..e1960c1 100644
> --- a/tests/Makefile
> +++ b/tests/Makefile
> @@ -277,7 +277,8 @@ tests/qemu-iotests/socket_scm_helper$(EXESUF): tests/qemu-iotests/socket_scm_hel
>  # QTest rules
>  
>  TARGETS=$(patsubst %-softmmu,%, $(filter %-softmmu,$(TARGET_DIRS)))
> -QTEST_TARGETS=$(foreach TARGET,$(TARGETS), $(if $(check-qtest-$(TARGET)-y), $(TARGET),))
> +QTEST_TARGETS=$(foreach TARGET,$(TARGETS), \
> +                $(if $(check-qtest-$(TARGET)-$(CONFIG_POSIX)), $(TARGET),))

This strikes me as wrong. Essentially this is working around the fact
that tests get added to -y although they should've been added for
$(CONFIG_POSIX) only. I have a patch pending that adds a virtio-9p
qtest, which is conditional on having the three ugly conditions evaluate
to y, and otherwise will evaluate to -n. So this new query would
actually find a non-empty -n variable on !CONFIG_POSIX and would still
add the target to QTEST_TARGETS.

My suggestion would be to simply put this line into ifeq
($(CONFIG_POSIX),y) to keep the logic simple and safe.

Regards,
Andreas

>  check-qtest-$(CONFIG_POSIX)=$(foreach TARGET,$(TARGETS), $(check-qtest-$(TARGET)-y))
>  
>  qtest-obj-y = tests/libqtest.o libqemuutil.a libqemustub.a

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg

  reply	other threads:[~2014-03-27 12:23 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-03-27 11:11 [Qemu-devel] [PATCH 0/2] tests: mingw32 make check fixes Stefan Hajnoczi
2014-03-27 11:11 ` [Qemu-devel] [PATCH 1/2] tests: skip POSIX-only tests on Windows Stefan Hajnoczi
2014-03-27 11:53   ` Paolo Bonzini
2014-03-27 14:01     ` Stefan Hajnoczi
2014-03-27 14:07       ` Andreas Färber
2014-03-27 21:21     ` Stefan Weil
2014-03-27 11:11 ` [Qemu-devel] [PATCH 2/2] tests: correctly skip qtest on non-POSIX hosts Stefan Hajnoczi
2014-03-27 12:22   ` Andreas Färber [this message]
2014-03-27 11:14 ` [Qemu-devel] [PATCH 0/2] tests: mingw32 make check fixes Stefan Hajnoczi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5334181E.1000902@suse.de \
    --to=afaerber@suse.de \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@redhat.com \
    --cc=sw@weilnetz.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.