diff options
author | Wolfgang Mauerer <wolfgang.mauerer@siemens.com> | 2011-07-11 14:57:43 +0200 |
---|---|---|
committer | Anthony Liguori <aliguori@us.ibm.com> | 2011-08-04 16:19:04 -0500 |
commit | 9096de69fff3cf34a848e8db3ffddc55cc64adb8 (patch) | |
tree | ce18a72333187d1c573249dd116d993d1949f86b | |
parent | guest agent: add --enable-guest-agent config option (diff) | |
download | qemu-kvm-9096de69fff3cf34a848e8db3ffddc55cc64adb8.tar.gz qemu-kvm-9096de69fff3cf34a848e8db3ffddc55cc64adb8.tar.bz2 qemu-kvm-9096de69fff3cf34a848e8db3ffddc55cc64adb8.zip |
vhost build fix for i386
vhost.c uses __sync_fetch_and_and(), which is only
available for -march=i486 and above (see
https://bugzilla.redhat.com/show_bug.cgi?id=624279).
Signed-off-by: Wolfgang Mauerer <wolfgang.mauerer@siemens.com>
Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
(cherry picked from commit 023367e6cd41199521613674b44e9c703c8be1a1)
-rwxr-xr-x | configure | 23 |
1 files changed, 23 insertions, 0 deletions
@@ -2521,6 +2521,29 @@ if test "$trace_backend" = "dtrace"; then fi ########################################## +# __sync_fetch_and_and requires at least -march=i486. Many toolchains +# use i686 as default anyway, but for those that don't, an explicit +# specification is necessary +if test $vhost_net = "yes" && test $cpu = "i386"; then + cat > $TMPC << EOF +int sfaa(unsigned *ptr) +{ + return __sync_fetch_and_and(ptr, 0); +} + +int main(int argc, char **argv) +{ + int val = 42; + sfaa(&val); + return val; +} +EOF + if ! compile_prog "" "" ; then + CFLAGS+="-march=i486" + fi +fi + +########################################## # End of CC checks # After here, no more $cc or $ld runs |