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

Commit a8c2dcf8 authored by Treehugger Robot's avatar Treehugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Installation routine for rust is similar to that of cc" am: 4af0d002...

Merge "Installation routine for rust is similar to that of cc" am: 4af0d002 am: 0573238c am: 9b0af456 am: e2f2c337

Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1843014

Change-Id: I310f67c24100e08d7835f4462d76e6bb6667dac2
parents 0e5844d5 e2f2c337
Loading
Loading
Loading
Loading
+23 −10
Original line number Diff line number Diff line
@@ -130,8 +130,9 @@ type BaseProperties struct {
	// Minimum sdk version that the artifact should support when it runs as part of mainline modules(APEX).
	Min_sdk_version *string

	PreventInstall bool
	HideFromMake   bool
	HideFromMake   bool `blueprint:"mutated"`
	PreventInstall bool `blueprint:"mutated"`

	Installable *bool
}

@@ -177,8 +178,8 @@ func (mod *Module) SetHideFromMake() {
	mod.Properties.HideFromMake = true
}

func (c *Module) HiddenFromMake() bool {
	return c.Properties.HideFromMake
func (mod *Module) HiddenFromMake() bool {
	return mod.Properties.HideFromMake
}

func (mod *Module) SanitizePropDefined() bool {
@@ -526,10 +527,6 @@ func (mod *Module) PreventInstall() bool {
	return mod.Properties.PreventInstall
}

func (mod *Module) HideFromMake() {
	mod.Properties.HideFromMake = true
}

func (mod *Module) MarkAsCoverageVariant(coverage bool) {
	mod.coverage.Properties.IsCoverageVariant = coverage
}
@@ -898,8 +895,24 @@ func (mod *Module) GenerateAndroidBuildActions(actx android.ModuleContext) {
		}

		apexInfo := actx.Provider(android.ApexInfoProvider).(android.ApexInfo)
		if mod.installable(apexInfo) {
		if !proptools.BoolDefault(mod.Installable(), mod.EverInstallable()) {
			// If the module has been specifically configure to not be installed then
			// hide from make as otherwise it will break when running inside make as the
			// output path to install will not be specified. Not all uninstallable
			// modules can be hidden from make as some are needed for resolving make
			// side dependencies.
			mod.HideFromMake()
		} else if !mod.installable(apexInfo) {
			mod.SkipInstall()
		}

		// Still call install though, the installs will be stored as PackageSpecs to allow
		// using the outputs in a genrule.
		if mod.OutputFile().Valid() {
			mod.compiler.install(ctx)
			if ctx.Failed() {
				return
			}
		}

		ctx.Phony("rust", ctx.RustModule().OutputFile().Path())