* lib/mkinstalldirs: Clean up after NextStep and OpenStep mkdir.
authorAlexandre Duret-Lutz <adl@gnu.org>
Fri, 26 Sep 2003 17:28:52 +0000 (17:28 +0000)
committerAlexandre Duret-Lutz <adl@gnu.org>
Fri, 26 Sep 2003 17:28:52 +0000 (17:28 +0000)
Suggested by Eric Sunshine.

ChangeLog
THANKS
lib/mkinstalldirs

index 5758b0a..0fdcf2a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2003-09-26  Alexandre Duret-Lutz  <adl@gnu.org>
+
+       * lib/mkinstalldirs: Clean up after NextStep and OpenStep mkdir.
+       Suggested by Eric Sunshine.
+
 2003-09-25  Alexandre Duret-Lutz  <adl@gnu.org>
 
        * README: More mailing lists.
diff --git a/THANKS b/THANKS
index a87f925..98c2a91 100644 (file)
--- a/THANKS
+++ b/THANKS
@@ -56,6 +56,7 @@ Enrico Scholz         enrico.scholz@informatik.tu-chemnitz.de
 Erez Zadok             ezk@cs.columbia.edu
 Eric Magnien           emagnien@club-internet.fr
 Eric Siegerman         erics_97@pobox.com
+Eric Sunshine          sunshine@sunshineco.com
 Erick Branderhorst     branderh@iaehv.nl
 Erik Lindahl           E.Lindahl@chem.rug.nl
 Ezra Peisach           epeisach@MED-XTAL.BU.EDU
index 8065dad..a55cff6 100755 (executable)
@@ -4,7 +4,7 @@
 # Created: 1993-05-16
 # Public domain.
 
-scriptversion=2003-06-14.23
+scriptversion=2003-09-26.19
 
 errstatus=0
 dirmode=""
@@ -65,12 +65,25 @@ case $dirmode in
     if mkdir -p -- . 2>/dev/null; then
       echo "mkdir -p -- $*"
       exec mkdir -p -- "$@"
+    else
+      # On NextStep and OpenStep, the `mkdir' command does not
+      # recognize any option.  It will interpret all options as
+      # directories to create, and then abort because `.' already
+      # exists.
+      test -d ./-p && rmdir ./-p
+      test -d ./-- && rmdir ./--
     fi
     ;;
   *)
     if mkdir -m "$dirmode" -p -- . 2>/dev/null; then
       echo "mkdir -m $dirmode -p -- $*"
       exec mkdir -m "$dirmode" -p -- "$@"
+    else
+      # Clean up after NextStep and OpenStep mkdir.
+      for d in ./-m ./-p ./-- "./$dirmode";
+      do
+        test -d $d && rmdir $d
+      done
     fi
     ;;
 esac