soong: Squash of lineage-sdk bringup commits
Squash of:
Author: Rashed Abdel-Tawab <rashed@linux.com>
Date: Thu Aug 9 14:08:53 2018 -0700
soong: Special case Lineage SDK
* org.lineageos.platform-res.apk needs to be installed to /system/framework
* org.lineageos.platform-res needs to be a dependency for
org.lineageos.platform and org.lineageos.platform.internal
* Add other special exceptions for org.lineageos.platform-res
Change-Id: Ic617c07c086916005ea4b88f26d31c61691a45f8
Author: Sam Mortimer <sam@mortimer.me.uk>
Date: Thu Aug 30 15:33:16 2018 -0700
soong: make org.lineage.platform-res depend on framework-res
*) Allows us to build org.lineage.platform-res with no_framework_libs
true (as is done for framework-res).
*) Whilst we're here, undo a dependency loop prevention in aar.go
that we added during sdk bringup to allow our platform res to build
with no_framework_libs false.
Change-Id: Ib452a2e45112baf5d61b70b4be1ce0c01dfd84e5
Author: Luca Stefani <luca.stefani.ge1@gmail.com>
Date: Mon Feb 4 18:56:52 2019 +0100
Always link org.lineageos.platform-res for org.lineageos.platform.sdk
Test: m clean && m org.lineageos.platform.sdk
Change-Id: I58956855bd4d1157e2582103c4861e7b384b4f73
Author: Sam Mortimer <sam@mortimer.me.uk>
Date: Fri Aug 31 10:52:29 2018 -0700
soong: Allow framework to access lineage-sdk resources
*) Make framework depend on lineage-sdk resource package
*) Allows framework module to access lineage-sdk resources
via usual org.lineageos.platform.internal.R paths.
Change-Id: Ifd19d43d9308ac370ad40a499de16bf8ce204beb
Author: Luca Stefani <luca.stefani.ge1@gmail.com>
Date: Tue Oct 12 17:59:21 2021 +0200
Don't manually add lineage res to apps
Only exception left is the hard dep of framework-res
into org.lineage.platform-res
Change-Id: I02585a6581da75a442b2967c89a51929d4778ea4
Author: Luca Stefani <luca.stefani.ge1@gmail.com>
Date: Tue Oct 12 17:58:56 2021 +0200
Make lineage res module support variation deps
Change-Id: I823ccc87c3716bb3eb73948e228d90d45c1c29c9
Change-Id: Icc18de5dfaa83fc0a1eda6f3704f3a92e1de0764
This commit is contained in:
parent
a79b75895f
commit
ec0843edd5
8 changed files with 35 additions and 7 deletions
10
java/aar.go
10
java/aar.go
|
|
@ -315,7 +315,7 @@ func (a *aapt) aapt2Flags(ctx android.ModuleContext, sdkContext android.SdkConte
|
|||
|
||||
if !hasVersionName {
|
||||
var versionName string
|
||||
if ctx.ModuleName() == "framework-res" {
|
||||
if ctx.ModuleName() == "framework-res" || ctx.ModuleName() == "org.lineageos.platform-res" {
|
||||
// Some builds set AppsDefaultVersionName() to include the build number ("O-123456"). aapt2 copies the
|
||||
// version name of framework-res into app manifests as compileSdkVersionCodename, which confuses things
|
||||
// if it contains the build number. Use the PlatformVersionName instead.
|
||||
|
|
@ -340,6 +340,9 @@ func (a *aapt) deps(ctx android.BottomUpMutatorContext, sdkDep sdkDep) {
|
|||
if sdkDep.frameworkResModule != "" {
|
||||
ctx.AddVariationDependencies(nil, frameworkResTag, sdkDep.frameworkResModule)
|
||||
}
|
||||
if sdkDep.lineageResModule != "" {
|
||||
ctx.AddVariationDependencies(nil, lineageResTag, sdkDep.lineageResModule)
|
||||
}
|
||||
}
|
||||
|
||||
var extractAssetsRule = pctx.AndroidStaticRule("extractAssets",
|
||||
|
|
@ -745,7 +748,7 @@ func aaptLibs(ctx android.ModuleContext, sdkContext android.SdkContext,
|
|||
sharedResourcesNodeDepSets = append(sharedResourcesNodeDepSets, aarDep.ResourcesNodeDepSet())
|
||||
sharedLibs = append(sharedLibs, exportPackage)
|
||||
}
|
||||
case frameworkResTag:
|
||||
case frameworkResTag, lineageResTag:
|
||||
if exportPackage != nil {
|
||||
sharedLibs = append(sharedLibs, exportPackage)
|
||||
}
|
||||
|
|
@ -1103,6 +1106,9 @@ func (a *AARImport) DepsMutator(ctx android.BottomUpMutatorContext) {
|
|||
if sdkDep.useModule && sdkDep.frameworkResModule != "" {
|
||||
ctx.AddVariationDependencies(nil, frameworkResTag, sdkDep.frameworkResModule)
|
||||
}
|
||||
if sdkDep.useModule && sdkDep.lineageResModule != "" {
|
||||
ctx.AddVariationDependencies(nil, lineageResTag, sdkDep.lineageResModule)
|
||||
}
|
||||
}
|
||||
|
||||
ctx.AddVariationDependencies(nil, libTag, a.properties.Libs...)
|
||||
|
|
|
|||
|
|
@ -153,7 +153,7 @@ func ManifestFixer(ctx android.ModuleContext, manifest android.Path,
|
|||
targetSdkVersion := targetSdkVersionForManifestFixer(ctx, params)
|
||||
|
||||
if useApiFingerprint, fingerprintTargetSdkVersion, fingerprintDeps :=
|
||||
UseApiFingerprint(ctx); useApiFingerprint && ctx.ModuleName() != "framework-res" {
|
||||
UseApiFingerprint(ctx); useApiFingerprint && ctx.ModuleName() != "framework-res" && ctx.ModuleName() != "org.lineageos.platform-res" {
|
||||
targetSdkVersion = fingerprintTargetSdkVersion
|
||||
deps = append(deps, fingerprintDeps)
|
||||
}
|
||||
|
|
@ -171,7 +171,7 @@ func ManifestFixer(ctx android.ModuleContext, manifest android.Path,
|
|||
}
|
||||
|
||||
if useApiFingerprint, fingerprintMinSdkVersion, fingerprintDeps :=
|
||||
UseApiFingerprint(ctx); useApiFingerprint && ctx.ModuleName() != "framework-res" {
|
||||
UseApiFingerprint(ctx); useApiFingerprint && ctx.ModuleName() != "framework-res" && ctx.ModuleName() != "org.lineageos.platform-res" {
|
||||
minSdkVersion = fingerprintMinSdkVersion
|
||||
deps = append(deps, fingerprintDeps)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -368,7 +368,7 @@ func (app *AndroidApp) AndroidMkEntries() []android.AndroidMkEntries {
|
|||
entries.SetOptionalPath("LOCAL_SOONG_PROGUARD_DICT", app.dexer.proguardDictionary)
|
||||
entries.SetOptionalPath("LOCAL_SOONG_PROGUARD_USAGE_ZIP", app.dexer.proguardUsageZip)
|
||||
|
||||
if app.Name() == "framework-res" {
|
||||
if app.Name() == "framework-res" || app.Name() == "org.lineageos.platform-res" {
|
||||
entries.SetString("LOCAL_MODULE_PATH", "$(TARGET_OUT_JAVA_LIBRARIES)")
|
||||
// Make base_rules.mk not put framework-res in a subdirectory called
|
||||
// framework_res.
|
||||
|
|
@ -500,7 +500,7 @@ func (a *AndroidLibrary) AndroidMkEntries() []android.AndroidMkEntries {
|
|||
entries.SetPath("LOCAL_SOONG_AAR", a.aarFile)
|
||||
}
|
||||
|
||||
if a.Name() == "framework-res" {
|
||||
if a.Name() == "framework-res" || a.Name() == "org.lineageos.platform-res" {
|
||||
entries.SetString("LOCAL_MODULE_PATH", "$(TARGET_OUT_JAVA_LIBRARIES)")
|
||||
// Make base_rules.mk not put framework-res in a subdirectory called
|
||||
// framework_res.
|
||||
|
|
|
|||
|
|
@ -592,6 +592,9 @@ func (a *AndroidApp) installPath(ctx android.ModuleContext) android.InstallPath
|
|||
if ctx.ModuleName() == "framework-res" {
|
||||
// framework-res.apk is installed as system/framework/framework-res.apk
|
||||
installDir = "framework"
|
||||
} else if ctx.ModuleName() == "org.lineageos.platform-res" {
|
||||
// org.lineageos.platform-res.apk is installed as system/framework/org.lineageos.platform-res.apk
|
||||
installDir = "framework"
|
||||
} else if a.Privileged() {
|
||||
installDir = filepath.Join("priv-app", a.installApkName)
|
||||
} else {
|
||||
|
|
@ -616,7 +619,7 @@ func (a *AndroidApp) dexBuildActions(ctx android.ModuleContext) (android.Path, a
|
|||
|
||||
var packageResources = a.exportPackage
|
||||
|
||||
if ctx.ModuleName() != "framework-res" {
|
||||
if ctx.ModuleName() != "framework-res" && ctx.ModuleName() != "org.lineageos.platform-res" {
|
||||
if a.dexProperties.resourceShrinkingEnabled(ctx) {
|
||||
protoFile := android.PathForModuleOut(ctx, packageResources.Base()+".proto.apk")
|
||||
aapt2Convert(ctx, protoFile, packageResources, "proto")
|
||||
|
|
@ -805,6 +808,9 @@ func (a *AndroidApp) generateAndroidBuildActions(ctx android.ModuleContext) {
|
|||
if ctx.ModuleName() == "framework-res" {
|
||||
// framework-res.apk is installed as system/framework/framework-res.apk
|
||||
a.installDir = android.PathForModuleInstall(ctx, "framework")
|
||||
} else if ctx.ModuleName() == "org.lineageos.platform-res" {
|
||||
// org.lineageos.platform-res.apk is installed as system/framework/org.lineageos.platform-res.apk
|
||||
a.installDir = android.PathForModuleInstall(ctx, "framework")
|
||||
} else if a.Privileged() {
|
||||
a.installDir = android.PathForModuleInstall(ctx, "priv-app", a.installApkName)
|
||||
} else if ctx.InstallInTestcases() {
|
||||
|
|
|
|||
|
|
@ -77,8 +77,11 @@ func TestApp(t *testing.T) {
|
|||
expectedLinkImplicits = append(expectedLinkImplicits, manifestFixer.Output.String())
|
||||
|
||||
frameworkRes := result.ModuleForTests("framework-res", "android_common")
|
||||
lineageRes := result.ModuleForTests("org.lineageos.platform-res", "android_common")
|
||||
expectedLinkImplicits = append(expectedLinkImplicits,
|
||||
frameworkRes.Output("package-res.apk").Output.String())
|
||||
expectedLinkImplicits = append(expectedLinkImplicits,
|
||||
lineageRes.Output("package-res.apk").Output.String())
|
||||
|
||||
// Test the mapping from input files to compiled output file names
|
||||
compile := foo.Output(compiledResourceFiles[0])
|
||||
|
|
|
|||
|
|
@ -421,6 +421,7 @@ var (
|
|||
bootClasspathTag = dependencyTag{name: "bootclasspath", runtimeLinked: true}
|
||||
systemModulesTag = dependencyTag{name: "system modules", runtimeLinked: true}
|
||||
frameworkResTag = dependencyTag{name: "framework-res"}
|
||||
lineageResTag = dependencyTag{name: "org.lineageos.platform-res"}
|
||||
kotlinStdlibTag = dependencyTag{name: "kotlin-stdlib", runtimeLinked: true}
|
||||
kotlinAnnotationsTag = dependencyTag{name: "kotlin-annotations", runtimeLinked: true}
|
||||
kotlinPluginTag = dependencyTag{name: "kotlin-plugin", toolchain: true}
|
||||
|
|
@ -469,6 +470,7 @@ type sdkDep struct {
|
|||
java9Classpath []string
|
||||
|
||||
frameworkResModule string
|
||||
lineageResModule string
|
||||
|
||||
jars android.Paths
|
||||
aidl android.OptionalPath
|
||||
|
|
@ -512,6 +514,10 @@ func sdkDeps(ctx android.BottomUpMutatorContext, sdkContext android.SdkContext,
|
|||
if sdkDep.systemModules != "" {
|
||||
ctx.AddVariationDependencies(nil, systemModulesTag, sdkDep.systemModules)
|
||||
}
|
||||
|
||||
if ctx.ModuleName() == "org.lineageos.platform-res" {
|
||||
ctx.AddVariationDependencies(nil, frameworkResTag, "framework-res")
|
||||
}
|
||||
}
|
||||
|
||||
type deps struct {
|
||||
|
|
|
|||
|
|
@ -168,6 +168,7 @@ func decodeSdkDep(ctx android.EarlyModuleContext, sdkContext android.SdkContext)
|
|||
systemModules: systemModules,
|
||||
java9Classpath: []string{module},
|
||||
frameworkResModule: "framework-res",
|
||||
lineageResModule: "org.lineageos.platform-res",
|
||||
aidl: android.OptionalPathForPath(aidl),
|
||||
}
|
||||
}
|
||||
|
|
@ -180,6 +181,7 @@ func decodeSdkDep(ctx android.EarlyModuleContext, sdkContext android.SdkContext)
|
|||
bootclasspath: corePlatformBootclasspathLibraries(ctx),
|
||||
classpath: config.FrameworkLibraries,
|
||||
frameworkResModule: "framework-res",
|
||||
lineageResModule: "org.lineageos.platform-res",
|
||||
}
|
||||
case android.SdkNone:
|
||||
systemModules := sdkContext.SystemModules()
|
||||
|
|
|
|||
|
|
@ -546,6 +546,11 @@ func gatherRequiredDepsForTest() string {
|
|||
android_app {
|
||||
name: "framework-res",
|
||||
sdk_version: "core_platform",
|
||||
}
|
||||
|
||||
android_app {
|
||||
name: "org.lineageos.platform-res",
|
||||
sdk_version: "core_platform",
|
||||
}`
|
||||
|
||||
systemModules := []string{
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue