From e7d0992be6facf88c7780c5095af208ed9d4289c Mon Sep 17 00:00:00 2001 From: ewy Date: Sat, 11 Jul 2026 18:05:17 +0200 Subject: improve makefile regex, hopefully --- runner/gnumake/make.go | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'runner/gnumake/make.go') 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, -- cgit v1.3.1