aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFumitoshi Ukai <fumitoshi.ukai@gmail.com>2015-04-08 13:41:22 +0900
committerFumitoshi Ukai <fumitoshi.ukai@gmail.com>2015-04-08 13:41:22 +0900
commitbac3ccf9048c05b43ac2ba1fbc1db55f99cb0269 (patch)
tree143113e695456fdf4bf6cc04f088cf54b143feb9
parente1e34445b36c2a3b5da8f0c79e5d79b3d402d119 (diff)
downloadandroid_build_kati-bac3ccf9048c05b43ac2ba1fbc1db55f99cb0269.tar.gz
android_build_kati-bac3ccf9048c05b43ac2ba1fbc1db55f99cb0269.tar.bz2
android_build_kati-bac3ccf9048c05b43ac2ba1fbc1db55f99cb0269.zip
add&fix curdir_implicit_rule
-rw-r--r--exec.go14
-rw-r--r--testcase/curdir_implicit_rule.mk13
2 files changed, 20 insertions, 7 deletions
diff --git a/exec.go b/exec.go
index 7e20e3c..bf54345 100644
--- a/exec.go
+++ b/exec.go
@@ -232,7 +232,7 @@ func (ex *Executor) build(vars *VarTab, output string) (int64, error) {
Log("Building: %s", output)
outputTs, ok := ex.done[output]
if ok {
- Log("Building: %s already done: %d", outputTs)
+ Log("Building: %s already done: %d", output, outputTs)
return outputTs, nil
}
outputTs = getTimestamp(output)
@@ -363,12 +363,6 @@ func (ex *Executor) populateExplicitRule(rule *Rule) {
if len(rule.outputs) == 0 {
return
}
- for i, input := range rule.inputs {
- rule.inputs[i] = filepath.Clean(input)
- }
- for i, orderOnlyInput := range rule.orderOnlyInputs {
- rule.orderOnlyInputs[i] = filepath.Clean(orderOnlyInput)
- }
for _, output := range rule.outputs {
output = filepath.Clean(output)
@@ -426,6 +420,12 @@ func (ex *Executor) populateImplicitRule(rule *Rule) {
func (ex *Executor) populateRules(er *EvalResult) {
for _, rule := range er.rules {
+ for i, input := range rule.inputs {
+ rule.inputs[i] = filepath.Clean(input)
+ }
+ for i, orderOnlyInput := range rule.orderOnlyInputs {
+ rule.orderOnlyInputs[i] = filepath.Clean(orderOnlyInput)
+ }
ex.populateExplicitRule(rule)
if len(rule.outputs) == 0 {
diff --git a/testcase/curdir_implicit_rule.mk b/testcase/curdir_implicit_rule.mk
new file mode 100644
index 0000000..1f4ffaa
--- /dev/null
+++ b/testcase/curdir_implicit_rule.mk
@@ -0,0 +1,13 @@
+srcdir := .
+
+test: foo.o bar.o
+ echo linking $@ from $<
+
+%.o: $(srcdir)/%.c
+ echo compiling $@ from $<
+
+$(srcdir)/foo.c:
+ echo source $@
+
+bar.c:
+ echo source $@