* getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
authorPaul Eggert <eggert@cs.ucla.edu>
Fri, 6 May 2005 01:04:20 +0000 (01:04 +0000)
committerPaul Eggert <eggert@cs.ucla.edu>
Fri, 6 May 2005 01:04:20 +0000 (01:04 +0000)
needless checks.

m4/ChangeLog
m4/getopt.m4

index ac3b725..2368995 100644 (file)
@@ -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.
index 4d8bd74..d7bd319 100644 (file)
@@ -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 @@ AC_DEFUN([gl_GETOPT],
   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