Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5eeb6fc3 authored by Lukács T. Berki's avatar Lukács T. Berki Committed by Gerrit Code Review
Browse files

Merge "Make OutDir() and SoongOutDir() be consistent."

parents 2e380e79 d6cee7e3
Loading
Loading
Loading
Loading
+9 −3
Original line number Diff line number Diff line
@@ -72,7 +72,7 @@ func (c Config) SoongOutDir() string {
}

func (c Config) OutDir() string {
	return c.soongOutDir
	return c.outDir
}

func (c Config) RunGoTests() bool {
@@ -138,7 +138,8 @@ type config struct {

	deviceConfig *deviceConfig

	soongOutDir    string // the path of the build output directory
	outDir         string // The output directory (usually out/)
	soongOutDir    string
	moduleListFile string // the path to the file which lists blueprint files to parse.

	runGoTests               bool
@@ -302,9 +303,10 @@ func saveToBazelConfigFile(config *productVariables, outDir string) error {

// NullConfig returns a mostly empty Config for use by standalone tools like dexpreopt_gen that
// use the android package.
func NullConfig(soongOutDir string) Config {
func NullConfig(outDir, soongOutDir string) Config {
	return Config{
		config: &config{
			outDir:      outDir,
			soongOutDir: soongOutDir,
			fs:          pathtools.OsFs,
		},
@@ -338,6 +340,9 @@ func TestConfig(buildDir string, env map[string]string, bp string, fs map[string
			ShippingApiLevel:                  stringPtr("30"),
		},

		outDir: buildDir,
		// soongOutDir is inconsistent with production (it should be buildDir + "/soong")
		// but a lot of tests assume this :(
		soongOutDir:  buildDir,
		captureBuild: true,
		env:          envCopy,
@@ -434,6 +439,7 @@ func NewConfig(cmdlineArgs bootstrap.Args, soongOutDir string, availableEnv map[

		env: availableEnv,

		outDir:                   cmdlineArgs.OutDir,
		soongOutDir:              soongOutDir,
		runGoTests:               cmdlineArgs.RunGoTests,
		useValidationsForGoTests: cmdlineArgs.UseValidations,
+4 −5
Original line number Diff line number Diff line
@@ -35,7 +35,7 @@ import (

var (
	topDir           string
	outDir           string
	soongOutDir      string
	availableEnvFile string
	usedEnvFile      string

@@ -55,13 +55,12 @@ var (
func init() {
	// Flags that make sense in every mode
	flag.StringVar(&topDir, "top", "", "Top directory of the Android source tree")
	flag.StringVar(&outDir, "out", "", "Soong output directory (usually $TOP/out/soong)")
	flag.StringVar(&soongOutDir, "soong_out", "", "Soong output directory (usually $TOP/out/soong)")
	flag.StringVar(&availableEnvFile, "available_env", "", "File containing available environment variables")
	flag.StringVar(&usedEnvFile, "used_env", "", "File containing used environment variables")
	flag.StringVar(&globFile, "globFile", "build-globs.ninja", "the Ninja file of globs to output")
	flag.StringVar(&globListDir, "globListDir", "", "the directory containing the glob list files")
	flag.StringVar(&cmdlineArgs.SoongOutDir, "b", ".", "the build output directory")
	flag.StringVar(&cmdlineArgs.OutDir, "n", "", "the ninja builddir directory")
	flag.StringVar(&cmdlineArgs.OutDir, "out", "", "the ninja builddir directory")
	flag.StringVar(&cmdlineArgs.ModuleListFile, "l", "", "file that lists filepaths to parse")

	// Debug flags
@@ -298,7 +297,7 @@ func main() {

	availableEnv := parseAvailableEnv()

	configuration := newConfig(cmdlineArgs, outDir, availableEnv)
	configuration := newConfig(cmdlineArgs, soongOutDir, availableEnv)
	extraNinjaDeps := []string{
		configuration.ProductVariablesFileName,
		usedEnvFile,
+3 −1
Original line number Diff line number Diff line
@@ -87,7 +87,9 @@ func main() {
		usage("--module configuration file is required")
	}

	ctx := &builderContext{android.NullConfig(*outDir)}
	// NOTE: duplicating --out_dir here is incorrect (one should be the another
	// plus "/soong" but doing so apparently breaks dexpreopt
	ctx := &builderContext{android.NullConfig(*outDir, *outDir)}

	globalSoongConfigData, err := ioutil.ReadFile(*globalSoongConfigPath)
	if err != nil {