Laszlo:
  I have used GCC windows binary tools in my daily work. It is very helpful for 
the windows user. GCC Windows binary can be got from 
http://sourceforge.net/projects/edk2developertoolsforwindows/files/Tool%20Chain%20Binaries/x86.
 I would suggest we add wiki in GitHub to let user know how to set up GCC 
windows build environment.

Thanks
Liming
From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of Laszlo 
Ersek
Sent: Monday, March 7, 2016 6:41 PM
To: Fu, Siyuan <siyuan...@intel.com>; edk2-de...@ml01.01.org
Cc: Ye, Ting <ting...@intel.com>; Wu, Jiaxin <jiaxin...@intel.com>
Subject: Re: [edk2] [PATCH v3] NetworkPkg: Add URI configuration form to HTTP 
boot driver.

This patch (which is only ~1900 lines in size, including context...)

On 03/04/16 09:38, Fu Siyuan wrote:
> This patch updates the HTTP boot driver to produce a setup page for the boot
> file URI configuration. A new boot option will be created for the manual
> configured URI address. This change is made to support the HTTP boot usage
> in home environment.
>
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Fu Siyuan
> Cc: Wu Jiaxin
> Cc: Ye Ting
> ---
> NetworkPkg/HttpBootDxe/HttpBootClient.c | 99 +--
> NetworkPkg/HttpBootDxe/HttpBootConfig.c | 723 +++++++++++++++++++++
> NetworkPkg/HttpBootDxe/HttpBootConfig.h | 78 +++
> NetworkPkg/HttpBootDxe/HttpBootConfigNVDataStruc.h | 43 ++
> NetworkPkg/HttpBootDxe/HttpBootConfigStrings.uni | Bin 0 -> 2926 bytes
> NetworkPkg/HttpBootDxe/HttpBootConfigVfr.vfr | 53 ++
> NetworkPkg/HttpBootDxe/HttpBootDhcp4.c | 111 +++-
> NetworkPkg/HttpBootDxe/HttpBootDhcp4.h | 9 +-
> NetworkPkg/HttpBootDxe/HttpBootDhcp6.c | 6 +-
> NetworkPkg/HttpBootDxe/HttpBootDxe.c | 44 +-
> NetworkPkg/HttpBootDxe/HttpBootDxe.h | 33 +-
> NetworkPkg/HttpBootDxe/HttpBootDxe.inf | 17 +-
> NetworkPkg/HttpBootDxe/HttpBootImpl.c | 71 +-
> NetworkPkg/HttpBootDxe/HttpBootSupport.c | 63 ++
> NetworkPkg/HttpBootDxe/HttpBootSupport.h | 18 +
> NetworkPkg/Include/Guid/HttpBootConfigHii.h | 25 +
> NetworkPkg/NetworkPkg.dec | 5 +-
> 17 files changed, 1288 insertions(+), 110 deletions(-)
> create mode 100644 NetworkPkg/HttpBootDxe/HttpBootConfig.c
> create mode 100644 NetworkPkg/HttpBootDxe/HttpBootConfig.h
> create mode 100644 NetworkPkg/HttpBootDxe/HttpBootConfigNVDataStruc.h
> create mode 100644 NetworkPkg/HttpBootDxe/HttpBootConfigStrings.uni
> create mode 100644 NetworkPkg/HttpBootDxe/HttpBootConfigVfr.vfr
> create mode 100644 NetworkPkg/Include/Guid/HttpBootConfigHii.h

breaks the gcc build here:

> + //
> + // Get current "BootOrder" variable and find a free target.
> + //
> + Length = 0;
> + Status = GetVariable2 (
> + L"BootOrder",
> + &gEfiGlobalVariableGuid,
> + &CurrentOrder,
> + &Length
> + );

with the following error message:

------------
NetworkPkg/HttpBootDxe/HttpBootConfig.c: In function
'HttpBootAddBootOption':
NetworkPkg/HttpBootDxe/HttpBootConfig.c:148:14: error: passing argument
3 of 'GetVariable2' from incompatible pointer type [-Werror]
);
^
In file included from NetworkPkg/HttpBootDxe/HttpBootDxe.h:31:0,
from NetworkPkg/HttpBootDxe/HttpBootConfig.c:15:
MdePkg/Include/Library/UefiLib.h:708:1: note: expected 'void **' but
argument is of type 'CHAR16 **'
GetVariable2 (
^
cc1: all warnings being treated as errors
------------

First, the BootOrder variable is not composed of CHAR16 elements (it is
not a UCS-2 string); it is composed of UINT16 elements. From the UEFI spec:

The BootOrder variable contains an array of UINT16's that make up
an ordered list of the Boot#### options.

Second, can we please figure out a way for Windows using developers to
build edk2 with at least one version of gcc? These build failures are
*incredibly* annoying. The build breaks, someone submits a patch, the
reviewer lives on the other side of the planet, a day passes, review is
in, another day passes, the submitter commits it, okay, it builds again
now. Terrible.

I would absolutely test-build my edk2 patches with a VS release if one
was available to me at no cost. I could run it in a virtual machine. I
don't do it because I can't justify the $$$ to mgmt just for this. But
gcc binaries are available to Windows people at zero cost, and gcc's use
on Windows has been repeatedly discussed on this list. I find this state
desperate.

Laszlo
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org<mailto:edk2-devel@lists.01.org>
https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to