CPPFLAGS might be your issue. Assuming VFR is failing. It is one of the only C++ tools. See the end of: https://github.com/tianocore/edk2/blob/master/BaseTools/Source/C/Makefiles/ms.common It would be good to attach this failure to the BZ too > On Apr 4, 2021, at 9:43 PM, Ethin Probst wrote: > > I can't run edksetup.bat rebuild. The system is set to treat warnings > as errors, and the build tools have warnings within them, and so MSVC > bails out. > >> On 4/4/21, Andrew Fish via groups.io wrote: >> Ethin I’m not sure what issue you are hitting with VFR? When you built the C >> build tools it should have built the VFR compiler that matches the code? >> >> Did you run edksetup.bat Rebuild? >>> On Mar 31, 2021, at 10:05 PM, Ethin Probst >>> wrote: >>> >>> Hello there, >>> >>> Some good advice, and thank you! I might add it to the other virtIO* >>> drivers if I can figure out a good template for that. >>> >>> One thing I'm running into right now is that my build setup is >>> currently unable to build MdeModulePkg (which is required to build >>> OVMF, according to the readme). I've reported it on the bugzilla; its >>> issue 3289. This doesn't appear to occur on Linux, however, which is >>> odd. >>> >>> Are there any suggestions that you guys have for improving my >>> proposal? I didn't want to write too much or go overboard, like >>> explaining how the sound driver would work and such, since I assumed >>> -- while writing it -- that anyone who wanted to know those inner >>> details would go read the VirtIO specification. But I'd appreciate any >>> extra feedback before I submit my final version; I haven't made any >>> changes since my initial proposal as of yet. >>> >>>> On 3/31/21, Nate DeSimone wrote: >>>> Another option is to put the protocol definition in MdeModulePkg and mark >>>> it >>>> with the EDKII_ prefix. For my last “code first” UEFI spec contribution >>>> I >>>> did this with the PPI that added up getting added. >>>> >>>> Thanks, >>>> Nate >>>> >>>> From: on behalf of "Andrew Fish via groups.io" >>>> >>>> Reply-To: "devel@edk2.groups.io" , >>>> "afish@apple.com" >>>> >>>> Date: Tuesday, March 30, 2021 at 10:54 PM >>>> To: edk2-devel-groups-io , >>>> "harlydavidsen@gmail.com" >>>> >>>> Cc: Rafael Rodrigues Machado >>>> Subject: Re: [edk2-devel] VirtIO Sound Driver (GSoC 2021) >>>> >>>> >>>> >>>> On Mar 30, 2021, at 5:01 PM, Ethin Probst >>>> > wrote: >>>> >>>> I'm wondering where exactly I should add the VirtIO sound protocol. I >>>> just familiarized myself with the build system and am about to test it >>>> by building OVMF if possible, but I'm wondering where I should >>>> actually put the protocol and all that stuff. Maybe there's >>>> documentation I've missed as well. >>>> >>>> Ethin, >>>> >>>> For the driver I’d match the patter of OVMF [1] and use >>>> OvmfPkg/VirtioSoundDxe/. Maybe even use one of the other drivers as a >>>> template. >>>> >>>> The protocol is more of a public thing. I think eventually we would like >>>> to >>>> publish the protocol in the UEFI Spec (I can help with that part) and >>>> that >>>> would mean we put the Protocol definition in MdePkg/Include/Protocol, but >>>> we >>>> don’t want to do that before it is standardized as that causes >>>> compatibility >>>> issues. So this is a “code first project” (code prototype and then >>>> contribute to the UEFI Forum for inclusion in the specification) so we >>>> need >>>> to follow some code first rules that I don’t remember of the top of my >>>> head? >>>> So why not start out the protocol definition OvmfPkg/Include/Protocol. >>>> You >>>> can also add a test application looks like you can just use the root [2] >>>> of >>>> OVMF for that. That way the project is not blocked. >>>> >>>> We can have a conversation on the mailing list about better places to >>>> put >>>> stuff, and it should be easy enough to move stuff around if everything >>>> else >>>> is working. >>>> >>>> [1] find OvmfPkg -iname '*Virtio*.inf' >>>> OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf >>>> OvmfPkg/VirtioScsiDxe/VirtioScsi.inf >>>> OvmfPkg/Library/VirtioMmioDeviceLib/VirtioMmioDeviceLib.inf >>>> OvmfPkg/Library/VirtioLib/VirtioLib.inf >>>> OvmfPkg/VirtioGpuDxe/VirtioGpu.inf >>>> OvmfPkg/VirtioBlkDxe/VirtioBlk.inf >>>> OvmfPkg/Virtio10Dxe/Virtio10.inf >>>> OvmfPkg/VirtioNetDxe/VirtioNet.inf >>>> OvmfPkg/VirtioRngDxe/VirtioRng.inf >>>> >>>> >>>> [2] /Volumes/Case/edk2-github/OvmfPkg>git grep APPLICATION -- *.inf | >>>> grep >>>> MODULE_TYPE >>>> EnrollDefaultKeys/EnrollDefaultKeys.inf:13: MODULE_TYPE >>>> = UEFI_APPLICATION >>>> >>>> Thanks, >>>> >>>> Andrew Fish >>>> >>>> >>>> >>>> >>>> On 3/30/21, Ethin Probst via groups.io >>>> > >>>> wrote: >>>> >>>> I agree. Plus, it gives me a chance to finally learn the EDK2 build >>>> system and how it works! I've been working on a hobby OS as a side >>>> project and, though learning from other code examples from OSes is >>>> fun, I have to say that learning from the firmware code like from >>>> SeaBIOS has been some of the most enlightening and interesting times >>>> thus far. >>>> Thanks for the link to your code, Rafael; once I get virtIO support >>>> in, I can work on HDA support, though I might tackle USB support >>>> second and HDA third. We'll see, but VirtIO definitely is coming >>>> first. >>>> >>>> As I said before, I look forward to working with all of you wonderful >>>> people! >>>> >>>> On 3/30/21, Rafael Rodrigues Machado >>>> > >>>> wrote: >>>> >>>> This would be amazing so people can continue my work related to >>>> accessibility at BIOS. Something desired by the blind people since the >>>> 90's >>>> Just for reference, this is what I have done: >>>> >>>> https://github.com/RafaelRMachado/Msc_UefiHda_PreOs_Accessibility >>>> >>>> Thanks >>>> Rafael >>>> >>>> Em seg, 29 de mar de 2021 20:24, Ethin Probst >>>> escreveu: >>>> >>>> >>>> Hello everyone, >>>> >>>> This is the first time I've ever contributed to EDK2. As part of GSoC >>>> 2021, I have submitted a proposal to implement a UEFI audio output >>>> protocol that will utilize the VirtIO sound driver. I've already >>>> submitted a draft proposal, and apologize if I've done things out of >>>> order. This is my first time doing GSoC 2021, and contributing to EDK2 >>>> felt like a really fun thing to do! >>>> >>>> I look forward to working with you guys on this and any future projects! >>>> :-) >>>> >>>> -- >>>> Signed, >>>> Ethin D. Probst >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> Signed, >>>> Ethin D. Probst >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> -- >>>> Signed, >>>> Ethin D. Probst >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>> >>> >>> -- >>> Signed, >>> Ethin D. Probst >> >> >> >> >> >> > > > -- > Signed, > Ethin D. Probst