From 9f87c1613c0385e8264a2e5eca8f503cc446fbf1 Mon Sep 17 00:00:00 2001 From: Charles Forsyth Date: Sat, 15 Apr 2017 15:35:40 +0100 Subject: MS include files now #define environ, which messes up its use as field of struct, so undef it, unless needed for Windows interface, as controlled by INFERNO_KEEPENVIRON. Only rc and mk need extern char**environ --- Nt/386/include/lib9.h | 4 ++++ utils/mk/Nt.c | 1 + utils/rcsh/rc.h | 1 + 3 files changed, 6 insertions(+) diff --git a/Nt/386/include/lib9.h b/Nt/386/include/lib9.h index d10c51ed..fd48f043 100755 --- a/Nt/386/include/lib9.h +++ b/Nt/386/include/lib9.h @@ -16,7 +16,11 @@ #define strtod infstrtod #define strtoll infstrtoll #define strtoull infstrtoull +#ifndef INFERNO_KEEPENVIRON +/* environ is perfectly legal as the name of a local, field name or struct, but windows redefines it */ +/* the extern char** environ is only needed by two programs, so #undef it for everything else */ #undef environ +#endif /* do-it-yourself isinf and isnan */ #ifndef isnan diff --git a/utils/mk/Nt.c b/utils/mk/Nt.c index c2250762..93955f9a 100644 --- a/utils/mk/Nt.c +++ b/utils/mk/Nt.c @@ -1,3 +1,4 @@ +#define INFERNO_KEEPENVIRON #include "mk.h" #include #include diff --git a/utils/rcsh/rc.h b/utils/rcsh/rc.h index f7d56746..d01150a6 100644 --- a/utils/rcsh/rc.h +++ b/utils/rcsh/rc.h @@ -1,3 +1,4 @@ +#define INFERNO_KEEPENVIRON #include #define Lock Rclock -- cgit v1.2.3