Gnulib module: environ
Portability problems fixed by Gnulib:
extern char **environ;
to get the variable declared. This does not work any more, however, in shared libraries on macOS 11.1. Here is a workaround: Instead, one can use
#include <crt_externs.h> #define environ (*_NSGetEnviron())
This works at all versions of macOS.
-Wl,--disable-auto-importis in use.
Portability problems not fixed by Gnulib:
environto clear all variables is not portable; better is to assign
environto one-element array containing a NULL pointer. That said, an empty environment is not portable either, as some systems may require particular environment variables (such as
PATH) to be present in order to operate consistently.