summaryrefslogtreecommitdiff
path: root/runner
diff options
context:
space:
mode:
Diffstat (limited to 'runner')
-rw-r--r--runner/gnumake/make.go10
1 files changed, 7 insertions, 3 deletions
diff --git a/runner/gnumake/make.go b/runner/gnumake/make.go
index 91f48de..9332773 100644
--- a/runner/gnumake/make.go
+++ b/runner/gnumake/make.go
@@ -60,13 +60,16 @@ func (m *gnumake) Index(path string, f fs.FS, _ []model.Runner) ([]model.Target,
return ParseOutput(makefile), nil
}
-var makeRegex = regexp.MustCompile("(?m)^([a-zA-Z]*):(([ \t]*?)#(.*))?")
+var makeRegex = regexp.MustCompile(`(?m)^(\S+?):[^=].*$`)
func ParseOutput(input string) []model.Target {
var targets []string
- match := makeRegex.FindAllString(input, strings.Count(input, "\n"))
+ match := makeRegex.FindAllStringSubmatch(input, strings.Count(input, "\n"))
for _, m := range match {
- targets = append(targets, m)
+ if len(m) < 2 {
+ continue
+ }
+ targets = append(targets, m[1])
}
var result []model.Target
@@ -78,6 +81,7 @@ func ParseOutput(input string) []model.Target {
tgt := &Target{
BaseTarget: runner.BaseTarget{
Identity: identity.New(name),
+ MySub: makeSub,
MyTags: nil,
},
Name: name,