diff options
author | Alex Bennée <alex.bennee@linaro.org> | 2018-04-10 12:19:40 +0100 |
---|---|---|
committer | Alex Bennée <alex.bennee@linaro.org> | 2018-06-20 20:22:34 +0100 |
commit | 716a507cc08e7950f213f72b958cffbdb18a1c36 (patch) | |
tree | 0d2755edc6c439736cc62f6080e7dd111852473e /configure | |
parent | d75402b5ee297291555ac9ce806507e79bbf6bf3 (diff) | |
download | qemu-716a507cc08e7950f213f72b958cffbdb18a1c36.zip qemu-716a507cc08e7950f213f72b958cffbdb18a1c36.tar.gz qemu-716a507cc08e7950f213f72b958cffbdb18a1c36.tar.bz2 |
configure: move i386_cc to cross_cc_i386
Also dont assume x86_64 compiler can build i386 binaries.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'configure')
-rwxr-xr-x | configure | 24 |
1 files changed, 17 insertions, 7 deletions
@@ -289,7 +289,6 @@ libs_softmmu="" libs_tools="" audio_pt_int="" audio_win_int="" -cc_i386=i386-pc-linux-gnu-gcc libs_qga="" debug_info="yes" stack_protector="" @@ -461,6 +460,8 @@ docker="no" # cross compilers defaults, can be overridden with --cross-cc-ARCH cross_cc_aarch64="aarch64-linux-gnu-gcc" cross_cc_arm="arm-linux-gnueabihf-gcc" +cross_cc_i386="i386-pc-linux-gnu-gcc" +cross_cc_cflags_i386="" cross_cc_powerpc="powerpc-linux-gnu-gcc" enabled_cross_compilers="" @@ -1447,7 +1448,8 @@ case "$cpu" in i386) CPU_CFLAGS="-m32" LDFLAGS="-m32 $LDFLAGS" - cc_i386='$(CC) -m32' + cross_cc_i386=$cc + cross_cc_cflags_i386=$CPU_CFLAGS ;; x86_64) # ??? Only extremely old AMD cpus do not have cmpxchg16b. @@ -1455,12 +1457,14 @@ case "$cpu" in # runtime and generate the fallback to serial emulation. CPU_CFLAGS="-m64 -mcx16" LDFLAGS="-m64 $LDFLAGS" - cc_i386='$(CC) -m32' + cross_cc_x86_64=$cc + cross_cc_cflags_x86_64=$CPU_CFLAGS ;; x32) CPU_CFLAGS="-mx32" LDFLAGS="-mx32 $LDFLAGS" - cc_i386='$(CC) -m32' + cross_cc_i386=$cc + cross_cc_cflags_i386="-m32" ;; # No special flags required for other host CPUs esac @@ -6724,7 +6728,6 @@ echo "CC=$cc" >> $config_host_mak if $iasl -h > /dev/null 2>&1; then echo "IASL=$iasl" >> $config_host_mak fi -echo "CC_I386=$cc_i386" >> $config_host_mak echo "HOST_CC=$host_cc" >> $config_host_mak echo "CXX=$cxx" >> $config_host_mak echo "OBJCC=$objcc" >> $config_host_mak @@ -6845,6 +6848,7 @@ esac target_compiler="" target_compiler_static="" +target_compiler_cflags="" mkdir -p $target_dir echo "# Automatically generated by configure - do not modify" > $config_target_mak @@ -6862,6 +6866,7 @@ case "$target_name" in i386) gdb_xml_files="i386-32bit.xml i386-32bit-core.xml i386-32bit-sse.xml" target_compiler=$cross_cc_i386 + target_compiler_cflags=$cross_cc_ccflags_i386 ;; x86_64) TARGET_BASE_ARCH=i386 @@ -7034,9 +7039,9 @@ if has $target_compiler; then write_c_skeleton - if ! do_compiler "$target_compiler" -o $TMPE $TMPC -static ; then + if ! do_compiler "$target_compiler" $target_compiler_cflags -o $TMPE $TMPC -static ; then # For host systems we might get away with building without -static - if ! do_compiler "$target_compiler" -o $TMPE $TMPC ; then + if ! do_compiler "$target_compiler" $target_compiler_cflags -o $TMPE $TMPC ; then target_compiler="" else enabled_cross_compilers="${enabled_cross_compilers} '${target_compiler}'" @@ -7129,8 +7134,13 @@ if test -n "$target_compiler"; then if test -n "$target_compiler_static"; then echo "CROSS_CC_GUEST_STATIC=$target_compiler_static" >> $config_target_mak fi + + if test -n "$target_compiler_cflags"; then + echo "CROSS_CC_GUEST_CFLAGS=$target_compiler_cflags" >> $config_target_mak + fi fi + # generate QEMU_CFLAGS/LDFLAGS for targets cflags="" |