changeset 5819:16b0f8ffe787

* getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid needless checks.
author Paul Eggert <eggert@cs.ucla.edu>
date Fri, 06 May 2005 01:04:20 +0000
parents 6c1cdd065362
children aec0a1f23054
files m4/ChangeLog m4/getopt.m4
diffstat 2 files changed, 20 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/m4/ChangeLog
+++ b/m4/ChangeLog
@@ -1,3 +1,8 @@
+2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
+
+	* getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
+	needless checks.
+
 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
 
 	* euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require AC_HEADER_STAT.
--- a/m4/getopt.m4
+++ b/m4/getopt.m4
@@ -1,5 +1,5 @@
-# getopt.m4 serial 7
-dnl Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
+# getopt.m4 serial 8
+dnl Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
 dnl with or without modifications, as long as this notice is preserved.
@@ -26,11 +26,22 @@
   if test -z "$GETOPT_H"; then
     GETOPT_H=
     AC_CHECK_HEADERS([getopt.h], [], [GETOPT_H=getopt.h])
-    AC_CHECK_FUNCS([getopt_long_only], [], [GETOPT_H=getopt.h])
+    if test -z "$GETOPT_H"; then
+      AC_CHECK_FUNCS([getopt_long_only], [], [GETOPT_H=getopt.h])
+    fi
 
     dnl BSD getopt_long uses an incompatible method to reset option processing,
     dnl and (as of 2004-10-15) mishandles optional option-arguments.
-    AC_CHECK_DECL([optreset], [GETOPT_H=getopt.h], [], [#include <getopt.h>])
+    if test -z "$GETOPT_H"; then
+      AC_CHECK_DECL([optreset], [GETOPT_H=getopt.h], [], [#include <getopt.h>])
+    fi
+
+    dnl Solaris 10 getopt doesn't handle `+' as a leading character in an
+    dnl option string (as of 2005-05-05).
+    if test -z "$GETOPT_H"; then
+      AC_CHECK_DECL([getopt_clip], [GETOPT_H=getopt.h], [],
+	[#include <getopt.h>])
+    fi
 
     if test -n "$GETOPT_H"; then
       gl_GETOPT_SUBSTITUTE