From 99cdaff70da08dffb209ba58cd5cae4b1a4fb736 Mon Sep 17 00:00:00 2001 From: Martin Pool Date: Thu, 6 Sep 2001 05:52:40 +0000 Subject: [PATCH] Add a makepath() function to cope with machines that do not have 'mkdir -p'. (Stone knives and bearskins...) --- testsuite/rsync.fns | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/testsuite/rsync.fns b/testsuite/rsync.fns index 369d38c8..8dd91a1b 100644 --- a/testsuite/rsync.fns +++ b/testsuite/rsync.fns @@ -77,6 +77,30 @@ hands_setup() { + +#################### +# Many machines do not have "mkdir -p", so we have to build up long paths. +# How boring. +makepath () { + p="$1" + ( + # Absolut Unix. + if echo $p | grep '^/' >/dev/null + then + cd / + fi + + # This will break if $1 contains a space. + for c in `echo $p | tr '/' ' '` + do + [ -d "$c" ] || mkdir "$c" || return $? + cd "$c" || return $? + done + ) +} + + + ########################### # Run a test (in '$1') then compare directories $2 and $3 to see if # there are any difference. If there are, explain them. -- 2.34.1