- return &depInfo, nil
-}
-
-func rebuildStamped(cwd, tgt, depPath, stampPrev string) (bool, error) {
- relTgt := cwdMustRel(cwd, tgt)
- errs := make(chan error, 1)
- if err := runScript(relTgt, errs, stampPrev); err != nil {
- return false, err
- }
- if err := <-errs; !isOkRun(err) {
- return false, errors.New("build failed")
- }
- fdDep, err := os.Open(depPath)
- if err != nil {
- return false, err
- }
- defer fdDep.Close()
- depInfo, err := depRead(fdDep)
- if err != nil {
- return false, err
- }
- if depInfo.build != BuildUUID {
- return false, errors.New("is not built")
- }
- return depInfo.stampSame, nil
-}
-
-func formDepPath(cwd, tgt string) string {
- cwd, tgt = cwdAndTgt(path.Join(cwd, tgt))
- return path.Join(cwd, RedoDir, tgt+DepSuffix)
-}