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