diff --git a/newlib/ChangeLog b/newlib/ChangeLog index f600792e4..b8a5a6a94 100644 --- a/newlib/ChangeLog +++ b/newlib/ChangeLog @@ -1,3 +1,9 @@ +2011-08-19 Corinna Vinschen + + * libc/include/process.h: Remove exec family function declarations. + Add comment. + * libc/include/sys/unistd.h (execlpe): Declare for Cygwin. + 2011-08-19 Craig Howland * libc/time/mktime.c (validate_structure): Account for tm_mon possibly diff --git a/newlib/libc/include/process.h b/newlib/libc/include/process.h index a73564a33..fe6ec1613 100644 --- a/newlib/libc/include/process.h +++ b/newlib/libc/include/process.h @@ -1,4 +1,5 @@ -/* process.h. This file comes with MSDOS and WIN32 systems. */ +/* process.h. Define spawn family of functions as provided by Cygwin. + The original file of this name is a MS/DOS invention. */ #ifndef __PROCESS_H_ #define __PROCESS_H_ @@ -7,15 +8,7 @@ extern "C" { #endif -int execl(const char *path, const char *argv0, ...); -int execle(const char *path, const char *argv0, ... /*, char * const *envp */); -int execlp(const char *path, const char *argv0, ...); -int execlpe(const char *path, const char *argv0, ... /*, char * const *envp */); - -int execv(const char *path, char * const *argv); -int execve(const char *path, char * const *argv, char * const *envp); -int execvp(const char *path, char * const *argv); -int execvpe(const char *path, char * const *argv, char * const *envp); +/* For the exec functions, include unistd.h. */ int spawnl(int mode, const char *path, const char *argv0, ...); int spawnle(int mode, const char *path, const char *argv0, ... /*, char * const *envp */); diff --git a/newlib/libc/include/sys/unistd.h b/newlib/libc/include/sys/unistd.h index 2763a0d46..900faa7bf 100644 --- a/newlib/libc/include/sys/unistd.h +++ b/newlib/libc/include/sys/unistd.h @@ -46,6 +46,9 @@ int _EXFUN(euidaccess, (const char *__path, int __mode)); int _EXFUN(execl, (const char *__path, const char *, ... )); int _EXFUN(execle, (const char *__path, const char *, ... )); int _EXFUN(execlp, (const char *__file, const char *, ... )); +#if defined(__CYGWIN__) +int _EXFUN(execlpe, (const char *__file, const char *, ... )); +#endif int _EXFUN(execv, (const char *__path, char * const __argv[] )); int _EXFUN(execve, (const char *__path, char * const __argv[], char * const __envp[] )); int _EXFUN(execvp, (const char *__file, char * const __argv[] ));