1## @file
2# Instance of UEFI Library.
3#
4# The UEFI Library provides functions and macros that simplify the development of
5#  UEFI Drivers and UEFI Applications.  These functions and macros help manage EFI
6#  events, build simple locks utilizing EFI Task Priority Levels (TPLs), install
7#  EFI Driver Model related protocols, manage Unicode string tables for UEFI Drivers,
8#  and print messages on the console output and standard error devices.
9#
10# Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>
11#
12#  SPDX-License-Identifier: BSD-2-Clause-Patent
13#
14#
15##
16
17[Defines]
18  INF_VERSION                    = 0x00010005
19  BASE_NAME                      = UefiLib
20  MODULE_UNI_FILE                = UefiLib.uni
21  FILE_GUID                      = 3a004ba5-efe0-4a61-9f1a-267a46ae5ba9
22  MODULE_TYPE                    = UEFI_DRIVER
23  VERSION_STRING                 = 1.0
24  LIBRARY_CLASS                  = UefiLib|DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER UEFI_APPLICATION UEFI_DRIVER SMM_CORE
25  CONSTRUCTOR                    = UefiLibConstructor
26
27
28#
29#  VALID_ARCHITECTURES           = IA32 X64 EBC
30#
31
32[Sources]
33  UefiLibPrint.c
34  UefiNotTiano.c
35  UefiDriverModel.c
36  Console.c
37  UefiLib.c
38  UefiLibInternal.h
39  Acpi.c
40
41
42[Packages]
43  MdePkg/MdePkg.dec
44
45
46[LibraryClasses]
47  PrintLib
48  PcdLib
49  MemoryAllocationLib
50  DebugLib
51  BaseMemoryLib
52  BaseLib
53  UefiBootServicesTableLib
54  DevicePathLib
55  UefiRuntimeServicesTableLib
56
57[Guids]
58  gEfiEventReadyToBootGuid                      ## SOMETIMES_CONSUMES  ## Event
59  gEfiEventLegacyBootGuid                       ## SOMETIMES_CONSUMES  ## Event
60  gEfiGlobalVariableGuid                        ## SOMETIMES_CONSUMES  ## Variable
61  gEfiAcpi20TableGuid                           ## SOMETIMES_CONSUMES  ## SystemTable
62  gEfiAcpi10TableGuid                           ## SOMETIMES_CONSUMES  ## SystemTable
63
64[Protocols]
65  gEfiDriverBindingProtocolGuid                   ## SOMETIMES_PRODUCES
66  gEfiSimpleTextOutProtocolGuid                   ## SOMETIMES_CONSUMES
67  gEfiGraphicsOutputProtocolGuid                  ## SOMETIMES_CONSUMES
68  gEfiHiiFontProtocolGuid                         ## SOMETIMES_CONSUMES
69  gEfiSimpleFileSystemProtocolGuid                ## SOMETIMES_CONSUMES
70  gEfiUgaDrawProtocolGuid | gEfiMdePkgTokenSpaceGuid.PcdUgaConsumeSupport                 ## SOMETIMES_CONSUMES # Consumes if gEfiGraphicsOutputProtocolGuid uninstalled
71  gEfiComponentNameProtocolGuid  | NOT gEfiMdePkgTokenSpaceGuid.PcdComponentNameDisable   ## SOMETIMES_PRODUCES # User chooses to produce it
72  gEfiComponentName2ProtocolGuid | NOT gEfiMdePkgTokenSpaceGuid.PcdComponentName2Disable  ## SOMETIMES_PRODUCES # User chooses to produce it
73  gEfiDriverConfigurationProtocolGuid                            ## SOMETIMES_PRODUCES # User chooses to produce it
74  gEfiDriverConfiguration2ProtocolGuid                           ## SOMETIMES_PRODUCES # User chooses to produce it
75  gEfiDriverDiagnosticsProtocolGuid | NOT gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnosticsDisable  ## SOMETIMES_PRODUCES # User chooses to produce it
76  gEfiDriverDiagnostics2ProtocolGuid| NOT gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnostics2Disable ## SOMETIMES_PRODUCES # User chooses to produce it
77
78
79[Pcd]
80  gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize   ## SOMETIMES_CONSUMES
81
82[FeaturePcd]
83  gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnosticsDisable    ## CONSUMES
84  gEfiMdePkgTokenSpaceGuid.PcdComponentNameDisable        ## CONSUMES
85  gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnostics2Disable   ## CONSUMES
86  gEfiMdePkgTokenSpaceGuid.PcdComponentName2Disable       ## CONSUMES
87  gEfiMdePkgTokenSpaceGuid.PcdUgaConsumeSupport           ## CONSUMES
88
89