1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-27 12:41:57 +03:00

Fix up getopt() reset management so it works on recent mingw.

The mingw people don't appear to care about compatibility with non-GNU
versions of getopt, so force use of our own copy of getopt on Windows.
Also, ensure that we make use of optreset when using our own copy.

Per report from Andrew Dunstan.  Back-patch to all versions supported
on Windows.
This commit is contained in:
Tom Lane
2010-12-15 23:50:41 -05:00
parent 2a6ebe70fb
commit 5cdd65f324
4 changed files with 41 additions and 15 deletions

25
configure vendored
View File

@ -20758,6 +20758,23 @@ esac
fi
# mingw has adopted a GNU-centric interpretation of optind/optreset,
# so always use our version on Windows.
if test "$PORTNAME" = "win32"; then
case " $LIBOBJS " in
*" getopt.$ac_objext "* ) ;;
*) LIBOBJS="$LIBOBJS getopt.$ac_objext"
;;
esac
case " $LIBOBJS " in
*" getopt_long.$ac_objext "* ) ;;
*) LIBOBJS="$LIBOBJS getopt_long.$ac_objext"
;;
esac
fi
# Cygwin's erand48() is broken (always returns zero) in some releases,
# so force use of ours.
if test "$PORTNAME" = "cygwin"; then
@ -20880,25 +20897,25 @@ fi
done
case " $LIBOBJS " in
case " $LIBOBJS " in
*" kill.$ac_objext "* ) ;;
*) LIBOBJS="$LIBOBJS kill.$ac_objext"
;;
esac
case " $LIBOBJS " in
case " $LIBOBJS " in
*" open.$ac_objext "* ) ;;
*) LIBOBJS="$LIBOBJS open.$ac_objext"
;;
esac
case " $LIBOBJS " in
case " $LIBOBJS " in
*" win32env.$ac_objext "* ) ;;
*) LIBOBJS="$LIBOBJS win32env.$ac_objext"
;;
esac
case " $LIBOBJS " in
case " $LIBOBJS " in
*" win32error.$ac_objext "* ) ;;
*) LIBOBJS="$LIBOBJS win32error.$ac_objext"
;;