diff options
author | Luc Van Oostenryck <luc.vanoostenryck@gmail.com> | 2020-07-05 16:20:58 +0200 |
---|---|---|
committer | Luc Van Oostenryck <luc.vanoostenryck@gmail.com> | 2020-07-13 17:49:55 +0200 |
commit | 30682796740c21b48f99125f3aa9e067ebdd6b7d (patch) | |
tree | 55ed5d7bef01f0c6d9a2621c9b189f9d9aa5f589 | |
parent | aec42aa3b2ada060b638825e8879374a0760efa6 (diff) | |
download | sparse-30682796740c21b48f99125f3aa9e067ebdd6b7d.tar.gz |
arch: add predefines for OS identification
Predefine macros like '__OpenBSD__', ... for the three BSDs,
CygWin and Darwin (those for Linus and SunOS were already defined).
Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
-rw-r--r-- | predefine.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/predefine.c b/predefine.c index 7583b1af..0f36f7ef 100644 --- a/predefine.c +++ b/predefine.c @@ -217,10 +217,29 @@ void predefined_macros(void) } switch (arch_os) { + case OS_CYGWIN: + predefine("__CYGWIN__", 1, "1"); + if (arch_m64 == ARCH_LP32) + predefine("__CYGWIN32__", 1, "1"); + break; + case OS_DARWIN: + predefine("__APPLE__", 1, "1"); + predefine("__APPLE_CC__", 1, "1"); + predefine("__MACH__", 1, "1"); + break; + case OS_FREEBSD: + predefine("__FreeBSD__", 1, "1"); + break; case OS_LINUX: predefine("__linux__", 1, "1"); predefine("__linux", 1, "1"); break; + case OS_NETBSD: + predefine("__NetBSD__", 1, "1"); + break; + case OS_OPENBSD: + predefine("__OpenBSD__", 1, "1"); + break; case OS_SUNOS: predefine("__sun__", 1, "1"); predefine("__sun", 1, "1"); |