]> Cypherpunks.ru repositories - goredo.git/blobdiff - ifchange.go
Repetitive OOD optimization
[goredo.git] / ifchange.go
index f89da48fc7d1dbe9b733c1e679fd8a4044760aa7..1f2c38194934da44475e97e039fb73601536a5a0 100644 (file)
@@ -139,7 +139,7 @@ RebuildDeps:
        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
@@ -176,6 +176,7 @@ func ifchange(tgts []string, forced, traced bool) (bool, error) {
        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))
@@ -188,7 +189,7 @@ func ifchange(tgts []string, forced, traced bool) (bool, error) {
                }
                ood = true
                if !forced {
-                       ood, err = isOOD(Cwd, tgt, 0, seen)
+                       ood, err = isOODWithTrace(Cwd, tgt, 0, seen)
                        if err != nil {
                                return false, err
                        }