VirtualBox

Ignore:
Timestamp:
Mar 24, 2025 3:26:59 PM (4 weeks ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
168136
Message:

tools,Devices/EFI/Firmware: Switch to a clang based cross compile toolchain for arm32 and arm64 UEFI images like we have on Windows, bugref:10874 bugref:4643

Using clang has several advantages:

  • It is far easier to build so updating the toolchain should be much simpler
  • A single toolchain can support multiple targets, no need to have two different toolchains for arm32 and arm64
  • The toolchain can be used for cross compilation (the current toolchain supports x86,amd64,arm32,arm64 and riscv...)
  • As clang is already used for the firmware images shipped in a release the resulting images compiled locally are much more close to what is built on the buildbox

The only downside is that the clang toolchain is a bit on the heavy side, even if stripped down. OTOH we only need a single toolchain opossed
to the two we had before.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/EFI/Firmware/Config.kmk

    r107043 r108719  
    8080 VBOX_EFI_TOOL_CHAIN.x86   := VS2019
    8181 VBOX_EFI_TOOL_CHAIN.amd64 := VS2019
    82  VBOX_EFI_TOOL_CHAIN.arm32 := CLANGDWARF
    83  VBOX_EFI_TOOL_CHAIN.arm64 := CLANGDWARF
    8482else
    8583 VBOX_EFI_TOOL_CHAIN.x86   := GCC48
    8684 VBOX_EFI_TOOL_CHAIN.amd64 := GCC48
    87  VBOX_EFI_TOOL_CHAIN.arm32 := GCC48
    88  VBOX_EFI_TOOL_CHAIN.arm64 := GCC48
    89 endif
     85endif
     86
     87VBOX_EFI_TOOL_CHAIN.arm32 := CLANGDWARF
     88VBOX_EFI_TOOL_CHAIN.arm64 := CLANGDWARF
    9089
    9190
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette