Thanks. The obvious toolchains that are missing from ReadMe.rst are any versions of XCODE and CLANG.
toggle quoted messageShow quoted text
Also, it might be nice to specify _which_ GCC5 versions are supported, since that covers gcc 5 through 11 and gcc 5.x currently causes a build error. We maybe only care about gcc 7 and newer these days?
I just tried building with VS2015 and VS2013, and there was a build error because it seems the location of rc.exe has changed. After fixing that they successfully built OVMF. But it sounds like we possibly only want to make sure that VS2017 and VS2019 are kept working now.
I've cc'd Bret and Sean because I'm wondering if there are plans to add more toolchain/OS combinations into the GitHub/Azure solution? For example adding macOS with XCODE5? Also, how about post-commit or nightly builds that run more extensive tests, possibly generating binaries for OVMF that people can try without building it themselves? Or would that be something that might be useful for me to implement as a third-party solution?
On 5/10/21 5:31 PM, Michael D Kinney wrote:
I think there a few categories of tool chains:
1) Tool chains that are in tools_def.txt and are used by EDK II CI to perform pre-commit and post-commit changes. These are documented in Readme.rst
2) Tool chains that are in tools_def.txt that are fully supported by the EDK II community. Should be documented in Readme.rst.
3) Tool chains that are in tools_def.txt, but are not supported by the EDK II community, but some downstream consumers use the tool chain are willing to fix issues that impact them.
4) Tool chains that are in tools_def.txt, but are not used by anyone.
We need to make sure we document (1), (2), and (3) so we can identify and delete (4) from tools_def.txt.
From: Rebecca Cran <email@example.com>
Sent: Monday, May 10, 2021 6:21 AM
To: firstname.lastname@example.org; email@example.com; firstname.lastname@example.org
Cc: Kinney, Michael D <email@example.com>; Tom Lendacky <firstname.lastname@example.org>
Subject: Re: [edk2-devel] Build fails with VS2012
On 5/10/21 5:56 AM, Laszlo Ersek wrote:
On 05/08/21 21:47, Rebecca Cran wrote:
I'm setting up a new Jenkins server to do Bhyve builds and run onI think the compiler is justified to complain here:
platforms that aren't currently tested with the GitHub/Azure system.
Since VS2012 appears to be a supported toolchain, I tried building
OvmfPkgX64 with it (I'm also planning on testing VS2013, VS2015, VS2017
and VS2019), but it fails with:
: error C2220: warning treated as error - no 'object' file generated
: warning C4306: 'type cast' : conversion from 'int' to
'SEV_ES_AP_JMP_FAR *' of greater size
7b7508ad784d1 (Tom Lendacky 2020-08-12 15:21:42 -0500 1268) JmpFar = (SEV_ES_AP_JMP_FAR *) FixedPcdGet32
I've created https://bugzilla.tianocore.org/show_bug.cgi?id=3385
The proper way to spell such casts is with (UINTN) in the middle.
Can you please file a new BZ?
Thanks. If we're ready to go ahead, should I create a patch to remove them?
I know the GitHub/Azure system only tests with VS2017 and VS2019: areI'd suggest dropping them.
there plans to drop the older VS versions, or should they still work?
And would it be considered useful to _check_ that they still work, or
should they be considered unsupported?
Earlier, Ard raised a similar question for gcc too -- IIRC, Ard suggested that GCC4* be removed. I agree with the idea.
Do you know what the new minimum version of gcc should then be? I'd like
to run builds with it so we can catch any issues.
Would we remove all VS versions except VS2017 and VS2019, or would we
keep others like VS2015 for now?