Add __ANDROID_SDK_VERSION__=<ver> macro
sdk_version is passed for relevant variants. If not specified or "current", it maps to "10000" for platform variants, and "min_sdk_version" of the apex for apex variants. Bug: 150860940 Test: m (soong test) manually check build.ninja Change-Id: I5102ab0c5086b5ad29d16ac45af55d32062167b4
This commit is contained in:
12
cc/cc.go
12
cc/cc.go
@@ -290,6 +290,7 @@ type ModuleContextIntf interface {
|
||||
staticBinary() bool
|
||||
header() bool
|
||||
toolchain() config.Toolchain
|
||||
canUseSdk() bool
|
||||
useSdk() bool
|
||||
sdkVersion() string
|
||||
useVndk() bool
|
||||
@@ -313,6 +314,7 @@ type ModuleContextIntf interface {
|
||||
useClangLld(actx ModuleContext) bool
|
||||
isForPlatform() bool
|
||||
apexName() string
|
||||
apexSdkVersion() int
|
||||
hasStubsVariants() bool
|
||||
isStubs() bool
|
||||
bootstrap() bool
|
||||
@@ -1045,8 +1047,12 @@ func (ctx *moduleContextImpl) header() bool {
|
||||
return ctx.mod.header()
|
||||
}
|
||||
|
||||
func (ctx *moduleContextImpl) canUseSdk() bool {
|
||||
return ctx.ctx.Device() && !ctx.useVndk() && !ctx.inRamdisk() && !ctx.inRecovery() && !ctx.ctx.Fuchsia()
|
||||
}
|
||||
|
||||
func (ctx *moduleContextImpl) useSdk() bool {
|
||||
if ctx.ctx.Device() && !ctx.useVndk() && !ctx.inRamdisk() && !ctx.inRecovery() && !ctx.ctx.Fuchsia() {
|
||||
if ctx.canUseSdk() {
|
||||
return String(ctx.mod.Properties.Sdk_version) != ""
|
||||
}
|
||||
return false
|
||||
@@ -1179,6 +1185,10 @@ func (ctx *moduleContextImpl) apexName() string {
|
||||
return ctx.mod.ApexName()
|
||||
}
|
||||
|
||||
func (ctx *moduleContextImpl) apexSdkVersion() int {
|
||||
return ctx.mod.ApexProperties.Info.MinSdkVersion
|
||||
}
|
||||
|
||||
func (ctx *moduleContextImpl) hasStubsVariants() bool {
|
||||
return ctx.mod.HasStubsVariants()
|
||||
}
|
||||
|
Reference in New Issue
Block a user