From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:43631) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UHe3w-0001v2-3t for qemu-devel@nongnu.org; Mon, 18 Mar 2013 13:41:37 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UHdyI-0001p0-FO for qemu-devel@nongnu.org; Mon, 18 Mar 2013 13:35:51 -0400 Received: from mail-bk0-x235.google.com ([2a00:1450:4008:c01::235]:35530) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UHdyI-0001oq-6o for qemu-devel@nongnu.org; Mon, 18 Mar 2013 13:35:42 -0400 Received: by mail-bk0-f53.google.com with SMTP id j10so2617581bkw.40 for ; Mon, 18 Mar 2013 10:35:41 -0700 (PDT) Sender: Paolo Bonzini From: Paolo Bonzini Date: Mon, 18 Mar 2013 18:34:53 +0100 Message-Id: <1363628125-5310-4-git-send-email-pbonzini@redhat.com> In-Reply-To: <1363628125-5310-1-git-send-email-pbonzini@redhat.com> References: <1363628125-5310-1-git-send-email-pbonzini@redhat.com> Subject: [Qemu-devel] [PATCH 03/35] configure: fix TPM logic List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org A non-native i386 or x86_64 emulator should not have TPM passthrough support, since the TPM is only present for those hosts. Signed-off-by: Paolo Bonzini --- configure | 24 ++++++++++++++++++------ default-configs/i386-softmmu.mak | 3 +-- default-configs/x86_64-softmmu.mak | 3 +-- tpm/Makefile.objs | 4 +--- 4 files changed, 21 insertions(+), 13 deletions(-) diff --git a/configure b/configure index 46a7594..667b5be 100755 --- a/configure +++ b/configure @@ -2350,6 +2350,15 @@ EOF fi ########################################## +# TPM passthrough is only on x86 Linux + +if test "$targetos" = Linux && test "$cpu" = i386 -o "$cpu" = x86_64; then + tpm_passthrough=$tpm +else + tpm_passthrough=no +fi + +########################################## # adjust virtio-blk-data-plane based on linux-aio if test "$virtio_blk_data_plane" = "yes" -a \ @@ -3439,6 +3448,7 @@ echo "virtio-blk-data-plane $virtio_blk_data_plane" echo "gcov $gcov_tool" echo "gcov enabled $gcov" echo "TPM support $tpm" +echo "TPM passthrough $tpm_passthrough" if test "$sdl_too_old" = "yes"; then echo "-> Your SDL version is too old - please upgrade to have SDL support" @@ -3821,6 +3831,14 @@ bsd) ;; esac +# TPM passthrough support? +if test "$tpm" = "yes"; then + echo "CONFIG_TPM=$(CONFIG_SOFTMMU)" >> $config_host_mak + if test "$tpm_passthrough" = "yes"; then + echo "CONFIG_TPM_PASSTHROUGH=y" >> $config_host_mak + fi +fi + # use default implementation for tracing backend-specific routines trace_default=yes echo "TRACE_BACKEND=$trace_backend" >> $config_host_mak @@ -4351,12 +4369,6 @@ if test "$gprof" = "yes" ; then fi fi -if test "$tpm" = "yes"; then - if test "$target_softmmu" = "yes" ; then - echo "CONFIG_TPM=y" >> $config_host_mak - fi -fi - if test "$ARCH" = "tci"; then linker_script="" else diff --git a/default-configs/i386-softmmu.mak b/default-configs/i386-softmmu.mak index df9e126..7d8908f 100644 --- a/default-configs/i386-softmmu.mak +++ b/default-configs/i386-softmmu.mak @@ -26,5 +26,4 @@ CONFIG_HPET=y CONFIG_APPLESMC=y CONFIG_I8259=y CONFIG_PFLASH_CFI01=y -CONFIG_TPM_TIS=y -CONFIG_TPM_PASSTHROUGH=y +CONFIG_TPM_TIS=$(CONFIG_TPM) diff --git a/default-configs/x86_64-softmmu.mak b/default-configs/x86_64-softmmu.mak index ab3cd5f..e87e644 100644 --- a/default-configs/x86_64-softmmu.mak +++ b/default-configs/x86_64-softmmu.mak @@ -26,5 +26,4 @@ CONFIG_HPET=y CONFIG_APPLESMC=y CONFIG_I8259=y CONFIG_PFLASH_CFI01=y -CONFIG_TPM_TIS=y -CONFIG_TPM_PASSTHROUGH=y +CONFIG_TPM_TIS=$(CONFIG_TPM) diff --git a/tpm/Makefile.objs b/tpm/Makefile.objs index 8676824..366e4a7 100644 --- a/tpm/Makefile.objs +++ b/tpm/Makefile.objs @@ -1,6 +1,4 @@ common-obj-y = tpm.o -ifeq ($(CONFIG_TPM),y) -common-obj-y += tpm_backend.o +common-obj-$(CONFIG_TPM) += tpm_backend.o common-obj-$(CONFIG_TPM_TIS) += tpm_tis.o common-obj-$(CONFIG_TPM_PASSTHROUGH) += tpm_passthrough.o -endif -- 1.8.1.4