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

Commit 36528dc3 authored by Hsin-Yi Chen's avatar Hsin-Yi Chen Committed by android-build-merger
Browse files

Merge "Skip ABI checks for APEX variants of opt-in libraries"

am: ff7321b3

Change-Id: I575b12dec299d080a3bf9b0389517f5d49784b53
parents b28643b3 ff7321b3
Loading
Loading
Loading
Loading
+3 −14
Original line number Diff line number Diff line
@@ -267,7 +267,7 @@ type ModuleContextIntf interface {
	isVndkSp() bool
	isVndkExt() bool
	inRecovery() bool
	shouldCreateVndkSourceAbiDump(config android.Config) bool
	shouldCreateSourceAbiDump() bool
	selectedStl() string
	baseModuleName() string
	getVndkExtendsModuleName() string
@@ -789,7 +789,7 @@ func (ctx *moduleContextImpl) inRecovery() bool {
}

// Check whether ABI dumps should be created for this module.
func (ctx *moduleContextImpl) shouldCreateVndkSourceAbiDump(config android.Config) bool {
func (ctx *moduleContextImpl) shouldCreateSourceAbiDump() bool {
	if ctx.ctx.Config().IsEnvTrue("SKIP_ABI_CHECKS") {
		return false
	}
@@ -815,19 +815,8 @@ func (ctx *moduleContextImpl) shouldCreateVndkSourceAbiDump(config android.Confi
		// Stubs do not need ABI dumps.
		return false
	}
	if ctx.isNdk() {
	return true
}
	if ctx.isLlndkPublic(config) {
		return true
	}
	if ctx.useVndk() && ctx.isVndk() && !ctx.isVndkPrivate(config) {
		// Return true if this is VNDK-core, VNDK-SP, or VNDK-Ext and this is not
		// VNDK-private.
		return true
	}
	return false
}

func (ctx *moduleContextImpl) selectedStl() string {
	if stl := ctx.mod.stl; stl != nil {
+18 −4
Original line number Diff line number Diff line
@@ -432,11 +432,25 @@ func (library *libraryDecorator) compilerFlags(ctx ModuleContext, flags Flags, d
	return flags
}

func (library *libraryDecorator) shouldCreateVndkSourceAbiDump(ctx ModuleContext) bool {
func (library *libraryDecorator) shouldCreateSourceAbiDump(ctx ModuleContext) bool {
	if !ctx.shouldCreateSourceAbiDump() {
		return false
	}
	if library.Properties.Header_abi_checker.Enabled != nil {
		return Bool(library.Properties.Header_abi_checker.Enabled)
	}
	return ctx.shouldCreateVndkSourceAbiDump(ctx.Config())
	if ctx.isNdk() {
		return true
	}
	if ctx.isLlndkPublic(ctx.Config()) {
		return true
	}
	if ctx.useVndk() && ctx.isVndk() && !ctx.isVndkPrivate(ctx.Config()) {
		// Return true if this is VNDK-core, VNDK-SP, or VNDK-Ext, and not
		// VNDK-private.
		return true
	}
	return false
}

func (library *libraryDecorator) compile(ctx ModuleContext, flags Flags, deps PathDeps) Objects {
@@ -458,7 +472,7 @@ func (library *libraryDecorator) compile(ctx ModuleContext, flags Flags, deps Pa
		}
		return Objects{}
	}
	if library.shouldCreateVndkSourceAbiDump(ctx) || library.sabi.Properties.CreateSAbiDumps {
	if library.shouldCreateSourceAbiDump(ctx) || library.sabi.Properties.CreateSAbiDumps {
		exportIncludeDirs := library.flagExporter.exportedIncludes(ctx)
		var SourceAbiFlags []string
		for _, dir := range exportIncludeDirs.Strings() {
@@ -822,7 +836,7 @@ func getRefAbiDumpFile(ctx ModuleContext, vndkVersion, fileName string) android.
}

func (library *libraryDecorator) linkSAbiDumpFiles(ctx ModuleContext, objs Objects, fileName string, soFile android.Path) {
	if library.shouldCreateVndkSourceAbiDump(ctx) {
	if library.shouldCreateSourceAbiDump(ctx) {
		vndkVersion := ctx.DeviceConfig().PlatformVndkVersion()
		if ver := ctx.DeviceConfig().VndkVersion(); ver != "" && ver != "current" {
			vndkVersion = ver