+func depReadOnlyIfchanges(pth string) (ifchanges []string, err error) {
+ data, err := os.ReadFile(pth)
+ if err != nil {
+ return
+ }
+ r := recfile.NewReader(bytes.NewReader(data))
+ var m map[string]string
+ for {
+ m, err = r.NextMap()
+ if err != nil {
+ if errors.Is(err, io.EOF) {
+ err = nil
+ break
+ }
+ return
+ }
+ if m["Type"] == DepTypeIfchange {
+ ifchanges = append(ifchanges, m["Target"])
+ }
+ }
+ return
+}
+