summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2008-02-24 05:22:33 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2008-02-24 05:22:33 +0000
commit36cc9b7cead1a8447c1600a273f772e553aaa009 (patch)
tree1948d739a95507a62fe4a7266054f1aece43fff4
parentfd511b53471111dcb4046c2d021307f9eab99737 (diff)
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.
-rwxr-xr-xconfigure9
-rw-r--r--configure.in13
2 files changed, 16 insertions, 6 deletions
diff --git a/configure b/configure
index 23aa9facc9c..c673b3ee025 100755
--- a/configure
+++ b/configure
@@ -12758,8 +12758,13 @@ else
LIBOBJS="$LIBOBJS getaddrinfo.$ac_objext"
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
+ LIBOBJS="$LIBOBJS getopt.$ac_objext"
+ LIBOBJS="$LIBOBJS getopt_long.$ac_objext"
+elif test x"$ac_cv_type_struct_option" = xyes ; then
for ac_func in getopt_long
do
diff --git a/configure.in b/configure.in
index c71b17577be..9ad04fbdb1e 100644
--- a/configure.in
+++ b/configure.in
@@ -1,5 +1,5 @@
dnl Process this file with autoconf to produce a configure script.
-dnl $PostgreSQL: pgsql/configure.in,v 1.398.4.22 2008/01/03 21:41:50 tgl Exp $
+dnl $PostgreSQL: pgsql/configure.in,v 1.398.4.23 2008/02/24 05:22:33 tgl Exp $
dnl
dnl Developers, please strive to achieve this order:
dnl
@@ -19,7 +19,7 @@ m4_pattern_forbid(^PGAC_)dnl to catch undefined macros
AC_INIT([PostgreSQL], [8.0.15], [pgsql-bugs@postgresql.org])
-m4_if(m4_defn([m4_PACKAGE_VERSION]), [2.53], [], [m4_fatal([Autoconf version 2.59 is required.
+m4_if(m4_defn([m4_PACKAGE_VERSION]), [2.53], [], [m4_fatal([Autoconf version 2.53 is required.
Untested combinations of 'autoconf' and PostgreSQL versions are not
recommended. You can remove the check from 'configure.in' but it is then
your responsibility whether the result works or not.])])
@@ -942,8 +942,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)