From e98c5df99b41d0279216f5cd3a06af35ead57a71 Mon Sep 17 00:00:00 2001 From: Henning Geinitz Date: Thu, 22 Nov 2001 20:17:48 +0000 Subject: [PATCH] Updated for OS/2 (from "Franz Bakan" ). Henning Meier-Geinitz --- mkinstalldirs | 40 +++++++++++++++++++++++++++++++++++++--- 1 file changed, 37 insertions(+), 3 deletions(-) diff --git a/mkinstalldirs b/mkinstalldirs index 6b3b5fc5d..21a52f382 100755 --- a/mkinstalldirs +++ b/mkinstalldirs @@ -7,6 +7,26 @@ # $Id$ errstatus=0 +dirmode="" + +usage="\ +Usage: mkinstalldirs [-h] [--help] [-m mode] dir ..." + +# process command line arguments +while test $# -gt 0 ; do + case "${1}" in + -h | --help | --h* ) # -h for help + echo "${usage}" 1>&2; exit 0 ;; + -m ) # -m PERM arg + shift + test $# -eq 0 && { echo "${usage}" 1>&2; exit 1; } + dirmode="${1}" + shift ;; + -- ) shift; break ;; # stop option processing + -* ) echo "${usage}" 1>&2; exit 1 ;; # unknown option + * ) break ;; # first non-opt arg + esac +done for file do @@ -21,13 +41,24 @@ do -* ) pathcomp=./$pathcomp ;; esac - if test ! -d "$pathcomp"; then + if test ! -d "$pathcomp" -a ! -d "$pathcomp/"; then echo "mkdir $pathcomp" mkdir "$pathcomp" || lasterr=$? - if test ! -d "$pathcomp"; then + if test ! -d "$pathcomp" -a ! -d "$pathcomp/"; then errstatus=$lasterr + else + if test ! -z "$dirmode"; then + echo "chmod $dirmode $pathcomp" + + lasterr="" + chmod $dirmode "$pathcomp" || lasterr=$? + + if test ! -z "$lasterr"; then + errstatus=$lasterr + fi + fi fi fi @@ -37,4 +68,7 @@ done exit $errstatus -# mkinstalldirs ends here +# Local Variables: +# mode:shell-script +# sh-indentation:3 +# End: