Develop and Download Open Source Software

Browse CVS Repository

Annotation of /malonnote/mkinstalldirs

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1.1.1 - (hide annotations) (download) (vendor branch)
Thu Jul 28 03:25:05 2005 UTC (18 years, 7 months ago) by maloninc
Branch: vendor, MAIN
CVS Tags: dev-1_0-0010, dev-1_0-0011, dev-1_0-0012, dev-1_0-0013, dev-1_0-0014, dev-1_0-0015, dev-1_0-0016, dev-1_0-0017, rel-0_9_1, dev-0_9_1-0002-merged-01, rel_1_3, dev-0_9_1-root, dev-0_9-0001-merged-01, dev-1_0-0009, rel_1_4, start, dev_1_3-0008, release-0_9_1, dev-0_9_1-0000, dev_1_3-0004, dev_1_3-0005, dev_1_3-0006, dev_1_3-0007, dev-1_0-0003-wxHtmlWindow, dev_1_3-0001, dev_1_3-0002, dev_1_3-0003, rel-1_1, dev-0_9_1-0003, dev-0_9_1-0002, dev_1_5-0002, rel-0_9, dev_1_5-0001, rel_1_7_1, dev_1_5-0004, dev-0_9_1, dev-1_0-0001, dev-1_0-0008, dev-1_0-0007, dev-1_0-0006, dev-1_0-0005, dev-1_0-0004, dev_1_4-0001, rel-1_0, dev_1_4-0003, dev_1_4-0002, dev_1_4-0005, dev-0_9_1-merged-02, dev_1_4-0006, dev-1_1-0005, dev-1_1-0006, dev-1_1-0007, dev-1_1-0001, dev-1_1-0002, dev-1_1-0003, dev-1_2-0001, dev-1_1-0009, dev_1_6-0005, dev_1_6-0004, dev_1_6-0003, dev_1_6-0002, dev_1_6-0001, dev-1_0-0002-textctrl, dev-1_1-0008, release-09, dev-0_9-merged-02, HEAD
Branch point for: dev-0_9_1-0001
Changes since 1.1: +0 -0 lines
Init

1 maloninc 1.1 #! /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     # $Id$
8    
9     errstatus=0
10     dirmode=""
11    
12     usage="\
13     Usage: mkinstalldirs [-h] [--help] [-m mode] dir ..."
14    
15     # process command line arguments
16     while test $# -gt 0 ; do
17     case "${1}" in
18     -h | --help | --h* ) # -h for help
19     echo "${usage}" 1>&2; exit 0 ;;
20     -m ) # -m PERM arg
21     shift
22     test $# -eq 0 && { echo "${usage}" 1>&2; exit 1; }
23     dirmode="${1}"
24     shift ;;
25     -- ) shift; break ;; # stop option processing
26     -* ) echo "${usage}" 1>&2; exit 1 ;; # unknown option
27     * ) break ;; # first non-opt arg
28     esac
29     done
30    
31     for file
32     do
33     if test -d "$file"; then
34     shift
35     else
36     break
37     fi
38     done
39    
40     case $# in
41     0) exit 0 ;;
42     esac
43    
44     case $dirmode in
45     '')
46     if mkdir -p -- . 2>/dev/null; then
47     echo "mkdir -p -- $*"
48     exec mkdir -p -- "$@"
49     fi ;;
50     *)
51     if mkdir -m "$dirmode" -p -- . 2>/dev/null; then
52     echo "mkdir -m $dirmode -p -- $*"
53     exec mkdir -m "$dirmode" -p -- "$@"
54     fi ;;
55     esac
56    
57     for file
58     do
59     set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
60     shift
61    
62     pathcomp=
63     for d
64     do
65     pathcomp="$pathcomp$d"
66     case "$pathcomp" in
67     -* ) pathcomp=./$pathcomp ;;
68     esac
69    
70     if test ! -d "$pathcomp"; then
71     echo "mkdir $pathcomp"
72    
73     mkdir "$pathcomp" || lasterr=$?
74    
75     if test ! -d "$pathcomp"; then
76     errstatus=$lasterr
77     else
78     if test ! -z "$dirmode"; then
79     echo "chmod $dirmode $pathcomp"
80    
81     lasterr=""
82     chmod "$dirmode" "$pathcomp" || lasterr=$?
83    
84     if test ! -z "$lasterr"; then
85     errstatus=$lasterr
86     fi
87     fi
88     fi
89     fi
90    
91     pathcomp="$pathcomp/"
92     done
93     done
94    
95     exit $errstatus
96    
97     # Local Variables:
98     # mode: shell-script
99     # sh-indentation: 3
100     # End:
101     # mkinstalldirs ends here

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26