X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=AppPkg%2FAppPkg.dsc;h=a4ea6630df8c0b7ed3dc3e8125c627402e184df6;hp=6e2fa720b556d22ed371915a7339b7c53a8f0263;hb=c8102727edb04cac27752e19a709535312f89d98;hpb=006fecd5a177b4b7b6b36fab6690bf2b2fa11829 diff --git a/AppPkg/AppPkg.dsc b/AppPkg/AppPkg.dsc index 6e2fa720b5..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,42 +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/Python/PythonCore.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