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

Commit e2f2c337 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

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

Change-Id: I6ad0c206187137b612a5f5cdd2ff97756d0be85f
parents 2a7885d5 9b0af456
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())