]> git.proxmox.com Git - mirror_edk2.git/blame - AppPkg/AppPkg.dsc
Add safe string function to base lib.
[mirror_edk2.git] / AppPkg / AppPkg.dsc
CommitLineData
2aa62f2b 1## @file\r
2# Intel(r) UEFI Application Development Kit for EDK II.\r
3# This package contains applications which depend upon Standard Libraries\r
4# from the StdLib package.\r
5#\r
6# See the comments in the [LibraryClasses.IA32] and [BuildOptions] sections\r
7# for important information about configuring this package for your\r
8# environment.\r
9#\r
c9f4d483 10# Copyright (c) 2010 - 2014, Intel Corporation. All rights reserved.<BR>\r
2aa62f2b 11# This program and the accompanying materials\r
12# are licensed and made available under the terms and conditions of the BSD License\r
13# which accompanies this distribution. The full text of the license may be found at\r
14# http://opensource.org/licenses/bsd-license.\r
15#\r
16# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
17# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
18##\r
19\r
20[Defines]\r
21 PLATFORM_NAME = AppPkg\r
22 PLATFORM_GUID = 0458dade-8b6e-4e45-b773-1b27cbda3e06\r
23 PLATFORM_VERSION = 0.01\r
24 DSC_SPECIFICATION = 0x00010006\r
25 OUTPUT_DIRECTORY = Build/AppPkg\r
df294f7f 26 SUPPORTED_ARCHITECTURES = IA32|IPF|X64|ARM|AARCH64\r
2aa62f2b 27 BUILD_TARGETS = DEBUG|RELEASE\r
28 SKUID_IDENTIFIER = DEFAULT\r
29\r
86e9f87e
LL
30#\r
31# Debug output control\r
32#\r
33 DEFINE DEBUG_ENABLE_OUTPUT = FALSE # Set to TRUE to enable debug output\r
34 DEFINE DEBUG_PRINT_ERROR_LEVEL = 0x80000040 # Flags to control amount of debug output\r
35 DEFINE DEBUG_PROPERTY_MASK = 0\r
36\r
2aa62f2b 37[PcdsFeatureFlag]\r
38\r
39[PcdsFixedAtBuild]\r
86e9f87e
LL
40 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|$(DEBUG_PROPERTY_MASK)\r
41 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|$(DEBUG_PRINT_ERROR_LEVEL)\r
2aa62f2b 42\r
43[PcdsFixedAtBuild.IPF]\r
44\r
45[LibraryClasses]\r
46 #\r
47 # Entry Point Libraries\r
48 #\r
49 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf\r
50 ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf\r
4684b66f 51 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf\r
2aa62f2b 52 #\r
53 # Common Libraries\r
54 #\r
55 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf\r
56 BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf\r
57 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf\r
58 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf\r
59 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf\r
60 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf\r
61 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf\r
62 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf\r
86e9f87e
LL
63 !if $(DEBUG_ENABLE_OUTPUT)\r
64 DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf\r
65 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf\r
66 !else ## DEBUG_ENABLE_OUTPUT\r
67 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf\r
68 !endif ## DEBUG_ENABLE_OUTPUT\r
d78fab6b 69\r
2aa62f2b 70 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf\r
71 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf\r
72 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf\r
73 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf\r
74 PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf\r
75 SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf\r
76 UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf\r
77 HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf\r
78 UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf\r
79 PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf\r
80 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf\r
4684b66f 81\r
2aa62f2b 82 ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf\r
83 FileHandleLib|ShellPkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf\r
84 SortLib|ShellPkg/Library/UefiSortLib/UefiSortLib.inf\r
4684b66f 85 PathLib|ShellPkg/Library/BasePathLib/BasePathLib.inf\r
2aa62f2b 86\r
b410d6e4 87 CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf\r
88\r
2aa62f2b 89###################################################################################################\r
90#\r
91# Components Section - list of the modules and components that will be processed by compilation\r
92# tools and the EDK II tools to generate PE32/PE32+/Coff image files.\r
93#\r
94# Note: The EDK II DSC file is not used to specify how compiled binary images get placed\r
95# into firmware volume images. This section is just a list of modules to compile from\r
96# source into UEFI-compliant binaries.\r
97# It is the FDF file that contains information on combining binary files into firmware\r
98# volume images, whose concept is beyond UEFI and is described in PI specification.\r
99# Binary modules do not need to be listed in this section, as they should be\r
100# specified in the FDF file. For example: Shell binary (Shell_Full.efi), FAT binary (Fat.efi),\r
101# Logo (Logo.bmp), and etc.\r
102# There may also be modules listed in this section that are not required in the FDF file,\r
103# When a module listed here is excluded from FDF file, then UEFI-compliant binary will be\r
104# generated for it, but the binary will not be put into any firmware volume.\r
105#\r
106###################################################################################################\r
107\r
108[Components]\r
2aa62f2b 109\r
110#### Sample Applications.\r
111 AppPkg/Applications/Hello/Hello.inf # No LibC includes or functions.\r
112 AppPkg/Applications/Main/Main.inf # Simple invocation. No other LibC functions.\r
d78fab6b 113 AppPkg/Applications/Enquire/Enquire.inf #\r
c9f4d483 114 AppPkg/Applications/ArithChk/ArithChk.inf #\r
af9c2a56 115\r
424d8455
LE
116#### A simple fuzzer for OrderedCollectionLib, in particular for\r
117#### BaseOrderedCollectionRedBlackTreeLib.\r
118 AppPkg/Applications/OrderedCollectionTest/OrderedCollectionTest.inf {\r
119 <LibraryClasses>\r
120 OrderedCollectionLib|MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.inf\r
121 DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf\r
122 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf\r
123 <PcdsFeatureFlag>\r
124 gEfiMdePkgTokenSpaceGuid.PcdValidateOrderedCollection|TRUE\r
125 <PcdsFixedAtBuild>\r
126 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2F\r
127 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80400040\r
128 }\r
129\r
c9f4d483 130#### Un-comment the following line to build Python.\r
af9c2a56 131# AppPkg/Applications/Python/PythonCore.inf\r
2aa62f2b 132\r
4684b66f 133\r
274402de 134##############################################################################\r
2aa62f2b 135#\r
63f31618 136# Specify whether we are running in an emulation environment, or not.\r
b410d6e4 137# Define EMULATE if we are, else keep the DEFINE commented out.\r
63f31618 138#\r
b410d6e4 139# DEFINE EMULATE = 1\r
63f31618 140\r
b410d6e4 141##############################################################################\r
142#\r
143# Include Boilerplate text required for building with the Standard Libraries.\r
144#\r
145##############################################################################\r
4684b66f 146!include StdLib/StdLib.inc\r
b410d6e4 147!include AppPkg/Applications/Sockets/Sockets.inc\r