unicorn/qemu
Peter Maydell 714781d9e0
configure: Never use 'uname' to identify target OS
For a very long time we have used 'uname -s' as our fallback if
we don't identify the target OS using a compiler #define. This
obviously doesn't work for cross-compilation, and we've had
a comment suggesting we fix this in configure for a long time.
Since we now have an exhaustive list of which OSes we can run
on (thanks to commit 898be3e0415 making an unrecognized OS
be a fatal error), we know which ones we're missing.

Add check_define tests for the remaining OSes we support. The
defines checked are based on ones we already use in the codebase for
identifying the host OS (with the exception of GNU/kFreeBSD).
We can now set bogus_os immediately rather than doing it later.

We leave the comment about uname being bad untouched, since
there is still a use of it for the fallback for unrecognized
host CPU type.

Backports commit 951fedfceeda1b09ac8aa1f5263288b65e13caca from qemu
2018-03-09 12:37:21 -05:00
..
accel tcg: Merge opcode arguments into TCGOp 2018-03-05 04:45:20 -05:00
crypto crypto: Clean up includes 2018-02-19 00:47:40 -05:00
default-configs arm64eb: add support for ARM64 big endian. 2017-04-24 23:30:01 +08:00
docs docs: clarify memory region lifecycle 2018-02-12 15:11:21 -05:00
fpu softfloat: fix crash on int conversion of SNaN 2018-03-09 11:40:17 -05:00
hw Include less of the generated modular QAPI headers 2018-03-09 10:06:19 -05:00
include configure: Drop ancient Solaris 9 and earlier support 2018-03-09 12:14:21 -05:00
qapi qapi: Move qapi-schema.json to qapi/, rename generated files 2018-03-09 11:35:11 -05:00
qobject Include qapi/qmp/qlist.h exactly where needed 2018-03-08 08:50:06 -05:00
qom qapi: Move qapi-schema.json to qapi/, rename generated files 2018-03-09 11:35:11 -05:00
scripts qapi: Move qapi-schema.json to qapi/, rename generated files 2018-03-09 11:35:11 -05:00
target util: Introduce include/qemu/cpuid.h 2018-03-09 12:12:00 -05:00
tcg util: Introduce include/qemu/cpuid.h 2018-03-09 12:12:00 -05:00
util oslib-posix: check for posix_memalign in configure script 2018-03-08 08:56:35 -05:00
aarch64.h softfloat: use floatx80_infinity in softfloat 2018-03-09 01:34:45 -05:00
aarch64eb.h softfloat: use floatx80_infinity in softfloat 2018-03-09 01:34:45 -05:00
accel.c clean-up: removed duplicate #includes 2018-02-28 08:51:56 -05:00
arm.h softfloat: use floatx80_infinity in softfloat 2018-03-09 01:34:45 -05:00
armeb.h softfloat: use floatx80_infinity in softfloat 2018-03-09 01:34:45 -05:00
atomic_template.h tcg: Record code_gen_buffer address for user-only memory helpers 2018-03-05 13:48:27 -05:00
CODING_STYLE import 2015-08-21 15:04:50 +08:00
configure configure: Never use 'uname' to identify target OS 2018-03-09 12:37:21 -05:00
COPYING import 2015-08-21 15:04:50 +08:00
COPYING.LIB import 2015-08-21 15:04:50 +08:00
cpu-exec-common.c tcg: Add EXCP_ATOMIC 2018-02-27 11:57:58 -05:00
cpu-exec.c exec-all: extract tb->tc_* into a separate struct tc_tb 2018-03-05 02:57:22 -05:00
cpus.c Include qapi/error.h exactly where needed 2018-03-07 12:26:38 -05:00
cputlb.c accel/tcg: add size paremeter in tlb_fill() 2018-03-06 10:56:34 -05:00
exec.c cpu: suffix cpu address spaces with cpu index 2018-03-05 14:41:25 -05:00
gen_all_header.sh arm64eb: add support for ARM64 big endian. 2017-04-24 23:30:01 +08:00
glib_compat.c qapi: Improve qobject input visitor error reporting 2018-03-02 12:05:53 -05:00
HACKING import 2015-08-21 15:04:50 +08:00
header_gen.py softfloat: use floatx80_infinity in softfloat 2018-03-09 01:34:45 -05:00
ioport.c hw: remove pio_addr_t 2018-02-24 02:43:16 -05:00
LICENSE import 2015-08-21 15:04:50 +08:00
m68k.h softfloat: use floatx80_infinity in softfloat 2018-03-09 01:34:45 -05:00
Makefile qapi: Don't create useless directory qapi-generated 2018-03-09 11:36:49 -05:00
Makefile.objs qapi: Move qapi-schema.json to qapi/, rename generated files 2018-03-09 11:35:11 -05:00
Makefile.target qapi-gen: New common driver for code and doc generators 2018-03-09 08:47:12 -05:00
memory.c memory: remove memory_region_test_and_clear_dirty 2018-03-08 09:02:06 -05:00
memory_ldst.inc.c exec: introduce memory_ldst.inc.c 2018-03-01 09:59:34 -05:00
memory_mapping.c include/qemu/osdep.h: Don't include qapi/error.h 2018-02-21 23:08:18 -05:00
mips.h softfloat: use floatx80_infinity in softfloat 2018-03-09 01:34:45 -05:00
mips64.h softfloat: use floatx80_infinity in softfloat 2018-03-09 01:34:45 -05:00
mips64el.h softfloat: use floatx80_infinity in softfloat 2018-03-09 01:34:45 -05:00
mipsel.h softfloat: use floatx80_infinity in softfloat 2018-03-09 01:34:45 -05:00
powerpc.h softfloat: use floatx80_infinity in softfloat 2018-03-09 01:34:45 -05:00
qemu-timer.c timer/cpus: fix some typos and update some comments 2018-02-25 23:21:57 -05:00
rules.mak build-sys: silence make by default or V=0 2018-03-06 08:58:03 -05:00
softmmu_template.h accel/tcg: add size paremeter in tlb_fill() 2018-03-06 10:56:34 -05:00
sparc.h softfloat: use floatx80_infinity in softfloat 2018-03-09 01:34:45 -05:00
sparc64.h softfloat: use floatx80_infinity in softfloat 2018-03-09 01:34:45 -05:00
tcg-runtime-gvec.c tcg: Add generic vector helpers with a scalar operand 2018-03-06 16:10:09 -05:00
tcg-runtime.c exec-all: extract tb->tc_* into a separate struct tc_tb 2018-03-05 02:57:22 -05:00
translate-all.c translate-all: Zero out the TCGContext instance 2018-03-05 15:40:51 -05:00
translate-all.h translate-all.c: Compute L1 page table properties at runtime 2018-02-26 11:46:58 -05:00
translate-common.c exec: Clean up includes 2018-02-19 00:49:55 -05:00
unicorn_common.h qom/cpu: Add MemoryRegion property 2018-02-18 21:54:50 -05:00
VERSION import 2015-08-21 15:04:50 +08:00
vl.c Include qapi/error.h exactly where needed 2018-03-07 12:26:38 -05:00
vl.h import 2015-08-21 15:04:50 +08:00
x86_64.h softfloat: use floatx80_infinity in softfloat 2018-03-09 01:34:45 -05:00