doc/news.texi | 7 +++++++ ood.go | 4 ++++ t/redo-sh.tests/README | 1 + t/redo-sh.tests/ood_1/test | 4 ++-- t/redo-sh.tests/ood_2/test | 4 ++-- t/redo-sh.tests/ood_3/test | 4 ++-- usage.go | 2 +- diff --git a/doc/news.texi b/doc/news.texi index 1b730f3624454124a1e98b17f3a5f25622999fbc176e6000e17ec5864af2296d..c94177f5faf4520ff7e5ba81ba4de7c799ce35472139167179950ae75c67e5e0 100644 --- a/doc/news.texi +++ b/doc/news.texi @@ -1,6 +1,13 @@ @node News @unnumbered News +@anchor{Release 1_16_0} +@section Release 1.16.0 +@itemize +@item + Unexistent targets are considered always out-of-date, as it should be. +@end itemize + @anchor{Release 1_15_0} @section Release 1.15.0 @itemize diff --git a/ood.go b/ood.go index b5d7d0f4341c55d13f0f7b4e9ac3e84c113c49ff15f1101dee8ec636d7aad2b0..b3ee26e62307f3e1b2fd35fe2604ef635dec587300445276edd0ffa52506e95b 100644 --- a/ood.go +++ b/ood.go @@ -110,6 +110,10 @@ if depInfo.build == BuildUUID { trace(CDebug, "ood: %s%s -> already built", indent, tgtOrig) return false, nil } + if _, err := os.Stat(path.Join(cwd, tgt)); err != nil && os.IsNotExist(err) { + trace(CDebug, "ood: %s%s -> non-existent", indent, tgtOrig) + return true, nil + } ood := false for _, dep := range depInfo.ifcreates { diff --git a/t/redo-sh.tests/README b/t/redo-sh.tests/README index 913117d2e28970a542df03b2ee76ee1b61f11e08266115b8af73f4b2e5084508..4db041bf9547aab84b5f98ac41262c4ca92ee8e80d36e7bce711a6d87dfea471 100644 --- a/t/redo-sh.tests/README +++ b/t/redo-sh.tests/README @@ -2,3 +2,4 @@ Those tests are taken from http://news.dieweltistgarnichtso.net/bin.git. Test parallel_2 removed, because goredo has no --jobs. Test always_rebuild_1 removed, because always-target is rebuilt once per run. stat call is replaced with portable perl script invocation in ood_*. +ood_* pay attention that "all" is always OOD. diff --git a/t/redo-sh.tests/ood_1/test b/t/redo-sh.tests/ood_1/test index 415ea04ec7827181001b26cf1530a990036f92fea52f95a5463010cdb37b22e9..c4d3756ba841fdbdd3958ae1ebe3d436bc8708b18cb41beb41022b3550ff8095 100755 --- a/t/redo-sh.tests/ood_1/test +++ b/t/redo-sh.tests/ood_1/test @@ -24,13 +24,13 @@ >b printf '2 ' c printf '3 ' d printf '4\n'