android13/hardware/rockchip/weaver/Android.go

48 lines
1.2 KiB
Go

package libRkTeeWeaver
import (
"android/soong/android"
"android/soong/cc"
"fmt"
)
func init() {
fmt.Println("libRkTeeWeaver want to conditional Compile")
android.RegisterModuleType("cc_libRkTeeWeaver", DefaultsFactory)
}
func DefaultsFactory() (android.Module) {
module := cc.DefaultsFactory()
android.AddLoadHook(module, AddOpteeShardLibs)
return module
}
func AddOpteeShardLibs(ctx android.LoadHookContext) {
type props struct {
Shared_libs []string
}
var src_fix string = "libRkTeeWeaver."+getOpteeVersion(ctx)
p := &props{}
p.Shared_libs = append(p.Shared_libs, src_fix)
ctx.AppendProperties(p)
}
func isContain(items []string, item string) bool {
for _, eachItem := range items {
if eachItem == item {
return true
}
}
return false
}
func getOpteeVersion(ctx android.BaseContext) (string) {
var optee_version string = "v1"
var optee_v2_list = []string{"rk3326", "rk3528", "rk356x", "rk3562", "rk3588"}
if (isContain(optee_v2_list, ctx.AConfig().Getenv("TARGET_BOARD_PLATFORM"))) {
optee_version = "v2"
}
fmt.Println("Optee Version: " + optee_version)
return optee_version
}