1*b30d1939SAndy Fiddaman#!/bin/sh 2*b30d1939SAndy Fiddaman######################################################################## 3*b30d1939SAndy Fiddaman# # 4*b30d1939SAndy Fiddaman# This software is part of the ast package # 5*b30d1939SAndy Fiddaman# Copyright (c) 1994-2011 AT&T Intellectual Property # 6*b30d1939SAndy Fiddaman# and is licensed under the # 7*b30d1939SAndy Fiddaman# Eclipse Public License, Version 1.0 # 8*b30d1939SAndy Fiddaman# by AT&T Intellectual Property # 9*b30d1939SAndy Fiddaman# # 10*b30d1939SAndy Fiddaman# A copy of the License is available at # 11*b30d1939SAndy Fiddaman# http://www.eclipse.org/org/documents/epl-v10.html # 12*b30d1939SAndy Fiddaman# (with md5 checksum b35adb5213ca9657e911e9befb180842) # 13*b30d1939SAndy Fiddaman# # 14*b30d1939SAndy Fiddaman# Information and Software Systems Research # 15*b30d1939SAndy Fiddaman# AT&T Research # 16*b30d1939SAndy Fiddaman# Florham Park NJ # 17*b30d1939SAndy Fiddaman# # 18*b30d1939SAndy Fiddaman# Glenn Fowler <gsf@research.att.com> # 19*b30d1939SAndy Fiddaman# # 20*b30d1939SAndy Fiddaman######################################################################## 21*b30d1939SAndy Fiddaman: mkdir for systems that do not support -p : 2002-09-01 : 22*b30d1939SAndy FiddamanMKDIR=/bin/mkdir 23*b30d1939SAndy FiddamanCHMOD=chmod 24*b30d1939SAndy Fiddamanmode= 25*b30d1939SAndy Fiddamanparents= 26*b30d1939SAndy Fiddamanwhile : 27*b30d1939SAndy Fiddamando case $1 in 28*b30d1939SAndy Fiddaman -m) case $# in 29*b30d1939SAndy Fiddaman 1) echo "mkdir: -m: mode argument expected" >&2 30*b30d1939SAndy Fiddaman exit 1 31*b30d1939SAndy Fiddaman ;; 32*b30d1939SAndy Fiddaman esac 33*b30d1939SAndy Fiddaman shift 34*b30d1939SAndy Fiddaman mode=$1 35*b30d1939SAndy Fiddaman ;; 36*b30d1939SAndy Fiddaman -m*) mode=`echo X$1 | sed 's/X-m//'` 37*b30d1939SAndy Fiddaman ;; 38*b30d1939SAndy Fiddaman -p) parents=1 39*b30d1939SAndy Fiddaman ;; 40*b30d1939SAndy Fiddaman *) break 41*b30d1939SAndy Fiddaman ;; 42*b30d1939SAndy Fiddaman esac 43*b30d1939SAndy Fiddaman shift 44*b30d1939SAndy Fiddamandone 45*b30d1939SAndy Fiddamanif test "" != "$parents" 46*b30d1939SAndy Fiddamanthen for d 47*b30d1939SAndy Fiddaman do if test ! -d $d 48*b30d1939SAndy Fiddaman then ifs=${IFS-' 49*b30d1939SAndy Fiddaman '} 50*b30d1939SAndy Fiddaman IFS=/ 51*b30d1939SAndy Fiddaman set '' $d 52*b30d1939SAndy Fiddaman IFS=$ifs 53*b30d1939SAndy Fiddaman shift 54*b30d1939SAndy Fiddaman dir=$1 55*b30d1939SAndy Fiddaman shift 56*b30d1939SAndy Fiddaman if test -n "$dir" -a ! -d "$dir" 57*b30d1939SAndy Fiddaman then $MKDIR "$dir" || exit 1 58*b30d1939SAndy Fiddaman if test "" != "$mode" 59*b30d1939SAndy Fiddaman then $CHMOD "$mode" "$dir" || exit 1 60*b30d1939SAndy Fiddaman fi 61*b30d1939SAndy Fiddaman fi 62*b30d1939SAndy Fiddaman for d 63*b30d1939SAndy Fiddaman do dir=$dir/$d 64*b30d1939SAndy Fiddaman if test ! -d "$dir" 65*b30d1939SAndy Fiddaman then $MKDIR "$dir" || exit 1 66*b30d1939SAndy Fiddaman if test "" != "$mode" 67*b30d1939SAndy Fiddaman then $CHMOD "$mode" "$dir" || exit 1 68*b30d1939SAndy Fiddaman fi 69*b30d1939SAndy Fiddaman fi 70*b30d1939SAndy Fiddaman done 71*b30d1939SAndy Fiddaman fi 72*b30d1939SAndy Fiddaman done 73*b30d1939SAndy Fiddamanelse $MKDIR "$@" || exit 1 74*b30d1939SAndy Fiddaman if test "" != "$mode" 75*b30d1939SAndy Fiddaman then for d 76*b30d1939SAndy Fiddaman do $CHMOD "$mode" "$d" || exit 1 77*b30d1939SAndy Fiddaman done 78*b30d1939SAndy Fiddaman fi 79*b30d1939SAndy Fiddamanfi 80*b30d1939SAndy Fiddamanexit 0 81