w32: Fix build with older gcc (unresolved symbol)

The cross i586-mingw32msvc-gcc 4.4.4 from Debian Squeeze does not support
__sync_val_compare_and_swap by default.

Using -march=i686 fixes that and should also result in better code.

Signed-off-by: Stefan Weil <sw@weilnetz.de>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
This commit is contained in:
Stefan Weil 2013-03-29 18:20:20 +01:00 committed by Blue Swirl
parent e06335b951
commit 5e3a0f418c
1 changed files with 5 additions and 0 deletions

5
configure vendored
View File

@ -562,6 +562,11 @@ if test "$mingw32" = "yes" ; then
QEMU_CFLAGS="-DWIN32_LEAN_AND_MEAN -DWINVER=0x501 $QEMU_CFLAGS"
# enable C99/POSIX format strings (needs mingw32-runtime 3.15 or later)
QEMU_CFLAGS="-D__USE_MINGW_ANSI_STDIO=1 $QEMU_CFLAGS"
if test "$cpu" = "i386"; then
# We need something better than i386 for __sync_val_compare_and_swap
# and can expect that QEMU will only run on i686 or later.
QEMU_CFLAGS="-march=i686 $QEMU_CFLAGS"
fi
LIBS="-lwinmm -lws2_32 -liphlpapi $LIBS"
cat > $TMPC << EOF
int main(void) { return 0; }