diff options
author | John David Anglin <dave.anglin@nrc-cnrc.gc.ca> | 2008-04-01 22:23:04 +0000 |
---|---|---|
committer | John David Anglin <danglin@gcc.gnu.org> | 2008-04-01 22:23:04 +0000 |
commit | a6a0635ec111936464b2529edf809b17fe29d4c3 (patch) | |
tree | b382ba84d2ce61564962972bc5eb8444535302d3 | |
parent | 10743280477e38895d983bccb4e5cd80b16306af (diff) | |
download | gcc-a6a0635ec111936464b2529edf809b17fe29d4c3.zip gcc-a6a0635ec111936464b2529edf809b17fe29d4c3.tar.gz gcc-a6a0635ec111936464b2529edf809b17fe29d4c3.tar.bz2 |
re PR ada/33857 (Cannot bootstrap Ada with host gnatmake-4.2)
PR ada/33857
* env.c: Always include crt_externs.h if __APPLE__ is defined.
(__gnat_setenv): Use setenv instead of putenv if __APPLE__ is defined.
From-SVN: r133806
-rw-r--r-- | gcc/ada/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/ada/env.c | 12 |
2 files changed, 12 insertions, 6 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 8fc1b0d..00ae0d6 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,9 @@ +2008-04-01 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> + + PR ada/33857 + * env.c: Always include crt_externs.h if __APPLE__ is defined. + (__gnat_setenv): Use setenv instead of putenv if __APPLE__ is defined. + 2008-04-01 Andreas Jaeger <aj@suse.de> * g-soccon-linux-ppc.ads: Add new constants SO_REUSEPORT and diff --git a/gcc/ada/env.c b/gcc/ada/env.c index 01c25d6..2b708c3 100644 --- a/gcc/ada/env.c +++ b/gcc/ada/env.c @@ -41,10 +41,6 @@ #include <unixio.h> #endif -#if defined (__APPLE__) -#include <crt_externs.h> -#endif - #if defined (__MINGW32__) #include <stdlib.h> #endif @@ -61,6 +57,10 @@ extern char** ppGlobalEnviron; #include "system.h" #endif /* IN_RTS */ +#if defined (__APPLE__) +#include <crt_externs.h> +#endif + #include "env.h" void @@ -166,7 +166,7 @@ __gnat_setenv (char *name, char *value) LIB$SIGNAL (status); } -#elif defined (__vxworks) && defined (__RTP__) +#elif (defined (__vxworks) && defined (__RTP__)) || defined (__APPLE__) setenv (name, value, 1); #else @@ -178,7 +178,7 @@ __gnat_setenv (char *name, char *value) sprintf (expression, "%s=%s", name, value); putenv (expression); #if (defined (__FreeBSD__) && (__FreeBSD__ < 7)) \ - || defined (__APPLE__) || defined (__MINGW32__) \ + || defined (__MINGW32__) \ ||(defined (__vxworks) && ! defined (__RTP__)) /* On some systems like FreeBSD 6.x and earlier, MacOS X and Windows, putenv is making a copy of the expression string so we can free |