[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH] configure: pick the right compiler for OpenBSD by d
From: |
Daniel P. Berrange |
Subject: |
[Qemu-devel] [PATCH] configure: pick the right compiler for OpenBSD by default |
Date: |
Fri, 13 Oct 2017 11:28:12 +0100 |
The system compiler in OpenBSD is gcc 4.2.1 which is too
old for our needs. If doing 'pkg_add gcc' you can get a
much newer version (4.9.4 in OpenBSD 6.1) which works with
QEMU. This installs binaries with two naming schemes:
$ pkg_info -L gcc | grep bin
/usr/local/bin/ecpp
/usr/local/bin/egcc
/usr/local/bin/egcc-ar
/usr/local/bin/egcc-nm
/usr/local/bin/egcc-ranlib
/usr/local/bin/egcov
/usr/local/bin/x86_64-unknown-openbsd6.0-egcc
/usr/local/bin/x86_64-unknown-openbsd6.0-egcc-ar
/usr/local/bin/x86_64-unknown-openbsd6.0-egcc-nm
/usr/local/bin/x86_64-unknown-openbsd6.0-egcc-ranlib
/usr/local/bin/x86_64-unknown-openbsd6.0-gcc-4.9.3
We pick the short name this it won't change across OpenBSD
releases.
This means users don't need to manually pass custom --cc
and --cxx args to configure to avoid immediate failure.
Signed-off-by: Daniel P. Berrange <address@hidden>
---
configure | 18 ++++++++++++++++--
1 file changed, 16 insertions(+), 2 deletions(-)
diff --git a/configure b/configure
index 06f18ea9af..fcb7523933 100755
--- a/configure
+++ b/configure
@@ -255,7 +255,21 @@ cross_prefix=""
audio_drv_list=""
block_drv_rw_whitelist=""
block_drv_ro_whitelist=""
-host_cc="cc"
+
+case `uname -s` in
+ OpenBSD)
+ # Default system cc in OpenBSD is unsufficient
+ # we need the 'gcc' pkg added, whch provides
+ # these modified binary names
+ host_cc="egcc"
+ host_cxx="eg++"
+ ;;
+ *)
+ host_cc="cc"
+ host_cxx="c++"
+ ;;
+esac
+
libs_softmmu=""
libs_tools=""
audio_pt_int=""
@@ -466,7 +480,7 @@ else
fi
if test -z "${CXX}${cross_prefix}"; then
- cxx="c++"
+ cxx="$host_cxx"
else
cxx="${CXX-${cross_prefix}g++}"
fi
--
2.13.5
Re: [Qemu-devel] [PATCH] configure: pick the right compiler for OpenBSD by default, Daniel P. Berrange, 2017/10/13