/[zanavi_public1]/navit/mkinstalldirs
ZANavi

Contents of /navit/mkinstalldirs

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2 - (hide annotations) (download)
Fri Oct 28 21:19:04 2011 UTC (12 years, 5 months ago) by zoff99
File size: 1988 byte(s)
import files
1 zoff99 2 #! /bin/sh
2     # mkinstalldirs --- make directory hierarchy
3     # Author: Noah Friedman <friedman@prep.ai.mit.edu>
4     # Created: 1993-05-16
5     # Public domain
6    
7     errstatus=0
8     dirmode=""
9    
10     usage="\
11     Usage: mkinstalldirs [-h] [--help] [-m mode] dir ..."
12    
13     # process command line arguments
14     while test $# -gt 0 ; do
15     case $1 in
16     -h | --help | --h*) # -h for help
17     echo "$usage" 1>&2
18     exit 0
19     ;;
20     -m) # -m PERM arg
21     shift
22     test $# -eq 0 && { echo "$usage" 1>&2; exit 1; }
23     dirmode=$1
24     shift
25     ;;
26     --) # stop option processing
27     shift
28     break
29     ;;
30     -*) # unknown option
31     echo "$usage" 1>&2
32     exit 1
33     ;;
34     *) # first non-opt arg
35     break
36     ;;
37     esac
38     done
39    
40     for file
41     do
42     if test -d "$file"; then
43     shift
44     else
45     break
46     fi
47     done
48    
49     case $# in
50     0) exit 0 ;;
51     esac
52    
53     case $dirmode in
54     '')
55     if mkdir -p -- . 2>/dev/null; then
56     echo "mkdir -p -- $*"
57     exec mkdir -p -- "$@"
58     fi
59     ;;
60     *)
61     if mkdir -m "$dirmode" -p -- . 2>/dev/null; then
62     echo "mkdir -m $dirmode -p -- $*"
63     exec mkdir -m "$dirmode" -p -- "$@"
64     fi
65     ;;
66     esac
67    
68     for file
69     do
70     set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
71     shift
72    
73     pathcomp=
74     for d
75     do
76     pathcomp="$pathcomp$d"
77     case $pathcomp in
78     -*) pathcomp=./$pathcomp ;;
79     esac
80    
81     if test ! -d "$pathcomp"; then
82     echo "mkdir $pathcomp"
83    
84     mkdir "$pathcomp" || lasterr=$?
85    
86     if test ! -d "$pathcomp"; then
87     errstatus=$lasterr
88     else
89     if test ! -z "$dirmode"; then
90     echo "chmod $dirmode $pathcomp"
91     lasterr=""
92     chmod "$dirmode" "$pathcomp" || lasterr=$?
93    
94     if test ! -z "$lasterr"; then
95     errstatus=$lasterr
96     fi
97     fi
98     fi
99     fi
100    
101     pathcomp="$pathcomp/"
102     done
103     done
104    
105     exit $errstatus
106    
107     # Local Variables:
108     # mode: shell-script
109     # sh-indentation: 2
110     # End:
111     # mkinstalldirs ends here

Properties

Name Value
svn:executable *

   
Visit the ZANavi Wiki