From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bandan Das Subject: [PATCH] x86-run: Print a meaningful message if the qemu binary isn't found Date: Wed, 01 Apr 2015 17:12:09 -0400 Message-ID: Mime-Version: 1.0 Content-Type: text/plain Cc: Paolo Bonzini , Marcelo Tosatti To: kvm@vger.kernel.org Return-path: Received: from mx1.redhat.com ([209.132.183.28]:49207 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752628AbbDAVML (ORCPT ); Wed, 1 Apr 2015 17:12:11 -0400 Received: from int-mx11.intmail.prod.int.phx2.redhat.com (int-mx11.intmail.prod.int.phx2.redhat.com [10.5.11.24]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id t31LCBOF026168 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL) for ; Wed, 1 Apr 2015 17:12:11 -0400 Sender: kvm-owner@vger.kernel.org List-ID: Before: ./x86-run ./x86/msr.flat QEMU binary has no support for test device. Exiting. After: ./x86-run ./x86/msr.flat A QEMU binary was not found, You can set a custom location by using the QEMU= environment variable Signed-off-by: Bandan Das --- x86/run | 37 ++++++++++++++++++++++++++----------- 1 file changed, 26 insertions(+), 11 deletions(-) diff --git a/x86/run b/x86/run index af37eb4..d5adf8d 100755 --- a/x86/run +++ b/x86/run @@ -1,20 +1,35 @@ #!/bin/bash +NOTFOUND=1 +TESTDEVNOTSUPP=2 qemukvm="${QEMU:-qemu-kvm}" qemusystem="${QEMU:-qemu-system-x86_64}" -if - ${qemukvm} -device '?' 2>&1 | grep -F -e \"testdev\" -e \"pc-testdev\" > /dev/null; + +if ! [ -z "${QEMU}" ] then - qemu="${qemukvm}" + qemu="${QEMU}" else - if - ${qemusystem} -device '?' 2>&1 | grep -F -e \"testdev\" -e \"pc-testdev\" > /dev/null; - then - qemu="${qemusystem}" - else - echo QEMU binary ${QEMU} has no support for test device. Exiting. - exit 2 - fi + for qemucmds in ${qemukvm} ${qemusystem} + do + unset QEMUFOUND + unset qemu + if ! [ -z "${QEMUFOUND=$(${qemucmds} --help 2>/dev/null | grep "QEMU")}" ] && + ${qemucmds} -device '?' 2>&1 | grep -F -e \"testdev\" -e \"pc-testdev\" > /dev/null; + then + qemu="${qemucmds}" + break + fi + done +fi + +if [ -z "${QEMUFOUND}" ] +then + echo "A QEMU binary was not found, You can set a custom location by using the QEMU= environment variable " + exit ${NOTFOUND} +elif [ -z "${qemu}" ] +then + echo "No Qemu test device support found" + exit ${TESTDEVNOTSUPP} fi if -- 2.1.0