view mkinstalldirs @ 48909:ac6f6d4b84ec

Errors and throws work right with interrupt blocking. (struct catchtag): New elt interrupt_input_blocked. (unwind_to_catch): Restore interrupt_input_blocked from saved value. (internal_catch, Fcondition_case, internal_condition_case) (internal_condition_case_1, internal_condition_case_2): Save it. (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
author Richard M. Stallman <rms@gnu.org>
date Sat, 21 Dec 2002 18:05:00 +0000
parents 774df19dd335
children f0eb34e60705 746c40973d25
line wrap: on
line source

#! /bin/sh
# mkinstalldirs --- make directory hierarchy
# Author: Noah Friedman <friedman@prep.ai.mit.edu>
# Created: 1993-05-16
# Public domain

# $Id: mkinstalldirs,v 1.1 2001/02/02 13:04:53 gerd Exp $

errstatus=0

for file
do
   set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
   shift

   pathcomp=
   for d
   do
     pathcomp="$pathcomp$d"
     case "$pathcomp" in
       -* ) pathcomp=./$pathcomp ;;
     esac

     if test ! -d "$pathcomp"; then
        echo "mkdir $pathcomp" 1>&2

        (mkdir "$pathcomp" && chmod a+rx "$pathcomp") || lasterr=$?

        if test ! -d "$pathcomp"; then
  	  errstatus=$lasterr
        fi
     fi

     pathcomp="$pathcomp/"
   done
done

exit $errstatus

# mkinstalldirs ends here