diff options
| author | 2023-11-01 17:07:54 +0000 | |
|---|---|---|
| committer | 2023-11-01 17:07:54 +0000 | |
| commit | 3996ffbc1333e5367fb936c8d8281105c733181b (patch) | |
| tree | 7552a19f17d73fa52ee9426fcf3d714fa2781fcd | |
| parent | 2650f35faaa8da6007772a7d85051d117f931f0c (diff) | |
| parent | f17e2b55f1f1e59b7374671a18d90ff7146511bd (diff) | |
Merge "Support prebuilt_renderscript_bitcode modules" into main
| -rw-r--r-- | etc/prebuilt_etc.go | 29 |
1 files changed, 27 insertions, 2 deletions
diff --git a/etc/prebuilt_etc.go b/etc/prebuilt_etc.go index 685571dca..275d9c3ff 100644 --- a/etc/prebuilt_etc.go +++ b/etc/prebuilt_etc.go @@ -65,6 +65,7 @@ func RegisterPrebuiltEtcBuildComponents(ctx android.RegistrationContext) { ctx.RegisterModuleType("prebuilt_firmware", PrebuiltFirmwareFactory) ctx.RegisterModuleType("prebuilt_dsp", PrebuiltDSPFactory) ctx.RegisterModuleType("prebuilt_rfsa", PrebuiltRFSAFactory) + ctx.RegisterModuleType("prebuilt_renderscript_bitcode", PrebuiltRenderScriptBitcodeFactory) ctx.RegisterModuleType("prebuilt_defaults", defaultsFactory) @@ -149,12 +150,15 @@ type PrebuiltEtc struct { sourceFilePath android.Path outputFilePath android.OutputPath // The base install location, e.g. "etc" for prebuilt_etc, "usr/share" for prebuilt_usr_share. - installDirBase string + installDirBase string + installDirBase64 string // The base install location when soc_specific property is set to true, e.g. "firmware" for // prebuilt_firmware. socInstallDirBase string installDirPath android.InstallPath additionalDependencies *android.Paths + + makeClass string } type Defaults struct { @@ -345,6 +349,9 @@ func (p *PrebuiltEtc) GenerateAndroidBuildActions(ctx android.ModuleContext) { // If soc install dir was specified and SOC specific is set, set the installDirPath to the // specified socInstallDirBase. installBaseDir := p.installDirBase + if p.Target().Arch.ArchType.Multilib == "lib64" && p.installDirBase64 != "" { + installBaseDir = p.installDirBase64 + } if p.SocSpecific() && p.socInstallDirBase != "" { installBaseDir = p.socInstallDirBase } @@ -404,8 +411,14 @@ func (p *PrebuiltEtc) AndroidMkEntries() []android.AndroidMkEntries { if p.InRecovery() && !p.onlyInRecovery() { nameSuffix = ".recovery" } + + class := p.makeClass + if class == "" { + class = "ETC" + } + return []android.AndroidMkEntries{android.AndroidMkEntries{ - Class: "ETC", + Class: class, SubName: nameSuffix, OutputFile: android.OptionalPathForPath(p.outputFilePath), ExtraEntries: []android.AndroidMkExtraEntriesFunc{ @@ -572,6 +585,18 @@ func PrebuiltDSPFactory() android.Module { return module } +// prebuilt_renderscript_bitcode installs a *.bc file into /system/lib or /system/lib64. +func PrebuiltRenderScriptBitcodeFactory() android.Module { + module := &PrebuiltEtc{} + module.makeClass = "RENDERSCRIPT_BITCODE" + module.installDirBase64 = "lib64" + InitPrebuiltEtcModule(module, "lib") + // This module is device-only + android.InitAndroidArchModule(module, android.DeviceSupported, android.MultilibBoth) + android.InitDefaultableModule(module) + return module +} + // prebuilt_rfsa installs a firmware file that will be available through Qualcomm's RFSA // to the <partition>/lib/rfsa directory. func PrebuiltRFSAFactory() android.Module { |