changeset 13652:63612cd2a9b1

getopt: optimize previous patch * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Correctly check for empty variable. Speed up awk script. Reported by Paolo Bonzini. Signed-off-by: Eric Blake <eblake@redhat.com>
author Eric Blake <eblake@redhat.com>
date Wed, 08 Sep 2010 08:49:15 -0600
parents a87ee375533d
children 653e652cfd95
files ChangeLog m4/getopt.m4
diffstat 2 files changed, 10 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -37,6 +37,13 @@
 	glibc, and refer the reader there. Keep BSD API documentation, as
 	that is not readily available elsewhere.
 
+2010-09-08  Eric Blake  <eblake@redhat.com>
+
+	getopt: optimize previous patch
+	* m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Correctly check for
+	empty variable.  Speed up awk script.
+	Reported by Paolo Bonzini.
+
 2010-09-07  Eric Blake  <eblake@redhat.com>
 
 	getopt: handle POSIXLY_CORRECT set but not exported
--- a/m4/getopt.m4
+++ b/m4/getopt.m4
@@ -1,4 +1,4 @@
-# getopt.m4 serial 30
+# getopt.m4 serial 31
 dnl Copyright (C) 2002-2006, 2008-2010 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -218,9 +218,8 @@
        # so take care to revert to the correct (non-)export state.
 dnl GNU Coding Standards currently allow awk but not env; besides, env
 dnl is ambiguous with environment values that contain newlines.
-       gl_awk_probe='BEGIN { for (v in ENVIRON)
-         if (v == "POSIXLY_CORRECT") print "x" }'
-       case ${POSIXLY_CORRECT:+x}`$AWK "$gl_awk_probe" </dev/null` in
+       gl_awk_probe='BEGIN { if ("POSIXLY_CORRECT" in ENVIRON) print "x" }'
+       case ${POSIXLY_CORRECT+x}`$AWK "$gl_awk_probe" </dev/null` in
          xx) gl_had_POSIXLY_CORRECT=exported ;;
          x)  gl_had_POSIXLY_CORRECT=yes      ;;
          *)  gl_had_POSIXLY_CORRECT=         ;;