blob: ac298b1228e5d335d37e4e7fcaa729c89472722a [file] [log] [blame]
// Copyright 2019 The Chromium OS Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package main
import (
"os"
)
func processGomaCccFlags(builder *commandBuilder) (gomaUsed bool, err error) {
gomaPath := ""
nextArgIsGomaPath := false
builder.transformArgs(func(arg builderArg) string {
if arg.fromUser {
if arg.value == "--gomacc-path" {
nextArgIsGomaPath = true
return ""
}
if nextArgIsGomaPath {
gomaPath = arg.value
nextArgIsGomaPath = false
return ""
}
}
return arg.value
})
if nextArgIsGomaPath {
return false, newUserErrorf("--gomacc-path given without value")
}
if gomaPath == "" {
gomaPath, _ = builder.env.getenv("GOMACC_PATH")
}
if gomaPath != "" {
if _, err := os.Lstat(gomaPath); err == nil {
builder.wrapPath(gomaPath)
return true, nil
}
}
return false, nil
}