Allow for platforms that have optreset but not <getopt.h>.

Reportedly, some versions of mingw are like that, and it seems plausible
in general that older platforms might be that way.  However, we'd
determined experimentally that just doing "extern int" conflicts with
the way Cygwin declares these variables, so explicitly exclude Cygwin.

Michael Paquier, tweaked by me to hopefully not break Cygwin
This commit is contained in:
Tom Lane 2014-05-08 12:33:29 -04:00
parent 4f7bb4b2a3
commit 0c15a524c5

View File

@ -29,12 +29,16 @@ extern int optind;
extern int opterr;
extern int optopt;
#ifdef HAVE_INT_OPTRESET
#endif /* HAVE_GETOPT_H */
/*
* Some platforms have optreset but not <getopt.h>. Cygwin, however,
* doesn't like this either.
*/
#if defined(HAVE_INT_OPTRESET) && !defined(__CYGWIN__)
extern int optreset;
#endif
#endif /* HAVE_GETOPT_H */
#ifndef HAVE_GETOPT
extern int getopt(int nargc, char *const * nargv, const char *ostr);
#endif