/*
-goredo -- redo implementation on pure Go
-Copyright (C) 2020 Sergey Matveev <stargrave@stargrave.org>
+goredo -- djb's redo implementation on pure Go
+Copyright (C) 2020-2021 Sergey Matveev <stargrave@stargrave.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
Jobs.Wait()
close(errs)
if !ok {
- trace(CDebug, "alwayses failed, skipping depdendants")
+ trace(CDebug, "alwayses failed, skipping dependants")
return nil
}
jobs := 0
queueSrc = []string{}
for _, tgt := range queue {
- ood, err := isOOD(Cwd, tgt, 0, seen)
+ ood, err := isOODWithTrace(Cwd, tgt, 0, seen)
if err != nil {
trace(CErr, "dependant error: %s, skipping dependants", err)
return nil
defer jsAcquire("ifchange exiting")
defer Jobs.Wait()
seen := buildDependants(tgts)
+ oodTgtsClear()
trace(CDebug, "building %d targets: %v", len(tgts), tgts)
jobs := 0
errs := make(chan error, len(tgts))
var err error
for _, tgt := range tgts {
if _, ok := seen[tgt]; ok {
- trace(CDebug, "%s was already build as a dependenant", tgt)
+ trace(CDebug, "%s was already build as a dependant", tgt)
continue
}
ood = true
if !forced {
- ood, err = isOOD(Cwd, tgt, 0, seen)
+ ood, err = isOODWithTrace(Cwd, tgt, 0, seen)
if err != nil {
return false, err
}