aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFumitoshi Ukai <ukai@google.com>2015-09-04 17:44:15 +0900
committerFumitoshi Ukai <ukai@google.com>2015-09-04 17:47:25 +0900
commitd1578d5dde721535c89e3b894e7cd048648eca17 (patch)
tree14562f1cd16c1360dbce3ac56434f6a60516ba6a
parent875bd5fc5efb23b80dc40f060e32cecb76e73d58 (diff)
downloadkati-d1578d5dde721535c89e3b894e7cd048648eca17.tar.gz
[go] fix func_backslash.mk and err_invalid_ifeq5.mk
emit "Nothing to be done for '<target>'" in these test. don't remove "Nothing to be done for 'test' for err_invalid_ifreq3.mk and mark it as TODO(c)
-rw-r--r--parser.go3
-rwxr-xr-xruntest.rb3
-rw-r--r--testcase/err_invalid_ifeq3.mk1
-rw-r--r--worker.go4
4 files changed, 6 insertions, 5 deletions
diff --git a/parser.go b/parser.go
index 8f85dd2..aef20e2 100644
--- a/parser.go
+++ b/parser.go
@@ -376,8 +376,7 @@ func (p *parser) parseIfeq(op string, data []byte) {
}
if len(extra) > 0 {
glog.V(1).Infof("extra %q", extra)
- p.err = p.srcpos().errorf(`extraneous text after %q directive`, op)
- return
+ warnNoPrefix(p.srcpos(), `extraneous text after %q directive`, op)
}
lhs, _, err := parseExpr([]byte(lhsBytes), nil, parseOp{matchParen: true})
diff --git a/runtest.rb b/runtest.rb
index 75b2eb5..39c1ed1 100755
--- a/runtest.rb
+++ b/runtest.rb
@@ -121,9 +121,6 @@ def normalize_make_log(expected, mk, via_ninja)
# GNU make 4.0 has this output.
expected.gsub!(/Makefile:\d+: commands for target ".*?" failed\n/, '')
# We treat some warnings as errors.
- if mk =~ /err_invalid_ifeq3.mk/
- expected.gsub!(/Nothing to be done for "test"\.\n/, '')
- end
expected.gsub!(/^\/bin\/sh: line 0: /, '')
# We print out some ninja warnings in some tests to match what we expect
# ninja to produce. Remove them if we're not testing ninja.
diff --git a/testcase/err_invalid_ifeq3.mk b/testcase/err_invalid_ifeq3.mk
index 7c1f1ef..c013f48 100644
--- a/testcase/err_invalid_ifeq3.mk
+++ b/testcase/err_invalid_ifeq3.mk
@@ -1,3 +1,4 @@
+# TODO(c): fix - should emit "Nothing to be done for 'test'".
ifeq "foo" "bar" "baz"
else
endif
diff --git a/worker.go b/worker.go
index 7fbeec6..a339d23 100644
--- a/worker.go
+++ b/worker.go
@@ -155,6 +155,9 @@ func (j *job) build() error {
if err != nil {
return err
}
+ if len(rr) == 0 {
+ return errNothingDone
+ }
for _, r := range rr {
err := r.run(j.n.Output)
glog.Warningf("cmd result for %q: %v", j.n.Output, err)
@@ -360,5 +363,6 @@ func (wm *workerManager) ReportNewDep(j *job, neededBy *job) {
func (wm *workerManager) Wait() (int, error) {
wm.waitChan <- true
err := <-wm.doneChan
+ glog.V(2).Infof("finish %d skip %d", wm.finishCnt, wm.skipCnt)
return wm.finishCnt - wm.skipCnt, err
}