Merge "Make prebuilt properties customizable" am: c1b6cfbd4c
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1746776 Change-Id: Ibafa194cc520db344c058b397cd00b1f74c1acdc
This commit is contained in:
@@ -166,6 +166,7 @@ type PrebuiltSrcsSupplier func(ctx BaseModuleContext, prebuilt Module) []string
|
||||
func InitPrebuiltModuleWithSrcSupplier(module PrebuiltInterface, srcsSupplier PrebuiltSrcsSupplier, srcsPropertyName string) {
|
||||
p := module.Prebuilt()
|
||||
module.AddProperties(&p.properties)
|
||||
module.base().customizableProperties = module.GetProperties()
|
||||
|
||||
if srcsSupplier == nil {
|
||||
panic(fmt.Errorf("srcsSupplier must not be nil"))
|
||||
|
@@ -259,6 +259,38 @@ var prebuiltsTests = []struct {
|
||||
}`,
|
||||
prebuilt: []OsType{Android, BuildOs},
|
||||
},
|
||||
{
|
||||
name: "prebuilt properties customizable",
|
||||
replaceBp: true,
|
||||
modules: `
|
||||
source {
|
||||
name: "foo",
|
||||
deps: [":bar"],
|
||||
}
|
||||
|
||||
soong_config_module_type {
|
||||
name: "prebuilt_with_config",
|
||||
module_type: "prebuilt",
|
||||
config_namespace: "any_namespace",
|
||||
bool_variables: ["bool_var"],
|
||||
properties: ["prefer"],
|
||||
}
|
||||
|
||||
prebuilt_with_config {
|
||||
name: "bar",
|
||||
prefer: true,
|
||||
srcs: ["prebuilt_file"],
|
||||
soong_config_variables: {
|
||||
bool_var: {
|
||||
prefer: false,
|
||||
conditions_default: {
|
||||
prefer: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
}`,
|
||||
prebuilt: []OsType{Android, BuildOs},
|
||||
},
|
||||
}
|
||||
|
||||
func TestPrebuilts(t *testing.T) {
|
||||
@@ -394,6 +426,9 @@ func registerTestPrebuiltModules(ctx RegistrationContext) {
|
||||
ctx.RegisterModuleType("prebuilt", newPrebuiltModule)
|
||||
ctx.RegisterModuleType("source", newSourceModule)
|
||||
ctx.RegisterModuleType("override_source", newOverrideSourceModule)
|
||||
ctx.RegisterModuleType("soong_config_module_type", soongConfigModuleTypeFactory)
|
||||
ctx.RegisterModuleType("soong_config_string_variable", soongConfigStringVariableDummyFactory)
|
||||
ctx.RegisterModuleType("soong_config_bool_variable", soongConfigBoolVariableDummyFactory)
|
||||
}
|
||||
|
||||
type prebuiltModule struct {
|
||||
|
Reference in New Issue
Block a user