## @file
# EFI_REGULAR_EXPRESSION_PROTOCOL Implementation
#
# Copyright (c) 2018-2020, Intel Corporation. All rights reserved.
# (C) Copyright 2015 Hewlett Packard Enterprise Development LP
#
# SPDX-License-Identifier: BSD-2-Clause-Patent
##
[Defines]
INF_VERSION = 0x00010018
BASE_NAME = RegularExpressionDxe
FILE_GUID = 3E197E9C-D8DC-42D3-89CE-B04FA9833756
MODULE_TYPE = UEFI_DRIVER
VERSION_STRING = 1.0
ENTRY_POINT = RegularExpressionDxeEntry
[Sources]
RegularExpressionDxe.c
RegularExpressionDxe.h
OnigurumaUefiPort.h
OnigurumaUefiPort.c
# Wrapper header files start #
stdio.h
stdarg.h
stddef.h
stdlib.h
string.h
config.h
# Wrapper header files end #
# Upstream Oniguruma code
oniguruma/src/onig_init.c
oniguruma/src/oniguruma.h
oniguruma/src/regcomp.c
oniguruma/src/regenc.c
oniguruma/src/regenc.h
oniguruma/src/regerror.c
oniguruma/src/regexec.c
oniguruma/src/oniggnu.h
oniguruma/src/reggnu.c
oniguruma/src/regint.h
oniguruma/src/regparse.c
oniguruma/src/regparse.h
oniguruma/src/regposerr.c
oniguruma/src/onigposix.h
oniguruma/src/regposix.c
oniguruma/src/regsyntax.c
oniguruma/src/regtrav.c
oniguruma/src/regversion.c
oniguruma/src/st.c
oniguruma/src/st.h
# Supported Character Encodings
oniguruma/src/ascii.c
oniguruma/src/unicode.c
oniguruma/src/unicode_fold1_key.c
oniguruma/src/unicode_fold2_key.c
oniguruma/src/unicode_fold3_key.c
oniguruma/src/unicode_unfold_key.c
oniguruma/src/utf16_le.c
oniguruma/src/utf8.c
oniguruma/src/utf16_be.c
oniguruma/src/euc_jp.c
oniguruma/src/sjis.c
oniguruma/src/sjis_prop.c
oniguruma/src/euc_jp_prop.c
[Packages]
MdePkg/MdePkg.dec
MdeModulePkg/MdeModulePkg.dec
[LibraryClasses]
UefiBootServicesTableLib
UefiDriverEntryPoint
MemoryAllocationLib
BaseMemoryLib
DebugLib
PrintLib
[Guids]
gEfiRegexSyntaxTypePosixExtendedGuid ## CONSUMES ## GUID
gEfiRegexSyntaxTypePerlGuid ## CONSUMES ## GUID
[Protocols]
gEfiRegularExpressionProtocolGuid ## PRODUCES
[BuildOptions]
# Enable STDARG for variable arguments
*_*_*_CC_FLAGS = -DHAVE_STDARG_H -U_WIN32 -DONIG_VARIADIC_FUNC_ATTR=EFIAPI
# Override MSFT build option to remove /Oi and /GL
MSFT:*_*_*_CC_FLAGS = /GL-
INTEL:*_*_*_CC_FLAGS = /Oi-
# Oniguruma: potentially uninitialized local variable used
MSFT:*_*_*_CC_FLAGS = /wd4701 /wd4703
# Oniguruma: intrinsic function not declared
MSFT:*_*_*_CC_FLAGS = /wd4164
# Oniguruma: old style declaration in st.c
MSFT:*_*_*_CC_FLAGS = /wd4131
# Oniguruma: 'type cast' : truncation from 'OnigUChar *' to 'unsigned int'
MSFT:*_*_*_CC_FLAGS = /wd4305 /wd4306
# Oniguruma: nameless union declared in regparse.h
MSFT:*_*_*_CC_FLAGS = /wd4201
# Oniguruma: 'type cast' : "int" to "OnigUChar", function pointer to "void *"
MSFT:*_*_*_CC_FLAGS = /wd4244 /wd4054
# Oniguruma: previous local declaration
MSFT:*_*_*_CC_FLAGS = /wd4456
# Oniguruma: signed and unsigned mismatch/cast
MSFT:*_*_*_CC_FLAGS = /wd4018 /wd4245 /wd4389 /wd4090
# Oniguruma: tag_end in parse_callout_of_name
GCC:*_*_*_CC_FLAGS = -Wno-error=maybe-uninitialized
# Oniguruma: implicit conversion from 'UINTN' (aka 'unsigned long long') to 'long'
GCC:*_CLANGPDB_*_CC_FLAGS = -Wno-error=constant-conversion
# Not add -Wno-error=maybe-uninitialized option for XCODE
# XCODE doesn't know this option
XCODE:*_*_*_CC_FLAGS =