configure: fix TPM logic
A non-native i386 or x86_64 emulator should not have TPM passthrough
support, since the TPM is only present for those hosts.
Reviewed-by: Andreas Färber <afaerber@suse.de>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
diff --git a/configure b/configure
index 258c82a..1c1e369 100755
--- a/configure
+++ b/configure
@@ -2337,6 +2337,15 @@
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 \
@@ -3436,6 +3445,7 @@
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"
@@ -3811,6 +3821,14 @@
;;
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
@@ -4338,12 +4356,6 @@
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