[edk2-devel] [PATCH v6 00/16] BaseTools, CryptoPkg, EmulatorPkg, MdePkg, others: Delete CLANG35, CLANG38, VS2008-2013, EBC, deprecate GCC48, GCC49, GCC5, add GCC and GCCNOLTO, update CLANGDWARF
Rebecca Cran
rebecca at bsdio.com
Mon May 1 16:08:23 UTC 2023
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(-)
--
2.39.2
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#103800): https://edk2.groups.io/g/devel/message/103800
Mute This Topic: https://groups.io/mt/98618973/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-
More information about the edk2-devel-archive
mailing list