## @file
#  EBC Debugger configuration application.
#
#  Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>
#
#  This program and the accompanying materials
#  are licensed and made available under the terms and conditions of the BSD License
#  which accompanies this distribution. The full text of the license may be found at
#  http://opensource.org/licenses/bsd-license.php
#  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
#  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#
#
##

[Defines]
  INF_VERSION                    = 0x00010005
  BASE_NAME                      = EdbCfg
  MODULE_UNI_FILE                = EbcDebuggerConfig.uni
  FILE_GUID                      = 8CFC5233-23C6-49e3-8A2D-7E581AB305BA
  MODULE_TYPE                    = UEFI_APPLICATION
  VERSION_STRING                 = 1.0
  ENTRY_POINT                    = InitializeEbcDebuggerConfig

#
# The following information is for reference only and not required by the build tools.
#
#  VALID_ARCHITECTURES           = IA32 X64 AARCH64
#

[Sources]
  EbcDebugger/EbcDebuggerConfig.c
  EbcDebugger/EdbCommon.h
  EbcDebugger/EdbSupportString.c
  EbcDebugger/EdbSupport.h

[Packages]
  MdePkg/MdePkg.dec
  MdeModulePkg/MdeModulePkg.dec

[LibraryClasses]
  UefiLib
  BaseLib
  DebugLib
  UefiApplicationEntryPoint

[Protocols]
  gEfiDebuggerConfigurationProtocolGuid     ## CONSUMES
  gEfiShellParametersProtocolGuid           ## CONSUMES

[Depex]
  TRUE

[UserExtensions.TianoCore."ExtraFiles"]
  EbcDebuggerConfigExtra.uni
