diff options
author | Tim Deegan <tim@xen.org> | 2013-08-20 16:13:20 +0200 |
---|---|---|
committer | Jan Beulich <jbeulich@suse.com> | 2013-08-20 16:13:20 +0200 |
commit | 4e4da361f57e1ced53cb65c53fc6289a345a3429 (patch) | |
tree | a74da2144b102cd214789e8541fdb88cfa832a88 | |
parent | 28d38f0a7db6f5d024900ac0a9075a70298bc64f (diff) | |
download | xen-4e4da361f57e1ced53cb65c53fc6289a345a3429.tar.gz xen-4e4da361f57e1ced53cb65c53fc6289a345a3429.tar.bz2 xen-4e4da361f57e1ced53cb65c53fc6289a345a3429.zip |
xen: Add stdbool.h workaround for BSD.
On *BSD, stdbool.h lives in /usr/include, but we don't want to have
that on the search path in case we pick up any headers from the build
host's C libraries.
Copy the equivalent hack already in place for stdarg.h: on all
supported compilers the contents of stdbool.h are trivial, so just
supply the things we need in a xen/stdbool.h header.
Signed-off-by: Tim Deegan <tim@xen.org>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Keir Fraser <keir@xen.org>
Tested-by: Patrick Welche <prlw1@cam.ac.uk>
master commit: 7b9685ca4ed2fd723600ce66eb20a6d0c115b6cb
master date: 2013-08-15 22:00:45 +0100
-rw-r--r-- | xen/include/xen/libelf.h | 4 | ||||
-rw-r--r-- | xen/include/xen/stdbool.h | 13 |
2 files changed, 15 insertions, 2 deletions
diff --git a/xen/include/xen/libelf.h b/xen/include/xen/libelf.h index 1da66f7b4b..44e11d2925 100644 --- a/xen/include/xen/libelf.h +++ b/xen/include/xen/libelf.h @@ -29,8 +29,6 @@ #error define architectural endianness #endif -#include <stdbool.h> - typedef int elf_errorstatus; /* 0: ok; -ve (normally -1): error */ typedef int elf_negerrnoval; /* 0: ok; -EFOO: error */ @@ -39,11 +37,13 @@ typedef int elf_negerrnoval; /* 0: ok; -EFOO: error */ #ifdef __XEN__ #include <public/elfnote.h> #include <public/features.h> +#include <xen/stdbool.h> #else #include <xen/elfnote.h> #include <xen/features.h> #include <stdarg.h> +#include <stdbool.h> struct elf_binary; typedef void elf_log_callback(struct elf_binary*, void *caller_data, diff --git a/xen/include/xen/stdbool.h b/xen/include/xen/stdbool.h new file mode 100644 index 0000000000..2eecd52a18 --- /dev/null +++ b/xen/include/xen/stdbool.h @@ -0,0 +1,13 @@ +#ifndef __XEN_STDBOOL_H__ +#define __XEN_STDBOOL_H__ + +#if defined(__OpenBSD__) || defined(__NetBSD__) +# define bool _Bool +# define true 1 +# define false 0 +# define __bool_true_false_are_defined 1 +#else +# include <stdbool.h> +#endif + +#endif /* __XEN_STDBOOL_H__ */ |