qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH] configure: Default to 'cc', not 'gcc', on MacOS X


From: Peter Maydell
Subject: [Qemu-devel] [PATCH] configure: Default to 'cc', not 'gcc', on MacOS X
Date: Fri, 16 Nov 2012 16:37:23 +0000

When building for MacOS X, default the C compiler to 'cc' (usually
clang) rather than 'gcc'. This avoids the Apple 'gcc', which is
generally an elderly llvm-gcc provided mostly for legacy purposes,
in favour of the best supported compiler available on the platform.

Signed-off-by: Peter Maydell <address@hidden>
---
I now seem to be getting failures to compile due to weak refs on
clang as well, but defaulting to cc seems like a good long term
plan anyway. I've mostly been building and testing with --cc=clang
so this isn't a sudden compiler switch from my point of view.
I'm ambivalent about whether this should go in 1.3 or not, given
it doesn't actually fix the weakref issues.

 configure |   19 +++++++++++++++++--
 1 file changed, 17 insertions(+), 2 deletions(-)

diff --git a/configure b/configure
index f847ee2..ec9932b 100755
--- a/configure
+++ b/configure
@@ -116,7 +116,13 @@ audio_drv_list=""
 audio_card_list="ac97 es1370 sb16 hda"
 audio_possible_cards="ac97 es1370 sb16 cs4231a adlib gus hda"
 block_drv_whitelist=""
-host_cc="gcc"
+if test "$(uname -s)" = "Darwin"; then
+  # On MacOS X the standard supported system compiler is 'cc' (usually clang),
+  # and 'gcc' is a legacy llvm-gcc which is rather elderly and best avoided.
+  host_cc="cc"
+else
+  host_cc="gcc"
+fi
 libs_softmmu=""
 libs_tools=""
 audio_pt_int=""
@@ -250,7 +256,16 @@ done
 # Using uname is really, really broken.  Once we have the right set of checks
 # we can eliminate its usage altogether.
 
-cc="${CC-${cross_prefix}gcc}"
+# Preferred compiler:
+#  ${CC} (if set)
+#  ${cross_prefix}gcc (if cross-prefix specified)
+#  system compiler
+if test -z "${CC}${cross_prefix}"; then
+  cc="$host_cc"
+else
+  cc="${CC-${cross_prefix}gcc}"
+fi
+
 ar="${AR-${cross_prefix}ar}"
 objcopy="${OBJCOPY-${cross_prefix}objcopy}"
 ld="${LD-${cross_prefix}ld}"
-- 
1.7.9.5




reply via email to

[Prev in Thread] Current Thread [Next in Thread]