diff options
author | Shinichiro Hamaji <shinichiro.hamaji@gmail.com> | 2015-04-29 03:02:59 +0900 |
---|---|---|
committer | Shinichiro Hamaji <shinichiro.hamaji@gmail.com> | 2015-04-29 03:02:59 +0900 |
commit | 212abfb18ea3e5210f539428e56cef65adfc1552 (patch) | |
tree | 977f95a4c72c14885c84c571ad5f042007c02f57 | |
parent | 7e3ec86179ced119712ce90832d4a86dddda63a7 (diff) | |
download | android_build_kati-212abfb18ea3e5210f539428e56cef65adfc1552.tar.gz android_build_kati-212abfb18ea3e5210f539428e56cef65adfc1552.tar.bz2 android_build_kati-212abfb18ea3e5210f539428e56cef65adfc1552.zip |
Fix non-first line concatenation for commands
-rw-r--r-- | testcase/multiline_recipe.mk | 9 | ||||
-rw-r--r-- | worker.go | 6 |
2 files changed, 12 insertions, 3 deletions
diff --git a/testcase/multiline_recipe.mk b/testcase/multiline_recipe.mk index 7671bea..586639d 100644 --- a/testcase/multiline_recipe.mk +++ b/testcase/multiline_recipe.mk @@ -44,3 +44,12 @@ test5: # echo foo\ # $${empty}bar +define cmd7 +@echo first +@echo second +endef + +test7: + $(cmd7) \ + third + @@ -116,9 +116,9 @@ func evalCmd(ev *Evaluator, r runner, s string) []runner { cmds := string(ev.Value(expr)) var runners []runner for _, cmd := range strings.Split(cmds, "\n") { - if len(runners) > 0 && strings.HasSuffix(runners[0].cmd, "\\") { - runners[0].cmd += "\n" - runners[0].cmd += cmd + if len(runners) > 0 && strings.HasSuffix(runners[len(runners)-1].cmd, "\\") { + runners[len(runners)-1].cmd += "\n" + runners[len(runners)-1].cmd += cmd } else { runners = append(runners, newRunner(r, cmd)) } |