Use our own getopt() and getopt_long() on Solaris, because that platform's

versions don't handle long options the way we want.  Per Zdenek Kotala.
This commit is contained in:
Tom Lane 2008-02-24 05:22:11 +00:00
parent dea03d7f58
commit 7988f948c9
2 changed files with 29 additions and 5 deletions

23
configure vendored
View File

@ -14829,8 +14829,27 @@ esac
fi
# similarly, use system's getopt_long() only if system provides struct option.
if test x"$ac_cv_type_struct_option" = xyes ; then
# Similarly, use system's getopt_long() only if system provides struct option.
# Solaris' getopt() doesn't do what we want for long options, so always use
# our versions on that platform.
if test "$PORTNAME" = "solaris"; then
case $LIBOBJS in
"getopt.$ac_objext" | \
*" getopt.$ac_objext" | \
"getopt.$ac_objext "* | \
*" getopt.$ac_objext "* ) ;;
*) LIBOBJS="$LIBOBJS getopt.$ac_objext" ;;
esac
case $LIBOBJS in
"getopt_long.$ac_objext" | \
*" getopt_long.$ac_objext" | \
"getopt_long.$ac_objext "* | \
*" getopt_long.$ac_objext "* ) ;;
*) LIBOBJS="$LIBOBJS getopt_long.$ac_objext" ;;
esac
elif test x"$ac_cv_type_struct_option" = xyes ; then
for ac_func in getopt_long
do

View File

@ -1,5 +1,5 @@
dnl Process this file with autoconf to produce a configure script.
dnl $PostgreSQL: pgsql/configure.in,v 1.490.2.14 2008/01/03 21:40:50 tgl Exp $
dnl $PostgreSQL: pgsql/configure.in,v 1.490.2.15 2008/02/24 05:22:11 tgl Exp $
dnl
dnl Developers, please strive to achieve this order:
dnl
@ -998,8 +998,13 @@ else
AC_LIBOBJ(getaddrinfo)
fi
# similarly, use system's getopt_long() only if system provides struct option.
if test x"$ac_cv_type_struct_option" = xyes ; then
# Similarly, use system's getopt_long() only if system provides struct option.
# Solaris' getopt() doesn't do what we want for long options, so always use
# our versions on that platform.
if test "$PORTNAME" = "solaris"; then
AC_LIBOBJ(getopt)
AC_LIBOBJ(getopt_long)
elif test x"$ac_cv_type_struct_option" = xyes ; then
AC_REPLACE_FUNCS([getopt_long])
else
AC_LIBOBJ(getopt_long)