From 6e4dcca95a666a1e5a37e70dcdbfed504f7e3941 Mon Sep 17 00:00:00 2001 From: Sergey Matveev Date: Wed, 15 Sep 2021 23:13:13 +0300 Subject: [PATCH] Fix proper ifcreate relative paths --- doc/news.texi | 7 +++++++ main.go | 9 ++++++++- t/goredo-rel-ifcreate.t | 29 +++++++++++++++++++++++++++++ usage.go | 2 +- 4 files changed, 45 insertions(+), 2 deletions(-) create mode 100755 t/goredo-rel-ifcreate.t diff --git a/doc/news.texi b/doc/news.texi index 650c12c..e4016ca 100644 --- a/doc/news.texi +++ b/doc/news.texi @@ -1,6 +1,13 @@ @node News @unnumbered News +@anchor{Release 1_14_0} +@section Release 1.14.0 +@itemize +@item + Fixed @command{redo-ifcreate}'s targets proper relative paths to the target. +@end itemize + @anchor{Release 1_13_0} @section Release 1.13.0 @itemize diff --git a/main.go b/main.go index 4338d00..67c428c 100644 --- a/main.go +++ b/main.go @@ -308,7 +308,14 @@ CmdSwitch: log.Fatalln("no", EnvDepFd) } for _, tgt := range tgts { - err = ifcreate(fdDep, tgt) + tgtRel, err := filepath.Rel( + filepath.Join(Cwd, DirPrefix), + filepath.Join(Cwd, tgt), + ) + if err != nil { + break + } + err = ifcreate(fdDep, tgtRel) if err != nil { break } diff --git a/t/goredo-rel-ifcreate.t b/t/goredo-rel-ifcreate.t new file mode 100755 index 0000000..bf5bcab --- /dev/null +++ b/t/goredo-rel-ifcreate.t @@ -0,0 +1,29 @@ +#!/bin/sh + +testname=`basename "$0"` +test_description="Proper relative to DirPrefix ifcreate paths" +. $SHARNESS_TEST_SRCDIR/sharness.sh +export REDO_TOP_DIR="`pwd`" REDO_NO_PROGRESS=1 + +mkdir -p a/b/c a/c +echo whatever > a/b/c/dep +cat > a/b/default.do <