aboutsummaryrefslogtreecommitdiffstats
path: root/bs/mkdir_p.sh
diff options
context:
space:
mode:
Diffstat (limited to 'bs/mkdir_p.sh')
-rwxr-xr-xbs/mkdir_p.sh37
1 files changed, 37 insertions, 0 deletions
diff --git a/bs/mkdir_p.sh b/bs/mkdir_p.sh
new file mode 100755
index 000000000..cb9e94ca7
--- /dev/null
+++ b/bs/mkdir_p.sh
@@ -0,0 +1,37 @@
+#!/bin/sh
+# based on mkinstalldirs:
+# Original author: Noah Friedman <friedman@prep.ai.mit.edu>
+# Created: 1993-05-16
+# Public domain.
+errstatus=0
+for file
+do
+ test -d "$file" && continue
+ case $file in
+ /*) pathcomp=/ ;;
+ *) pathcomp= ;;
+ esac
+ oIFS=$IFS
+ IFS=/
+ set fnord $file
+ shift
+ IFS=$oIFS
+ for d
+ do
+ test "x$d" = x && continue
+ pathcomp=$pathcomp$d
+ case $pathcomp in
+ -*) pathcomp=./$pathcomp ;;
+ esac
+
+ if test ! -d "$pathcomp"; then
+ mkdir "$pathcomp" || lasterr=$?
+ if test ! -d "$pathcomp"; then
+ errstatus=$lasterr
+ fi
+ fi
+ pathcomp=$pathcomp/
+ done
+done
+
+exit $errstatus