mirror of https://github.com/xemu-project/xemu.git
configure: add configure check for ntdddisk.h
This header file provides w32 ioctl definitions for working with disk devices. Older versions of mingw do not expose this in a useable way, so add a configure check and report it via CONFIG_QGA_NTDDSCSI. Subsequent patches will use this macro to stub out functionality that relies on this in cases where it's not available. Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
This commit is contained in:
parent
d2b3f390d4
commit
50cbebb9a3
|
@ -315,6 +315,7 @@ snappy=""
|
||||||
bzip2=""
|
bzip2=""
|
||||||
guest_agent=""
|
guest_agent=""
|
||||||
guest_agent_with_vss="no"
|
guest_agent_with_vss="no"
|
||||||
|
guest_agent_ntddscsi="no"
|
||||||
guest_agent_msi=""
|
guest_agent_msi=""
|
||||||
vss_win32_sdk=""
|
vss_win32_sdk=""
|
||||||
win_sdk="no"
|
win_sdk="no"
|
||||||
|
@ -3819,6 +3820,25 @@ if test "$mingw32" = "yes" -a "$guest_agent" != "no" -a "$guest_agent_with_vss"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
##########################################
|
||||||
|
# check if mingw environment provides a recent ntddscsi.h
|
||||||
|
if test "$mingw32" = "yes" -a "$guest_agent" != "no"; then
|
||||||
|
cat > $TMPC << EOF
|
||||||
|
#include <windows.h>
|
||||||
|
#include <ntddscsi.h>
|
||||||
|
int main(void) {
|
||||||
|
#if !defined(IOCTL_SCSI_GET_ADDRESS)
|
||||||
|
#error Missing required ioctl definitions
|
||||||
|
#endif
|
||||||
|
SCSI_ADDRESS addr = { .Lun = 0, .TargetId = 0, .PathId = 0 };
|
||||||
|
return addr.Lun;
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
if compile_prog "" "" ; then
|
||||||
|
guest_agent_ntddscsi=yes
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
##########################################
|
##########################################
|
||||||
# Guest agent Window MSI package
|
# Guest agent Window MSI package
|
||||||
|
|
||||||
|
@ -4489,6 +4509,7 @@ echo "libiscsi support $libiscsi"
|
||||||
echo "libnfs support $libnfs"
|
echo "libnfs support $libnfs"
|
||||||
echo "build guest agent $guest_agent"
|
echo "build guest agent $guest_agent"
|
||||||
echo "QGA VSS support $guest_agent_with_vss"
|
echo "QGA VSS support $guest_agent_with_vss"
|
||||||
|
echo "QGA w32 disk info $guest_agent_ntddscsi"
|
||||||
echo "seccomp support $seccomp"
|
echo "seccomp support $seccomp"
|
||||||
echo "coroutine backend $coroutine"
|
echo "coroutine backend $coroutine"
|
||||||
echo "coroutine pool $coroutine_pool"
|
echo "coroutine pool $coroutine_pool"
|
||||||
|
@ -4566,6 +4587,9 @@ if test "$mingw32" = "yes" ; then
|
||||||
echo "CONFIG_QGA_VSS=y" >> $config_host_mak
|
echo "CONFIG_QGA_VSS=y" >> $config_host_mak
|
||||||
echo "WIN_SDK=\"$win_sdk\"" >> $config_host_mak
|
echo "WIN_SDK=\"$win_sdk\"" >> $config_host_mak
|
||||||
fi
|
fi
|
||||||
|
if test "$guest_agent_ntddscsi" = "yes" ; then
|
||||||
|
echo "CONFIG_QGA_NTDDDISK=y" >> $config_host_mak
|
||||||
|
fi
|
||||||
if test "$guest_agent_msi" != "no"; then
|
if test "$guest_agent_msi" != "no"; then
|
||||||
echo "QEMU_GA_MSI_ENABLED=yes" >> $config_host_mak
|
echo "QEMU_GA_MSI_ENABLED=yes" >> $config_host_mak
|
||||||
echo "QEMU_GA_MSI_MINGW_DLL_PATH=${QEMU_GA_MSI_MINGW_DLL_PATH}" >> $config_host_mak
|
echo "QEMU_GA_MSI_MINGW_DLL_PATH=${QEMU_GA_MSI_MINGW_DLL_PATH}" >> $config_host_mak
|
||||||
|
|
Loading…
Reference in New Issue