From 774d566cdbebb916af9760dac629aa7c1adf9d3d Mon Sep 17 00:00:00 2001 From: Peter Maydell Date: Thu, 20 Feb 2014 19:42:53 +0000 Subject: tcg/i386: Fix build for systems without working cpuid.h (MacOSX, Win32) Win32 doesn't have a cpuid.h, and MacOSX may have one but without the __cpuid() function we use, which means that commit 9d2eec20 broke the build for those platforms. Fix this by tightening up our configure cpuid.h check to test that the functions we need are present, and adding some missing #ifdef guards in tcg/i386/tcg-target.c. Signed-off-by: Peter Maydell Reviewed-by: Richard Henderson --- configure | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'configure') diff --git a/configure b/configure index 4648117..79eb54c 100755 --- a/configure +++ b/configure @@ -3564,7 +3564,18 @@ cpuid_h=no cat > $TMPC << EOF #include int main(void) { - return 0; + unsigned a, b, c, d; + int max = __get_cpuid_max(0, 0); + + if (max >= 1) { + __cpuid(1, a, b, c, d); + } + + if (max >= 7) { + __cpuid_count(7, 0, a, b, c, d); + } + + return 0; } EOF if compile_prog "" "" ; then -- cgit v1.1