source: trunk/third/gtksourceview/mkinstalldirs @ 21463

Revision 21463, 1.9 KB checked in by ghudson, 20 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r21462, which included commits to RCS files with non-trunk default branches.
  • Property svn:executable set to *
RevLine 
[20968]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
7errstatus=0
8dirmode=""
9
10usage="\
11Usage: mkinstalldirs [-h] [--help] [-m mode] dir ..."
12
13# process command line arguments
14while test $# -gt 0 ; do
[21462]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
[20968]38done
39
40for file
41do
42  if test -d "$file"; then
43    shift
44  else
45    break
46  fi
47done
48
49case $# in
[21462]50  0) exit 0 ;;
[20968]51esac
52
53case $dirmode in
[21462]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    ;;
[20968]66esac
67
68for file
69do
[21462]70  set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
71  shift
[20968]72
[21462]73  pathcomp=
74  for d
75  do
76    pathcomp="$pathcomp$d"
77    case $pathcomp in
78      -*) pathcomp=./$pathcomp ;;
79    esac
[20968]80
[21462]81    if test ! -d "$pathcomp"; then
82      echo "mkdir $pathcomp"
[20968]83
[21462]84      mkdir "$pathcomp" || lasterr=$?
[20968]85
[21462]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=$?
[20968]93
[21462]94          if test ! -z "$lasterr"; then
95            errstatus=$lasterr
96          fi
97        fi
98      fi
99    fi
[20968]100
[21462]101    pathcomp="$pathcomp/"
102  done
[20968]103done
104
105exit $errstatus
106
107# Local Variables:
108# mode: shell-script
[21462]109# sh-indentation: 2
[20968]110# End:
111# mkinstalldirs ends here
Note: See TracBrowser for help on using the repository browser.