Create sysprop_library soong module
A newly introduced sysprop_library soong module will generate a java_sdk_library and a cc_library from .sysprop description files. Both Java modules and C++ modules can link against sysprop_library module, thus giving consistency for using generated sysprop API. As Java controls accessibility of Internal / System properties with @hide and @SystemApi, 2 different header files will be created. And build system will selectively expose depending on the property owner and the place where the client libraries go into. Bug: 80125326 Bug: 122170616 Test: 1) Create sysprop_library module. Test: 2) Create empty txt files under prebuilts/sdk. Test: 3) Create api directory, make update-api, and see changes. Test: 4) Try to link against sysprop_library with various clients. Test: 5) Soc_specific, Device_specific, Product_specific, recovery flags work as intended. Change-Id: I78dc5780ccfbb4b69e5c61dec26b94e92d43c333
This commit is contained in:
@@ -30,10 +30,10 @@ import (
|
||||
// It also creates <module>-api.<scope>.latest for the lastest <ver>.
|
||||
//
|
||||
func init() {
|
||||
android.RegisterModuleType("prebuilt_apis", prebuiltApisFactory)
|
||||
android.RegisterModuleType("prebuilt_apis", PrebuiltApisFactory)
|
||||
|
||||
android.PreArchMutators(func(ctx android.RegisterMutatorsContext) {
|
||||
ctx.TopDown("prebuilt_apis", prebuiltApisMutator).Parallel()
|
||||
ctx.TopDown("prebuilt_apis", PrebuiltApisMutator).Parallel()
|
||||
})
|
||||
}
|
||||
|
||||
@@ -176,14 +176,14 @@ func prebuiltApiFiles(mctx android.TopDownMutatorContext) {
|
||||
}
|
||||
}
|
||||
|
||||
func prebuiltApisMutator(mctx android.TopDownMutatorContext) {
|
||||
func PrebuiltApisMutator(mctx android.TopDownMutatorContext) {
|
||||
if _, ok := mctx.Module().(*prebuiltApis); ok {
|
||||
prebuiltApiFiles(mctx)
|
||||
prebuiltSdkStubs(mctx)
|
||||
}
|
||||
}
|
||||
|
||||
func prebuiltApisFactory() android.Module {
|
||||
func PrebuiltApisFactory() android.Module {
|
||||
module := &prebuiltApis{}
|
||||
module.AddProperties(&module.properties)
|
||||
android.InitAndroidModule(module)
|
||||
|
Reference in New Issue
Block a user