summaryrefslogtreecommitdiffstats
path: root/MdeModulePkg/Universal/RegularExpressionDxe/RegularExpressionDxe.inf
blob: 84489c29427981a4f99c57320d4612e514c72937 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
## @file
#  EFI_REGULAR_EXPRESSION_PROTOCOL Implementation
#
#  Copyright (c) 2018-2020, Intel Corporation. All rights reserved.<BR>
#  (C) Copyright 2015 Hewlett Packard Enterprise Development LP<BR>
#
#  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 =