Merge "Export any platform_compat_config used by apex to sdk snapshot" am: 69d09f49ec

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

Change-Id: Icb98af219a66d7ad48518ac49c6150798361f62b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Paul Duffin
2022-07-21 22:29:39 +00:00
committed by Automerger Merge Worker
3 changed files with 37 additions and 14 deletions

View File

@@ -640,7 +640,7 @@ var (
fsTag = &dependencyTag{name: "filesystem", payload: true} fsTag = &dependencyTag{name: "filesystem", payload: true}
bcpfTag = &dependencyTag{name: "bootclasspathFragment", payload: true, sourceOnly: true, memberType: java.BootclasspathFragmentSdkMemberType} bcpfTag = &dependencyTag{name: "bootclasspathFragment", payload: true, sourceOnly: true, memberType: java.BootclasspathFragmentSdkMemberType}
sscpfTag = &dependencyTag{name: "systemserverclasspathFragment", payload: true, sourceOnly: true, memberType: java.SystemServerClasspathFragmentSdkMemberType} sscpfTag = &dependencyTag{name: "systemserverclasspathFragment", payload: true, sourceOnly: true, memberType: java.SystemServerClasspathFragmentSdkMemberType}
compatConfigTag = &dependencyTag{name: "compatConfig", payload: true, sourceOnly: true} compatConfigTag = &dependencyTag{name: "compatConfig", payload: true, sourceOnly: true, memberType: java.CompatConfigSdkMemberType}
javaLibTag = &dependencyTag{name: "javaLib", payload: true} javaLibTag = &dependencyTag{name: "javaLib", payload: true}
jniLibTag = &dependencyTag{name: "jniLib", payload: true} jniLibTag = &dependencyTag{name: "jniLib", payload: true}
keyTag = &dependencyTag{name: "key"} keyTag = &dependencyTag{name: "key"}

View File

@@ -26,12 +26,14 @@ import (
func init() { func init() {
registerPlatformCompatConfigBuildComponents(android.InitRegistrationContext) registerPlatformCompatConfigBuildComponents(android.InitRegistrationContext)
android.RegisterSdkMemberType(&compatConfigMemberType{ android.RegisterSdkMemberType(CompatConfigSdkMemberType)
SdkMemberTypeBase: android.SdkMemberTypeBase{ }
PropertyName: "compat_configs",
SupportsSdk: true, var CompatConfigSdkMemberType = &compatConfigMemberType{
}, SdkMemberTypeBase: android.SdkMemberTypeBase{
}) PropertyName: "compat_configs",
SupportsSdk: true,
},
} }
func registerPlatformCompatConfigBuildComponents(ctx android.RegistrationContext) { func registerPlatformCompatConfigBuildComponents(ctx android.RegistrationContext) {

View File

@@ -21,16 +21,12 @@ import (
"android/soong/java" "android/soong/java"
) )
func TestSnapshotWithCompatConfig(t *testing.T) { func testSnapshotWithCompatConfig(t *testing.T, sdk string) {
result := android.GroupFixturePreparers( result := android.GroupFixturePreparers(
prepareForSdkTestWithJava, prepareForSdkTestWithJava,
java.PrepareForTestWithPlatformCompatConfig, java.PrepareForTestWithPlatformCompatConfig,
).RunTestWithBp(t, ` prepareForSdkTestWithApex,
sdk { ).RunTestWithBp(t, sdk+`
name: "mysdk",
compat_configs: ["myconfig"],
}
platform_compat_config { platform_compat_config {
name: "myconfig", name: "myconfig",
} }
@@ -73,3 +69,28 @@ prebuilt_platform_compat_config {
}), }),
) )
} }
func TestSnapshotWithCompatConfig(t *testing.T) {
testSnapshotWithCompatConfig(t, `
sdk {
name: "mysdk",
compat_configs: ["myconfig"],
}
`)
}
func TestSnapshotWithCompatConfig_Apex(t *testing.T) {
testSnapshotWithCompatConfig(t, `
apex {
name: "myapex",
key: "myapex.key",
min_sdk_version: "2",
compat_configs: ["myconfig"],
}
sdk {
name: "mysdk",
apexes: ["myapex"],
}
`)
}