Merge "Add additional directories from which env config can be loaded" am: 07d858468e
am: 5b34d48a92
am: 4d493fdfda
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1949705 Change-Id: Ic11ba9e677eb4bcb32c82b0eb2bf130582ed30cd
This commit is contained in:
@@ -117,12 +117,23 @@ func inList(s string, list []string) bool {
|
|||||||
return indexList(s, list) != -1
|
return indexList(s, list) != -1
|
||||||
}
|
}
|
||||||
|
|
||||||
func loadEnvConfig() error {
|
func loadEnvConfig(config build.Config) error {
|
||||||
bc := os.Getenv("ANDROID_BUILD_ENVIRONMENT_CONFIG")
|
bc := os.Getenv("ANDROID_BUILD_ENVIRONMENT_CONFIG")
|
||||||
if bc == "" {
|
if bc == "" {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
cfgFile := filepath.Join(os.Getenv("TOP"), configDir, fmt.Sprintf("%s.%s", bc, jsonSuffix))
|
configDirs := []string{
|
||||||
|
os.Getenv("ANDROID_BUILD_ENVIRONMENT_CONFIG_DIR"),
|
||||||
|
config.OutDir(),
|
||||||
|
configDir,
|
||||||
|
}
|
||||||
|
var cfgFile string
|
||||||
|
for _, dir := range configDirs {
|
||||||
|
cfgFile = filepath.Join(os.Getenv("TOP"), dir, fmt.Sprintf("%s.%s", bc, jsonSuffix))
|
||||||
|
if _, err := os.Stat(cfgFile); err == nil {
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
envVarsJSON, err := ioutil.ReadFile(cfgFile)
|
envVarsJSON, err := ioutil.ReadFile(cfgFile)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -138,9 +149,7 @@ func loadEnvConfig() error {
|
|||||||
if os.Getenv(k) != "" {
|
if os.Getenv(k) != "" {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
if err := os.Setenv(k, v); err != nil {
|
config.Environment().Set(k, v)
|
||||||
return err
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
@@ -207,13 +216,13 @@ func main() {
|
|||||||
Status: stat,
|
Status: stat,
|
||||||
}}
|
}}
|
||||||
|
|
||||||
if err := loadEnvConfig(); err != nil {
|
config := c.config(buildCtx, args...)
|
||||||
|
|
||||||
|
if err := loadEnvConfig(config); err != nil {
|
||||||
fmt.Fprintf(os.Stderr, "failed to parse env config files: %v", err)
|
fmt.Fprintf(os.Stderr, "failed to parse env config files: %v", err)
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
}
|
}
|
||||||
|
|
||||||
config := c.config(buildCtx, args...)
|
|
||||||
|
|
||||||
build.SetupOutDir(buildCtx, config)
|
build.SetupOutDir(buildCtx, config)
|
||||||
|
|
||||||
if config.UseBazel() && config.Dist() {
|
if config.UseBazel() && config.Dist() {
|
||||||
|
Reference in New Issue
Block a user