summaryrefslogtreecommitdiff
path: root/src/etc/mkinstalldirs
diff options
context:
space:
mode:
Diffstat (limited to 'src/etc/mkinstalldirs')
-rwxr-xr-xsrc/etc/mkinstalldirs35
1 files changed, 35 insertions, 0 deletions
diff --git a/src/etc/mkinstalldirs b/src/etc/mkinstalldirs
new file mode 100755
index 0000000..0e29377
--- /dev/null
+++ b/src/etc/mkinstalldirs
@@ -0,0 +1,35 @@
+#!/bin/sh
+# Make directory hierarchy.
+# Written by Noah Friedman <friedman@prep.ai.mit.edu>
+# Public domain.
+
+defaultIFS='
+'
+IFS="${IFS-${defaultIFS}}"
+
+errstatus=0
+
+for file in ${1+"$@"} ; do
+ oIFS="${IFS}"
+ # Some sh's can't handle IFS=/ for some reason.
+ IFS='%'
+ set - `echo ${file} | sed -e 's@/@%@g' -e 's@^%@/@'`
+ IFS="${oIFS}"
+
+ pathcomp=''
+
+ for d in ${1+"$@"} ; do
+ pathcomp="${pathcomp}${d}"
+
+ if test ! -d "${pathcomp}"; then
+ echo "mkdir $pathcomp" 1>&2
+ mkdir "${pathcomp}" || errstatus=$?
+ fi
+
+ pathcomp="${pathcomp}/"
+ done
+done
+
+exit $errstatus
+
+# eof