diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 5bf6c4e6b..911263126 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,10 @@ +2006-02-05 Corinna Vinschen + + * include/features.h: Add comment to explain what's going to happen + here at one point. + * include/sys/stdio.h: Guard getline and getdelim prototypes with + _GNU_SOURCE to avoid collision with old-style declarations. + 2006-02-05 Corinna Vinschen * environ.cc (struct parse_thing): Add transparent_exe option. diff --git a/winsup/cygwin/include/features.h b/winsup/cygwin/include/features.h index 0fcc90bfd..69c12d22c 100644 --- a/winsup/cygwin/include/features.h +++ b/winsup/cygwin/include/features.h @@ -14,4 +14,22 @@ details. */ #include #include +/* Various options should be defined here, but the framework to do this + is not laid down so far. Especially notable are the following defines, + which can be used by the application to switch on or off various + datatypes and function prototypes: + + _BSD_SOURCE to include pure BSD functions which are not defined + under POSIX. + + _POSIX_SOURCE if the application requests a POSIX compatible system. + + _XOPEN_SOURCE if X/Open functions and datatypes are requested. This + option includes _POSIX_SOURCE. + + _GNU_SOURCE to turn on GNU extensions which might collide with defines + used in application or library headers. This option + includes _BSD_SOURCE, _XOPEN_SOURCE and _POSIX_SOURCE. +*/ + #endif /* _FEATURES_H */ diff --git a/winsup/cygwin/include/sys/stdio.h b/winsup/cygwin/include/sys/stdio.h index 8d002ddba..7cc6f09f1 100644 --- a/winsup/cygwin/include/sys/stdio.h +++ b/winsup/cygwin/include/sys/stdio.h @@ -28,8 +28,10 @@ details. */ __BEGIN_DECLS +#ifdef _GNU_SOURCE ssize_t _EXFUN(getline, (char **, size_t *, FILE *)); ssize_t _EXFUN(getdelim, (char **, size_t *, int, FILE *)); +#endif /* _GNU_SOURCE */ __END_DECLS