Hi Ronathan,

I have below comments:

1. I add  below build option in the inf to pass build:
[BuildOptions] 
  # Override MSFT build option to remove /Oi and /GL
  MSFT:DEBUG_*_IA32_CC_FLAGS   == /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE 
/O1b2  /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm 
  MSFT:RELEASE_*_IA32_CC_FLAGS == /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE 
/O1b2  /FIAutoGen.h /EHs-c- /GR- /GF 
  MSFT:DEBUG_*_X64_CC_FLAGS    == /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE 
/O1b2s /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm /X 
  MSFT:RELEASE_*_X64_CC_FLAGS  == /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE 
/O1b2s /FIAutoGen.h /EHs-c- /GR- /GF /Gy /X 
  MSFT:DEBUG_*_IPF_CC_FLAGS    == /nologo /c /WX /GS- /W4 /EHs-c- /GR- /Gy /Os 
/FIAutoGen.h /QIPF_fr32 /Zi /X 
  MSFT:RELEASE_*_IPF_CC_FLAGS  == /nologo /c /WX /GS- /W4 /EHs-c- /GR- /Gy /Os 
/FIAutoGen.h /QIPF_fr32 /X 
  INTEL:*_*_*_CC_FLAGS         =  /Oi-
  GCC:*_*_*_CC_FLAGS           =  -fno-builtin

  # Oniguruma: potentially uninitialized local variable used
  MSFT:*_*_*_CC_FLAGS = /wd4701

  # Oniguruma: intrinsic function not declared
  MSFT:*_*_*_CC_FLAGS = /wd4164

  # Oniguruma: 'type cast' : truncation from 'OnigUChar *' to 'unsigned int' 
  MSFT:*_*_*_CC_FLAGS = /wd4305 /wd4306

2.  In RegularExpressionGetInfo function, RegExSyntaxTypeList == NULL should 
not return EFI_INVALID_PARAMETER. When user call GetInfo first time, it's used 
to get the buffer size, so the RegExSyntaxTypeList maybe NULL. But in the 
second time, we can check the RegExSyntaxTypeList not NULL.
  if (This == NULL || RegExSyntaxTypeListSize == NULL || RegExSyntaxTypeList == 
NULL) {
    return EFI_INVALID_PARAMETER;
  }

3. In RegularExpressionDxeEntry function, EDKII style don't define 
EFI_REGULAR_EXPRESSION_PROTOCOL like this, it define it outside of the 
function, and usually named it like mProtocolInstance.


Thanks,
Eric

-----Original Message-----
From: Doman, Jonathan [mailto:jonathan.do...@hp.com] 
Sent: Friday, June 19, 2015 2:23 AM
To: edk2-devel@lists.sourceforge.net
Subject: [edk2] [PATCH v3] MdeModulePkg: Regular expression protocol

Patch is hosted on github here:

https://github.com/jrmrjnck/edk2/commit/b186f03121679b44cc224d7c69f04f9b4b799bc3.patch

Unfortunately, the patch is too large and gets stuck in the edk2-devel mod 
queue.
The bulk of it is a new regular expression library, so it doesn't make sense to 
split up.
Please let me know if there is a preferred way to submit large patches.


Add driver to produce EFI_REGULAR_EXPRESSION_PROTOCOL.  Based on Oniguruma 
v5.9.6 (BSD 2-clause license), which provides full Unicode support, and POSIX 
ERE and Perl regex syntaxes.
---
v3 changes:
 * Put regex library directly under driver and forget about driver/library 
de-coupling.
 * Switch from SLRE to Oniguruma implementation, which is much more robust and 
useful.
------------------------------------------------------------------------------
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

------------------------------------------------------------------------------
Don't Limit Your Business. Reach for the Cloud.
GigeNET's Cloud Solutions provide you with the tools and support that
you need to offload your IT needs and focus on growing your business.
Configured For All Businesses. Start Your Cloud Today.
https://www.gigenetcloud.com/
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to