From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:59462) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Qzbb0-0007ae-RG for qemu-devel@nongnu.org; Fri, 02 Sep 2011 17:48:19 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Qzbaz-0005Md-PW for qemu-devel@nongnu.org; Fri, 02 Sep 2011 17:48:18 -0400 Received: from cpe-70-123-132-139.austin.res.rr.com ([70.123.132.139]:57119 helo=localhost6.localdomain6) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Qzbaz-0005MK-JY for qemu-devel@nongnu.org; Fri, 02 Sep 2011 17:48:17 -0400 From: Anthony Liguori Date: Fri, 2 Sep 2011 16:47:59 -0500 Message-Id: <1315000083-20576-2-git-send-email-aliguori@us.ibm.com> In-Reply-To: <1315000083-20576-1-git-send-email-aliguori@us.ibm.com> References: <1315000083-20576-1-git-send-email-aliguori@us.ibm.com> Subject: [Qemu-devel] [PATCH 1/5] configure: add --disable-tcg configure option List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Anthony Liguori , Alex Graf , Stefano Stabellini This lets you build without TCG (KVM only). When this flag is passed to configure, it will automatically filter out the target list to only those that support KVM. I guess the same could be done for Xen but I'll let the Xen folks figure that one out :-) Signed-off-by: Anthony Liguori --- configure | 40 +++++++++++++++++++++++++++++++++++++++- 1 files changed, 39 insertions(+), 1 deletions(-) diff --git a/configure b/configure index a8ea688..04f121c 100755 --- a/configure +++ b/configure @@ -130,6 +130,7 @@ xen_ctrl_version="" linux_aio="" attr="" xfs="" +tcg="yes" vhost_net="no" kvm="no" @@ -643,6 +644,10 @@ for opt do ;; --enable-kvm) kvm="yes" ;; + --disable-tcg) tcg="no" + ;; + --enable-tcg) tcg="yes" + ;; --disable-spice) spice="no" ;; --enable-spice) spice="yes" @@ -2877,7 +2882,6 @@ qemu_version=`head $source_path/VERSION` echo "VERSION=$qemu_version" >>$config_host_mak echo "PKGVERSION=$pkgversion" >>$config_host_mak echo "SRC_PATH=$source_path" >> $config_host_mak -echo "TARGET_DIRS=$target_list" >> $config_host_mak if [ "$docs" = "yes" ] ; then echo "BUILD_DOCS=yes" >> $config_host_mak fi @@ -3135,6 +3139,23 @@ if test "$static" = "no" -a "$user_pie" = "yes" ; then echo "QEMU_CFLAGS+=-fpie" > libdis-user/config.mak fi +kvm_incompatible() { + if test "$kvm" = "yes" -a \ + \( "$1" = "$cpu" -o \ + \( "$1" = "ppcemb" -a "$cpu" = "ppc" \) -o \ + \( "$1" = "ppc64" -a "$cpu" = "ppc" \) -o \ + \( "$1" = "ppc" -a "$cpu" = "ppc64" \) -o \ + \( "$1" = "ppcemb" -a "$cpu" = "ppc64" \) -o \ + \( "$1" = "x86_64" -a "$cpu" = "i386" \) -o \ + \( "$1" = "i386" -a "$cpu" = "x86_64" \) \) ; then + return 1 + else + return 0 + fi +} + +target_list2= + for target in $target_list; do target_dir="$target" config_target_mak=$target_dir/config-target.mak @@ -3185,6 +3206,17 @@ case "$target" in ;; esac +if test "$tcg" = "no"; then + if test "$target_softmmu" = "no"; then + continue; + fi + if kvm_incompatible "$target_arch2"; then + continue; + fi +fi + +target_list2="$target $target_list2" + mkdir -p $target_dir mkdir -p $target_dir/fpu mkdir -p $target_dir/tcg @@ -3213,6 +3245,10 @@ TARGET_ARCH="$target_arch2" TARGET_BASE_ARCH="" TARGET_ABI_DIR="" +if test "$tcg" = "yes"; then + echo "CONFIG_TCG=1" >> $config_target_mak +fi + case "$target_arch2" in i386) target_phys_bits=64 @@ -3598,6 +3634,8 @@ echo "QEMU_INCLUDES+=$includes" >> $config_target_mak done # for target in $targets +echo "TARGET_DIRS=$target_list2" >> $config_host_mak + # build tree in object directory in case the source is not in the current directory DIRS="tests tests/cris slirp audio block net pc-bios/optionrom" DIRS="$DIRS pc-bios/spapr-rtas" -- 1.7.4.1