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:[email protected]]
Sent: Friday, June 19, 2015 2:23 AM
To: [email protected]
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
[email protected]
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
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-devel