X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;ds=sidebyside;f=AppPkg%2FAppPkg.dsc;h=a4ea6630df8c0b7ed3dc3e8125c627402e184df6;hb=c8102727edb04cac27752e19a709535312f89d98;hp=d0c7a56ee253e81c583a35999f37e60a852f5129;hpb=65126b4ebeafd738921c4c0da7f31ea1ed127d4e;p=mirror_edk2.git
diff --git a/AppPkg/AppPkg.dsc b/AppPkg/AppPkg.dsc
index d0c7a56ee2..a4ea6630df 100644
--- a/AppPkg/AppPkg.dsc
+++ b/AppPkg/AppPkg.dsc
@@ -7,7 +7,7 @@
# for important information about configuring this package for your
# environment.
#
-# Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.
+# Copyright (c) 2010 - 2018, Intel Corporation. All rights reserved.
# 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
@@ -23,17 +23,22 @@
PLATFORM_VERSION = 0.01
DSC_SPECIFICATION = 0x00010006
OUTPUT_DIRECTORY = Build/AppPkg
- SUPPORTED_ARCHITECTURES = IA32|IPF|X64
- BUILD_TARGETS = DEBUG|RELEASE
+ SUPPORTED_ARCHITECTURES = IA32|X64|ARM|AARCH64
+ BUILD_TARGETS = DEBUG|RELEASE|NOOPT
SKUID_IDENTIFIER = DEFAULT
+#
+# Debug output control
+#
+ DEFINE DEBUG_ENABLE_OUTPUT = FALSE # Set to TRUE to enable debug output
+ DEFINE DEBUG_PRINT_ERROR_LEVEL = 0x80000040 # Flags to control amount of debug output
+ DEFINE DEBUG_PROPERTY_MASK = 0
+
[PcdsFeatureFlag]
[PcdsFixedAtBuild]
- gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x0f
- gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000000
-
-[PcdsFixedAtBuild.IPF]
+ gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|$(DEBUG_PROPERTY_MASK)
+ gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|$(DEBUG_PRINT_ERROR_LEVEL)
[LibraryClasses]
#
@@ -41,6 +46,7 @@
#
UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf
+ UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
#
# Common Libraries
#
@@ -52,7 +58,13 @@
MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
- DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
+ !if $(DEBUG_ENABLE_OUTPUT)
+ DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf
+ DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
+ !else ## DEBUG_ENABLE_OUTPUT
+ DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
+ !endif ## DEBUG_ENABLE_OUTPUT
+
DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
@@ -64,44 +76,12 @@
UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
+ FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
+ SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf
+
ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
- FileHandleLib|ShellPkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
- SortLib|ShellPkg/Library/UefiSortLib/UefiSortLib.inf
- #
- # C Standard Libraries
- #
- LibC|StdLib/LibC/LibC.inf
- LibStdLib|StdLib/LibC/StdLib/StdLib.inf
- LibString|StdLib/LibC/String/String.inf
- LibWchar|StdLib/LibC/Wchar/Wchar.inf
- LibCType|StdLib/LibC/Ctype/Ctype.inf
- LibTime|StdLib/LibC/Time/Time.inf
- LibStdio|StdLib/LibC/Stdio/Stdio.inf
- LibGdtoa|StdLib/LibC/gdtoa/gdtoa.inf
- LibLocale|StdLib/LibC/Locale/Locale.inf
- LibUefi|StdLib/LibC/Uefi/Uefi.inf
- LibMath|StdLib/LibC/Math/Math.inf
- LibSignal|StdLib/LibC/Signal/Signal.inf
- LibNetUtil|StdLib/LibC/NetUtil/NetUtil.inf
-
- # Libraries for device abstractions within the Standard C Library
- # Applications should not directly access any functions defined in these libraries.
- DevUtility|StdLib/LibC/Uefi/Devices/daUtility.inf
- DevConsole|StdLib/LibC/Uefi/Devices/daConsole.inf
- DevShell|StdLib/LibC/Uefi/Devices/daShell.inf
-
-[LibraryClasses.IA32]
- TimerLib|PerformancePkg/Library/DxeTscTimerLib/DxeTscTimerLib.inf
- ## Comment out the above line and un-comment the line below for running under Nt32 emulation.
-# TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
-
-[LibraryClasses.X64]
- TimerLib|PerformancePkg/Library/DxeTscTimerLib/DxeTscTimerLib.inf
-
-[LibraryClasses.IPF]
- PalLib|MdePkg/Library/UefiPalLib/UefiPalLib.inf
- TimerLib|MdePkg/Library/SecPeiDxeTimerLibCpu/SecPeiDxeTimerLibCpu.inf
+ CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf
###################################################################################################
#
@@ -123,41 +103,48 @@
###################################################################################################
[Components]
-# BaseLib and BaseMemoryLib need to be built with the /GL- switch when using the Microsoft
-# tool chain. This is required so that the library functions can be resolved during
-# the second pass of the linker during Link-time-code-generation.
-###
- MdePkg/Library/BaseLib/BaseLib.inf {
-
- MSFT:*_*_*_CC_FLAGS = /X /Zc:wchar_t /GL-
- }
-
- MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf {
-
- MSFT:*_*_*_CC_FLAGS = /X /Zc:wchar_t /GL-
- }
#### Sample Applications.
AppPkg/Applications/Hello/Hello.inf # No LibC includes or functions.
AppPkg/Applications/Main/Main.inf # Simple invocation. No other LibC functions.
- AppPkg/Applications/Enquire/Enquire.inf
+ AppPkg/Applications/Enquire/Enquire.inf #
+ AppPkg/Applications/ArithChk/ArithChk.inf #
+
+#### A simple fuzzer for OrderedCollectionLib, in particular for
+#### BaseOrderedCollectionRedBlackTreeLib.
+ AppPkg/Applications/OrderedCollectionTest/OrderedCollectionTest.inf {
+
+ OrderedCollectionLib|MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.inf
+ DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf
+ DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
+
+ gEfiMdePkgTokenSpaceGuid.PcdValidateOrderedCollection|TRUE
+
+ gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2F
+ gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80400040
+ }
-################################################################
-#
-# See the additional comments below if you plan to run applications under the
-# Nt32 emulation environment.
-#
+#### Un-comment the following line to build Python 2.7.2.
+# AppPkg/Applications/Python/PythonCore.inf
+
+#### Un-comment the following line to build Python 2.7.10.
+# AppPkg/Applications/Python/Python-2.7.10/Python2710.inf
-[BuildOptions]
- INTEL:*_*_*_CC_FLAGS = /Qfreestanding
- MSFT:*_*_*_CC_FLAGS = /X /Zc:wchar_t
- GCC:*_*_*_CC_FLAGS = -ffreestanding -nostdinc -nostdlib
+#### Un-comment the following line to build Lua.
+# AppPkg/Applications/Lua/Lua.inf
-# The Build Options, below, are only used when building the C library
-# to be run under the NT32 emulation. They disable the clock() system call
-# which is currently incompatible with the NT32 environment.
-# Just uncomment the lines below and select the correct TimerLib instance, above.
- # INTEL:*_*_IA32_CC_FLAGS = /D NT32dvm
- # MSFT:*_*_IA32_CC_FLAGS = /D NT32dvm
- # GCC:*_*_IA32_CC_FLAGS = -DNT32dvm
+##############################################################################
+#
+# Specify whether we are running in an emulation environment, or not.
+# Define EMULATE if we are, else keep the DEFINE commented out.
+#
+# DEFINE EMULATE = 1
+
+##############################################################################
+#
+# Include Boilerplate text required for building with the Standard Libraries.
+#
+##############################################################################
+!include StdLib/StdLib.inc
+!include AppPkg/Applications/Sockets/Sockets.inc