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>
This commit is contained in:
		
							parent
							
								
									c886edfb85
								
							
						
					
					
						commit
						023367e6cd
					
				| 
						 | 
				
			
			@ -2509,6 +2509,29 @@ if test "$trace_backend" = "dtrace"; then
 | 
			
		|||
  fi
 | 
			
		||||
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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue