I'd really like to get this merged: we're running out of time for the upcoming stable tag.

I'm still waiting on reviews for the CryptoPkg, EmulatorPkg and IntelFsp2Pkg changes.


--
Rebecca Cran


On 5/1/23 10:08, Rebecca Cran wrote:
Update the toolchain definitions:

- Delete the CLANG35 and CLANG38 toolchains, and replace CLANG38 with
   CLANGDWARF, updating it to support ARM and AARCH64 in addition to X64
and IA32.

- Mark GCC48, GCC49 and GCC5 as deprecated.

- Add GCC and GCCNOLTO toolchain definitions.

- Remove VS2008, VS2010, VS2012 and VS2013.

- Remove EBC compiler definitions. Full removal of EBC support from the
   various packages etc. will be done in a follow-up patch series.

- Remove unused IPHONE_TOOLS and SOURCERY_CYGWIN_TOOLS definitions.

- Remove unused CYGWIN_ definitions.

Personal GitHub PR: https://github.com/tianocore/edk2/pull/4240
GitHub branch: https://github.com/bcran/edk2/tree/clangdwarf

Note: CI is now passing.

Changes from v1 to v2
=====================

- Added a commit to delete GCC48 and GCC49, rename GCC5 to GCC and
   update the flags for other toolchains to work with the new GCC
   definitions.

- Bumped VERSION from 2.00 to 3.00 to inform users that they should
   update their Conf/tools_def.txt.

Changes from v2 to v3
=====================

- Keep GCC48, GCC49 and GCC5 but mark them deprecated, including with
   warnings at the start and end of running a build.

- Dropped the commit fixing the IA32 build of UefiPayloadPkg, because it
   causes CI to fail due to building both IA32 and X64 at the same time:

   "Module built under multiple ARCHs [IA32, X64]. Not able to determine which 
output to put into flash for Module..."

- Added more information to the VERSION section in tools_def.template.

- Various fixes to the CLANGDWARF flags.

Changes from v3 to v4
=====================

- Use lld for -a ARM -t CLANGDWARF.

Changes from v4 to v5
=====================

- Fixed CLANGDWARF on Windows when llvm is installed with the llvm.org
   installer and isn't installed in Visual Studio: use llvm-objcopy and the
   tools prefix.

- Added flags for GCCNOLTO to UnitTestFrameworkPkgHost.dsc.inc

- Added GCC flags to CryptoPkg/Library/OpensslLib/*.inf

Changes from v5 to v6
=====================

- Reworked CLANGDWARF toolchain definitions. I made mistakes when updating
   them and accidentally changed the IA32 and X64 definitions.

- Dropped the changes to build.py. The edk2-BaseTools repo should be
   updated first, and _then_ the edk2 BaseTools can be changed.

- Split the updates to CryptoPkg build flags into separate commits,
   copying the CLANGPDB flags to CLANGDWARF.

- Fixed non-ASCII character in 5/16 commit message.

- Removed trailing whitespace in tools_def.template.

Rebecca Cran (16):
   BaseTools: Remove VS2008, 2010, 2012 and 2013 toolchain definitions
   BaseTools: Remove VS2008-VS2013 remnants
   MdePkg: Remove VS2008-VS2013 remnants
   edksetup.bat: Remove VS2008-VS2013 remnants
   BaseTools: Remove unused IPHONE_TOOLS and SOURCERY_CYGWIN_TOOLS defs
   BaseTools: Remove EBC (EFI Byte Code) compiler definitions
   BaseTools: Update VS toolchain descriptions in tools_def.txt.template
   Add GCC and GCCNOLTO toolchains to tools_def.txt and update packages
   BaseTools/Conf/tools_def.template: Add section for deprecated
     toolchains
   BaseTools: Add ARM and AARCH64 CLANGDWARF support in
     tools_def.template
   BaseTools: As with CLANGDWARF IA32 and X64, use lld for ARM and
     AARCH64
   BaseTools: Remove CLANG35 toolchain from tools_def.template
   BaseTools: Delete CLANG38 from tools_def.template
   BaseTools/Conf/tools_def.template: Bump VERSION to 3.00
   CryptoPkg: Delete CLANG35 and CLANG38 build flags
   CryptoPkg: Copy CLANGPDB build flags to CLANGDWARF

  UnitTestFrameworkPkg/UnitTestFrameworkPkgHost.dsc.inc       |    4 +
  IntelFsp2Pkg/Tools/Tests/QemuFspPkg.dsc                     |    8 +-
  CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf             |    3 +-
  CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf              |    3 +-
  CryptoPkg/Library/BaseCryptLib/RuntimeCryptLib.inf          |    3 +-
  CryptoPkg/Library/BaseCryptLib/SecCryptLib.inf              |    3 +-
  CryptoPkg/Library/BaseCryptLib/SmmCryptLib.inf              |    3 +-
  CryptoPkg/Library/BaseCryptLib/UnitTestHostBaseCryptLib.inf |    3 +-
  CryptoPkg/Library/OpensslLib/OpensslLib.inf                 |    4 +-
  CryptoPkg/Library/OpensslLib/OpensslLibAccel.inf            |    4 +-
  CryptoPkg/Library/OpensslLib/OpensslLibCrypto.inf           |    4 +-
  CryptoPkg/Library/OpensslLib/OpensslLibFull.inf             |    4 +-
  CryptoPkg/Library/OpensslLib/OpensslLibFullAccel.inf        |    5 +-
  EmulatorPkg/Unix/Host/Host.inf                              |    2 +
  MdePkg/Include/Ia32/ProcessorBind.h                         |    8 +-
  MdePkg/Include/X64/ProcessorBind.h                          |    8 +-
  BaseTools/Conf/tools_def.template                           | 1909 
+++++---------------
  BaseTools/Scripts/SetVisualStudio.bat                       |   22 +-
  BaseTools/Scripts/ShowEnvironment.bat                       |   44 -
  BaseTools/get_vsvars.bat                                    |   13 -
  BaseTools/set_vsprefix_envs.bat                             |   64 -
  BaseTools/toolsetup.bat                                     |   24 +-
  edksetup.bat                                                |    6 +-
  23 files changed, 530 insertions(+), 1621 deletions(-)



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#103989): https://edk2.groups.io/g/devel/message/103989
Mute This Topic: https://groups.io/mt/98618973/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to