aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ast.go12
-rw-r--r--dep.go10
-rw-r--r--eval.go20
-rw-r--r--exec.go8
-rw-r--r--func.go24
-rw-r--r--log.go2
-rw-r--r--main.go4
-rw-r--r--parser.go10
-rw-r--r--strutil.go4
-rw-r--r--worker.go18
10 files changed, 56 insertions, 56 deletions
diff --git a/ast.go b/ast.go
index 0416306..7ab8137 100644
--- a/ast.go
+++ b/ast.go
@@ -64,7 +64,7 @@ func (ast *AssignAST) evalRHS(ev *Evaluator, lhs string) Var {
}
func (ast *AssignAST) show() {
- Log("%s %s %s %q", ast.opt, ast.lhs, ast.op, ast.rhs)
+ Logf("%s %s %s %q", ast.opt, ast.lhs, ast.op, ast.rhs)
}
// Note we cannot be sure what this is, until all variables in |expr|
@@ -81,7 +81,7 @@ func (ast *MaybeRuleAST) eval(ev *Evaluator) {
}
func (ast *MaybeRuleAST) show() {
- Log("%s", ast.expr)
+ Logf("%s", ast.expr)
}
type CommandAST struct {
@@ -94,7 +94,7 @@ func (ast *CommandAST) eval(ev *Evaluator) {
}
func (ast *CommandAST) show() {
- Log("\t%s", strings.Replace(ast.cmd, "\n", `\n`, -1))
+ Logf("\t%s", strings.Replace(ast.cmd, "\n", `\n`, -1))
}
type IncludeAST struct {
@@ -108,7 +108,7 @@ func (ast *IncludeAST) eval(ev *Evaluator) {
}
func (ast *IncludeAST) show() {
- Log("include %s", ast.expr)
+ Logf("include %s", ast.expr)
}
type IfAST struct {
@@ -126,7 +126,7 @@ func (ast *IfAST) eval(ev *Evaluator) {
func (ast *IfAST) show() {
// TODO
- Log("if")
+ Logf("if")
}
type ExportAST struct {
@@ -141,5 +141,5 @@ func (ast *ExportAST) eval(ev *Evaluator) {
func (ast *ExportAST) show() {
// TODO
- Log("export")
+ Logf("export")
}
diff --git a/dep.go b/dep.go
index 1588331..dfe6d0c 100644
--- a/dep.go
+++ b/dep.go
@@ -133,8 +133,8 @@ func (db *DepBuilder) mergeImplicitRuleVars(outputs []string, vars Vars) Vars {
if len(outputs) != 1 {
panic(fmt.Sprintf("Implicit rule should have only one output but %q", outputs))
}
- Log("merge? %q", db.ruleVars)
- Log("merge? %q", outputs[0])
+ Logf("merge? %q", db.ruleVars)
+ Logf("merge? %q", outputs[0])
ivars, present := db.ruleVars[outputs[0]]
if !present {
return vars
@@ -142,7 +142,7 @@ func (db *DepBuilder) mergeImplicitRuleVars(outputs []string, vars Vars) Vars {
if vars == nil {
return ivars
}
- Log("merge!")
+ Logf("merge!")
v := make(Vars)
v.Merge(ivars)
v.Merge(vars)
@@ -223,7 +223,7 @@ func (db *DepBuilder) pickRule(output string) (*Rule, Vars, bool) {
}
func (db *DepBuilder) buildPlan(output string, neededBy string, tsvs Vars) (*DepNode, error) {
- Log("Evaluating command: %s", output)
+ Logf("Evaluating command: %s", output)
db.nodeCnt++
if db.nodeCnt%100 == 0 {
db.reportStats()
@@ -278,7 +278,7 @@ func (db *DepBuilder) buildPlan(output string, neededBy string, tsvs Vars) (*Dep
var children []*DepNode
var actualInputs []string
- Log("Evaluating command: %s inputs:%q", output, rule.inputs)
+ Logf("Evaluating command: %s inputs:%q", output, rule.inputs)
for _, input := range rule.inputs {
if len(rule.outputPatterns) > 0 {
if len(rule.outputPatterns) > 1 {
diff --git a/eval.go b/eval.go
index 0b620e8..e811e6a 100644
--- a/eval.go
+++ b/eval.go
@@ -76,7 +76,7 @@ func (ev *Evaluator) args(buf *buffer, args ...Value) [][]byte {
func (ev *Evaluator) evalAssign(ast *AssignAST) {
ev.lastRule = nil
lhs, rhs := ev.evalAssignAST(ast)
- Log("ASSIGN: %s=%q (flavor:%q)", lhs, rhs, rhs.Flavor())
+ Logf("ASSIGN: %s=%q (flavor:%q)", lhs, rhs, rhs.Flavor())
if len(lhs) == 0 {
Error(ast.filename, ast.lineno, "*** empty variable name.")
}
@@ -111,7 +111,7 @@ func (ev *Evaluator) setTargetSpecificVar(assign *AssignAST, output string) {
}
ev.currentScope = vars
lhs, rhs := ev.evalAssignAST(assign)
- Log("rule outputs:%q assign:%q=%q (flavor:%q)", output, lhs, rhs, rhs.Flavor())
+ Logf("rule outputs:%q assign:%q=%q (flavor:%q)", output, lhs, rhs, rhs.Flavor())
vars.Assign(lhs, TargetSpecificVar{v: rhs, op: assign.op})
ev.currentScope = nil
}
@@ -128,7 +128,7 @@ func (ev *Evaluator) evalMaybeRule(ast *MaybeRuleAST) {
if ast.term == '=' {
line = append(line, ast.afterTerm...)
}
- Log("rule? %q=>%q", ast.expr, line)
+ Logf("rule? %q=>%q", ast.expr, line)
// See semicolon.mk.
if len(bytes.TrimRight(line, " \t\n;")) == 0 {
@@ -145,10 +145,10 @@ func (ev *Evaluator) evalMaybeRule(ast *MaybeRuleAST) {
Error(ast.filename, ast.lineno, "%v", err.Error())
}
freeBuf(buf)
- Log("rule %q => outputs:%q, inputs:%q", line, rule.outputs, rule.inputs)
+ Logf("rule %q => outputs:%q, inputs:%q", line, rule.outputs, rule.inputs)
// TODO: Pretty print.
- //Log("RULE: %s=%s (%d commands)", lhs, rhs, len(cmds))
+ //Logf("RULE: %s=%s (%d commands)", lhs, rhs, len(cmds))
if assign != nil {
if ast.term == ';' {
@@ -178,7 +178,7 @@ func (ev *Evaluator) evalMaybeRule(ast *MaybeRuleAST) {
if ast.term == ';' {
rule.cmds = append(rule.cmds, string(ast.afterTerm[1:]))
}
- Log("rule outputs:%q cmds:%q", rule.outputs, rule.cmds)
+ Logf("rule outputs:%q cmds:%q", rule.outputs, rule.cmds)
ev.lastRule = rule
ev.outRules = append(ev.outRules, rule)
}
@@ -253,7 +253,7 @@ func (ev *Evaluator) evalIncludeFile(fname string, c []byte) error {
}()
mk, err, ok := LookupMakefileCache(fname)
if !ok {
- Log("Reading makefile %q", fname)
+ Logf("Reading makefile %q", fname)
mk, err = ParseMakefile(c, fname)
}
if err != nil {
@@ -308,7 +308,7 @@ func (ev *Evaluator) evalInclude(ast *IncludeAST) {
ev.filename = ast.filename
ev.lineno = ast.lineno
- Log("%s:%d include %q", ev.filename, ev.lineno, ast.expr)
+ Logf("%s:%d include %q", ev.filename, ev.lineno, ast.expr)
v, _, err := parseExpr([]byte(ast.expr), nil)
if err != nil {
panic(err)
@@ -366,7 +366,7 @@ func (ev *Evaluator) evalIf(ast *IfAST) {
val := buf.Len()
freeBuf(buf)
isTrue = (val > 0) == (ast.op == "ifdef")
- Log("%s lhs=%q value=%q => %t", ast.op, ast.lhs, value, isTrue)
+ Logf("%s lhs=%q value=%q => %t", ast.op, ast.lhs, value, isTrue)
case "ifeq", "ifneq":
lexpr := ast.lhs
rexpr := ast.rhs
@@ -376,7 +376,7 @@ func (ev *Evaluator) evalIf(ast *IfAST) {
rhs := string(params[1])
freeBuf(buf)
isTrue = (lhs == rhs) == (ast.op == "ifeq")
- Log("%s lhs=%q %q rhs=%q %q => %t", ast.op, ast.lhs, lhs, ast.rhs, rhs, isTrue)
+ Logf("%s lhs=%q %q rhs=%q %q => %t", ast.op, ast.lhs, lhs, ast.rhs, rhs, isTrue)
default:
panic(fmt.Sprintf("unknown if statement: %q", ast.op))
}
diff --git a/exec.go b/exec.go
index d694c81..f927c58 100644
--- a/exec.go
+++ b/exec.go
@@ -129,7 +129,7 @@ func (v AutoSuffixFVar) Eval(w io.Writer, ev *Evaluator) {
func (ex *Executor) makeJobs(n *DepNode, neededBy *Job) error {
output := n.Output
if neededBy != nil {
- Log("MakeJob: %s for %s", output, neededBy.n.Output)
+ Logf("MakeJob: %s for %s", output, neededBy.n.Output)
}
ex.buildCnt++
if ex.buildCnt%100 == 0 {
@@ -147,7 +147,7 @@ func (ex *Executor) makeJobs(n *DepNode, neededBy *Job) error {
neededBy.numDeps--
}
} else {
- Log("%s already done: %d", j.n.Output, j.outputTs)
+ Logf("%s already done: %d", j.n.Output, j.outputTs)
if neededBy != nil {
ex.wm.ReportNewDep(j, neededBy)
}
@@ -177,7 +177,7 @@ func (ex *Executor) makeJobs(n *DepNode, neededBy *Job) error {
}
deps = append(deps, d)
}
- Log("new: %s (%d)", j.n.Output, j.numDeps)
+ Logf("new: %s (%d)", j.n.Output, j.numDeps)
for _, d := range deps {
ex.trace = append(ex.trace, d.Output)
@@ -267,7 +267,7 @@ func (ex *Executor) createRunners(n *DepNode, avoidIO bool) ([]runner, bool) {
ev.avoidIO = avoidIO
ev.filename = n.Filename
ev.lineno = n.Lineno
- Log("Building: %s cmds:%q", n.Output, n.Cmds)
+ Logf("Building: %s cmds:%q", n.Output, n.Cmds)
r := runner{
output: n.Output,
echo: true,
diff --git a/func.go b/func.go
index 0b962dd..3a9d736 100644
--- a/func.go
+++ b/func.go
@@ -169,7 +169,7 @@ func (f *funcSubst) Eval(w io.Writer, ev *Evaluator) {
from := fargs[0]
to := fargs[1]
text := fargs[2]
- Log("subst from:%q to:%q text:%q", from, to, text)
+ Logf("subst from:%q to:%q text:%q", from, to, text)
w.Write(bytes.Replace(text, from, to, -1))
freeBuf(abuf)
}
@@ -601,12 +601,12 @@ func (f *funcRealpath) Eval(w io.Writer, ev *Evaluator) {
name := string(ws.Bytes())
name, err := filepath.Abs(name)
if err != nil {
- Log("abs: %v", err)
+ Logf("abs: %v", err)
continue
}
name, err = filepath.EvalSymlinks(name)
if err != nil {
- Log("realpath: %v", err)
+ Logf("realpath: %v", err)
continue
}
sw.WriteString(name)
@@ -627,7 +627,7 @@ func (f *funcAbspath) Eval(w io.Writer, ev *Evaluator) {
name := string(ws.Bytes())
name, err := filepath.Abs(name)
if err != nil {
- Log("abs: %v", err)
+ Logf("abs: %v", err)
continue
}
sw.WriteString(name)
@@ -713,7 +713,7 @@ func hasNoIoInShellScript(s []byte) bool {
if !bytes.HasPrefix(s, []byte("echo $((")) || s[len(s)-1] != ')' {
return false
}
- Log("has no IO - evaluate now: %s", s)
+ Logf("has no IO - evaluate now: %s", s)
return true
}
@@ -742,7 +742,7 @@ func (f *funcShell) Eval(w io.Writer, ev *Evaluator) {
out, err := cmd.Output()
shellFuncTime += time.Now().Sub(t)
if err != nil {
- Log("$(shell %q) failed: %q", arg, err)
+ Logf("$(shell %q) failed: %q", arg, err)
}
w.Write(formatCommandOutput(out))
@@ -757,7 +757,7 @@ func (f *funcCall) Eval(w io.Writer, ev *Evaluator) {
abuf := newBuf()
fargs := ev.args(abuf, f.args[1:]...)
variable := fargs[0]
- Log("call %q variable %q", f.args[1], variable)
+ Logf("call %q variable %q", f.args[1], variable)
v := ev.LookupVar(string(variable))
// Evalualte all arguments first before we modify the table.
var args []tmpval
@@ -770,7 +770,7 @@ func (f *funcCall) Eval(w io.Writer, ev *Evaluator) {
for i, arg := range fargs[1:] {
// f.args[2]=>args[1] will be $1.
args = append(args, tmpval(arg))
- Log("call $%d: %q=>%q", i+1, arg, fargs[i+1])
+ Logf("call $%d: %q=>%q", i+1, arg, fargs[i+1])
}
oldParams := ev.paramVars
ev.paramVars = args
@@ -794,7 +794,7 @@ func (f *funcCall) Eval(w io.Writer, ev *Evaluator) {
restore()
}
ev.paramVars = oldParams
- Log("call %q variable %q return %q", f.args[1], variable, buf.Bytes())
+ Logf("call %q variable %q return %q", f.args[1], variable, buf.Bytes())
freeBuf(abuf)
}
@@ -817,7 +817,7 @@ func (f *funcEval) Eval(w io.Writer, ev *Evaluator) {
abuf := newBuf()
f.args[1].Eval(abuf, ev)
s := abuf.Bytes()
- Log("eval %q at %s:%d", s, ev.filename, ev.lineno)
+ Logf("eval %q at %s:%d", s, ev.filename, ev.lineno)
mk, err := ParseMakefileBytes(s, ev.filename, ev.lineno)
if err != nil {
panic(err)
@@ -849,7 +849,7 @@ func (f *funcEval) Compact() Value {
rhs = append(rhs, rhsprefix)
}
rhs = append(rhs, arg[1:]...)
- Log("eval assign %#v => lhs:%q op:%q rhs:%#v", f, lhs, op, rhs)
+ Logf("eval assign %#v => lhs:%q op:%q rhs:%#v", f, lhs, op, rhs)
return &funcEvalAssign{
lhs: lhs,
op: op,
@@ -971,7 +971,7 @@ func (f *funcEvalAssign) Eval(w io.Writer, ev *Evaluator) {
}
rvalue = RecursiveVar{expr: tmpval(rhs), origin: "file"}
}
- Log("Eval ASSIGN: %s=%q (flavor:%q)", f.lhs, rvalue, rvalue.Flavor())
+ Logf("Eval ASSIGN: %s=%q (flavor:%q)", f.lhs, rvalue, rvalue.Flavor())
ev.outVars.Assign(f.lhs, rvalue)
}
diff --git a/log.go b/log.go
index 2fb45ce..c7c7483 100644
--- a/log.go
+++ b/log.go
@@ -22,7 +22,7 @@ func LogStats(f string, a ...interface{}) {
LogAlways(f, a...)
}
-func Log(f string, a ...interface{}) {
+func Logf(f string, a ...interface{}) {
if !katiLogFlag {
return
}
diff --git a/main.go b/main.go
index bcc6da1..5795bce 100644
--- a/main.go
+++ b/main.go
@@ -184,7 +184,7 @@ func getDepGraph(clvars []string, targets []string) *DepGraph {
vars := make(Vars)
for _, env := range os.Environ() {
kv := strings.SplitN(env, "=", 2)
- Log("envvar %q", kv)
+ Logf("envvar %q", kv)
if len(kv) < 2 {
panic(fmt.Sprintf("A weird environ variable %q", kv))
}
@@ -196,7 +196,7 @@ func getDepGraph(clvars []string, targets []string) *DepGraph {
vars.Assign("MAKEFILE_LIST", SimpleVar{value: []byte{}, origin: "file"})
for _, v := range clvars {
kv := strings.SplitN(v, "=", 2)
- Log("cmdlinevar %q", kv)
+ Logf("cmdlinevar %q", kv)
if len(kv) < 2 {
panic(fmt.Sprintf("unexpected command line var %q", kv))
}
diff --git a/parser.go b/parser.go
index d49b600..950ca55 100644
--- a/parser.go
+++ b/parser.go
@@ -174,7 +174,7 @@ func newAssignAST(p *parser, lhsBytes []byte, rhsBytes []byte, op string) *Assig
}
func (p *parser) parseAssign(line []byte, sep, esep int) AST {
- Log("parseAssign %q op:%q", line, line[sep:esep])
+ Logf("parseAssign %q op:%q", line, line[sep:esep])
ast := newAssignAST(p, bytes.TrimSpace(line[:sep]), trimLeftSpaceBytes(line[esep:]), string(line[sep:esep]))
ast.filename = p.mk.filename
ast.lineno = p.lineno
@@ -546,7 +546,7 @@ func (p *parser) parse() (mk Makefile, err error) {
if len(p.inDef) > 0 {
line = p.processDefineLine(line)
if trimLeftSpace(string(line)) == "endef" {
- Log("multilineAssign %q", p.inDef)
+ Logf("multilineAssign %q", p.inDef)
ast := newAssignAST(p, []byte(p.inDef[0]), []byte(strings.Join(p.inDef[1:], "\n")), "=")
ast.filename = p.mk.filename
ast.lineno = p.lineno - len(p.inDef)
@@ -648,7 +648,7 @@ func ParseMakefileFd(filename string, f *os.File) (Makefile, error) {
/*
func ParseMakefile(filename string) (Makefile, error) {
- Log("ParseMakefile %q", filename)
+ Logf("ParseMakefile %q", filename)
f, err := os.Open(filename)
if err != nil {
return Makefile{}, err
@@ -719,12 +719,12 @@ func LookupMakefileCache(filename string) (Makefile, error, bool) {
if ts < 0 || ts >= c.ts {
return Makefile{}, nil, false
}
- Log("Cache hit for %q", filename)
+ Logf("Cache hit for %q", filename)
return c.mk, c.err, true
}
func ParseMakefile(s []byte, filename string) (Makefile, error) {
- Log("ParseMakefile %q", filename)
+ Logf("ParseMakefile %q", filename)
parser := newParser(bytes.NewReader(s), filename)
mk, err := parser.parse()
makefileCache[filename] = MakefileCache{
diff --git a/strutil.go b/strutil.go
index 57d5545..2fb3c20 100644
--- a/strutil.go
+++ b/strutil.go
@@ -34,7 +34,7 @@ func splitSpaces(s string) []string {
if tokStart >= 0 {
r = append(r, s[tokStart:])
}
- Log("splitSpace(%q)=%q", s, r)
+ Logf("splitSpace(%q)=%q", s, r)
return r
}
@@ -55,7 +55,7 @@ func splitSpacesBytes(s []byte) (r [][]byte) {
if tokStart >= 0 {
r = append(r, s[tokStart:])
}
- Log("splitSpace(%q)=%q", s, r)
+ Logf("splitSpace(%q)=%q", s, r)
return r
}
diff --git a/worker.go b/worker.go
index 00c2c8a..46743f8 100644
--- a/worker.go
+++ b/worker.go
@@ -243,7 +243,7 @@ func (wm *WorkerManager) handleJobs() {
return
}
j := heap.Pop(&wm.readyQueue).(*Job)
- Log("run: %s", j.n.Output)
+ Logf("run: %s", j.n.Output)
if useParaFlag {
j.runners = j.createRunners()
@@ -267,7 +267,7 @@ func (wm *WorkerManager) handleJobs() {
func (wm *WorkerManager) updateParents(j *Job) {
for _, p := range j.parents {
p.numDeps--
- Log("child: %s (%d)", p.n.Output, p.numDeps)
+ Logf("child: %s (%d)", p.n.Output, p.numDeps)
if p.depsTs < j.outputTs {
p.depsTs = j.outputTs
}
@@ -343,7 +343,7 @@ func (wm *WorkerManager) maybePushToReadyQueue(j *Job) {
return
}
heap.Push(&wm.readyQueue, j)
- Log("ready: %s", j.n.Output)
+ Logf("ready: %s", j.n.Output)
}
func (wm *WorkerManager) handleNewDep(j *Job, neededBy *Job) {
@@ -362,19 +362,19 @@ func (wm *WorkerManager) Run() {
for wm.hasTodo() || len(wm.busyWorkers) > 0 || len(wm.runnings) > 0 || !done {
select {
case j := <-wm.jobChan:
- Log("wait: %s (%d)", j.n.Output, j.numDeps)
+ Logf("wait: %s (%d)", j.n.Output, j.numDeps)
j.id = len(wm.jobs) + 1
wm.jobs = append(wm.jobs, j)
wm.maybePushToReadyQueue(j)
case jr := <-wm.resultChan:
- Log("done: %s", jr.j.n.Output)
+ Logf("done: %s", jr.j.n.Output)
delete(wm.busyWorkers, jr.w)
wm.freeWorkers = append(wm.freeWorkers, jr.w)
wm.updateParents(jr.j)
wm.finishCnt++
case af := <-wm.newDepChan:
wm.handleNewDep(af.j, af.neededBy)
- Log("dep: %s (%d) %s", af.neededBy.n.Output, af.neededBy.numDeps, af.j.n.Output)
+ Logf("dep: %s (%d) %s", af.neededBy.n.Output, af.neededBy.numDeps, af.j.n.Output)
case pr := <-wm.paraChan:
if pr.status < 0 && pr.signal < 0 {
j := wm.runnings[pr.output]
@@ -400,14 +400,14 @@ func (wm *WorkerManager) Run() {
if numBusy > jobsFlag {
numBusy = jobsFlag
}
- Log("job=%d ready=%d free=%d busy=%d", len(wm.jobs)-wm.finishCnt, wm.readyQueue.Len(), jobsFlag-numBusy, numBusy)
+ Logf("job=%d ready=%d free=%d busy=%d", len(wm.jobs)-wm.finishCnt, wm.readyQueue.Len(), jobsFlag-numBusy, numBusy)
} else {
- Log("job=%d ready=%d free=%d busy=%d", len(wm.jobs)-wm.finishCnt, wm.readyQueue.Len(), len(wm.freeWorkers), len(wm.busyWorkers))
+ Logf("job=%d ready=%d free=%d busy=%d", len(wm.jobs)-wm.finishCnt, wm.readyQueue.Len(), len(wm.freeWorkers), len(wm.busyWorkers))
}
}
if useParaFlag {
- Log("Wait for para to finish")
+ Logf("Wait for para to finish")
wm.para.Wait()
} else {
for _, w := range wm.freeWorkers {