* lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
authorPaul Eggert <eggert@cs.ucla.edu>
Mon, 18 Dec 2006 18:04:20 +0000 (18:04 +0000)
committerPaul Eggert <eggert@cs.ucla.edu>
Mon, 18 Dec 2006 18:04:20 +0000 (18:04 +0000)
This is more consistent with the other defines here.
* m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
Port to z/OS.  Problem reported by Paul Gilmartin.
Change local vars to use gl_ prefix rather than ac_.
Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
with other defines.
* modules/double-slash-root: New module.
* modules/dirname (Files): Remove m4/double-slash-root.m4.
(Depends-on): Add double-slash-root.
* MODULES.html.sh (File system functions): Mention new module.

ChangeLog
MODULES.html.sh
lib/dirname.h
m4/double-slash-root.m4
modules/dirname
modules/double-slash-root [new file with mode: 0644]

index 02b9a1e..fe3b8ad 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,18 @@
+2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
+       and Eric Blake  <ebb9@byu.net>
+
+       * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
+       This is more consistent with the other defines here.
+       * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
+       Port to z/OS.  Problem reported by Paul Gilmartin.
+       Change local vars to use gl_ prefix rather than ac_.
+       Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
+       with other defines.
+       * modules/double-slash-root: New module.
+       * modules/dirname (Files): Remove m4/double-slash-root.m4.
+       (Depends-on): Add double-slash-root.
+       * MODULES.html.sh (File system functions): Mention new module.
+
 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
 
        * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
index ec3b7d9..9c0253b 100755 (executable)
@@ -1978,6 +1978,7 @@ func_all_modules ()
   func_module cycle-check
   func_module fsusage
   func_module dirfd
+  func_module double-slash-root
   func_module euidaccess
   func_module file-type
   func_module fileblocks
index f9189c3..91e7ed3 100644 (file)
@@ -48,7 +48,7 @@
 # endif
 
 # ifndef DOUBLE_SLASH_IS_DISTINCT_ROOT
-#  define DOUBLE_SLASH_IS_DISTINCT_ROOT 1
+#  define DOUBLE_SLASH_IS_DISTINCT_ROOT 0
 # endif
 
 # if FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE
index f8cbd54..69d60d0 100644 (file)
@@ -1,4 +1,4 @@
-#serial 1   -*- autoconf -*-
+# double-slash-root.m4 serial 2   -*- Autoconf -*-
 dnl Copyright (C) 2006 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -7,37 +7,32 @@ dnl with or without modifications, as long as this notice is preserved.
 AC_DEFUN([gl_DOUBLE_SLASH_ROOT],
 [
   AC_REQUIRE([AC_CANONICAL_HOST])
-  AC_CACHE_CHECK([whether // is distinct from /], [ac_cv_double_slash_root],
+  AC_CACHE_CHECK([whether // is distinct from /], [gl_cv_double_slash_root],
     [ if test x"$cross_compiling" = xyes ; then
        # When cross-compiling, there is no way to tell whether // is special
        # short of a list of hosts.  However, the only known hosts to date
-       # that have a distinct // are Apollo DomainOS (too old to port to)
-       # and Cygwin.  If anyone knows of another system for which // has
+       # that have a distinct // are Apollo DomainOS (too old to port to),
+       # Cygwin, and z/OS.  If anyone knows of another system for which // has
        # special semantics and is distinct from /, please report it to
-       # <bug-coreutils@gnu.org>.
+       # <bug-gnulib@gnu.org>.
        case $host in
-         *-cygwin)
-           ac_cv_double_slash_root=yes ;;
+         *-cygwin | i370-ibm-openedition)
+           gl_cv_double_slash_root=yes ;;
          *)
            # Be optimistic and assume that / and // are the same when we
            # don't know.
-           ac_cv_double_slash_root='unknown, assuming no' ;;
+           gl_cv_double_slash_root='unknown, assuming no' ;;
        esac
       else
        set x `ls -di / //`
-       if test $[2] = $[4]; then
-         ac_cv_double_slash_root=no
+       if test $[2] = $[4] && wc //dev/null >/dev/null 2>&1; then
+         gl_cv_double_slash_root=no
        else
-         ac_cv_double_slash_root=yes
+         gl_cv_double_slash_root=yes
        fi
       fi])
-  if test x"$ac_cv_double_slash_root" = xyes; then
-    ac_double_slash_root=1
-  else
-    ac_double_slash_root=0
+  if test "$gl_cv_double_slash_root" = yes; then
+    AC_DEFINE([DOUBLE_SLASH_IS_DISTINCT_ROOT], 1,
+      [Define to 1 if // is a file system root distinct from /.])
   fi
-
-  AC_DEFINE_UNQUOTED([DOUBLE_SLASH_IS_DISTINCT_ROOT],
-   $ac_double_slash_root,
-   [Define to 1 if // is a file system root distinct from /.])
 ])
index 1a8f158..7c405c2 100644 (file)
@@ -6,11 +6,11 @@ lib/dirname.h
 lib/dirname.c
 lib/basename.c
 lib/stripslash.c
-m4/dos.m4
 m4/dirname.m4
-m4/double-slash-root.m4
+m4/dos.m4
 
 Depends-on:
+double-slash-root
 stdbool
 xalloc
 xstrndup
diff --git a/modules/double-slash-root b/modules/double-slash-root
new file mode 100644 (file)
index 0000000..6b809d0
--- /dev/null
@@ -0,0 +1,20 @@
+Description:
+Check whether // is distinct from /.
+
+Files:
+m4/double-slash-root.m4
+
+Depends-on:
+
+configure.ac:
+gl_DOUBLE_SLASH_ROOT
+
+Makefile.am:
+
+Include:
+
+License:
+LGPL
+
+Maintainer:
+Eric Blake, Paul Eggert, Jim Meyering