Commit 5e3a0f41 authored by Stefan Weil's avatar Stefan Weil Committed by Blue Swirl
Browse files

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: default avatarStefan Weil <sw@weilnetz.de>
Signed-off-by: default avatarBlue Swirl <blauwirbel@gmail.com>
parent e06335b9
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -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; }