]> git.proxmox.com Git - mirror_edk2.git/blobdiff - StdLib/StdLib.dsc
StdLib: Move GetPass.c out of Uefi and into PosixLib. Create LibPosix to contain...
[mirror_edk2.git] / StdLib / StdLib.dsc
index 3024b02a2042d0e9b8c08d4f11bb9cb996ad6104..8077b045f8fb65cc49c58bc03c789d96bc1115e6 100644 (file)
@@ -8,8 +8,10 @@
 #\r
 # This package contains:\r
 #       Standard C Library.\r
+#       Sockets Library.\r
+#       Posix Library.\r
 #\r
-#   Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>\r
+#   Copyright (c) 2010 - 2014, Intel Corporation. All rights reserved.<BR>\r
 #   This program and the accompanying materials\r
 #   are licensed and made available under the terms and conditions of the BSD License\r
 #   which accompanies this distribution. The full text of the license may be found at\r
   PLATFORM_VERSION               = 0.01\r
   DSC_SPECIFICATION              = 0x00010006\r
   OUTPUT_DIRECTORY               = Build/StdLib\r
-  SUPPORTED_ARCHITECTURES        = IA32|IPF|X64\r
+  SUPPORTED_ARCHITECTURES        = IA32|X64|ARM\r
   BUILD_TARGETS                  = DEBUG|RELEASE\r
   SKUID_IDENTIFIER               = DEFAULT\r
 \r
+#\r
+#  Debug output control\r
+#\r
+  DEFINE DEBUG_ENABLE_OUTPUT      = FALSE       # Set to TRUE to enable debug output\r
+  DEFINE DEBUG_PRINT_ERROR_LEVEL  = 0x80000000  # Flags to control amount of debug output\r
+  DEFINE DEBUG_PROPERTY_MASK      = 0x0f\r
+\r
 [PcdsFeatureFlag]\r
 \r
 [PcdsFixedAtBuild]\r
-  gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x0f\r
-  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000000\r
+  gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|$(DEBUG_PROPERTY_MASK)\r
+  gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|$(DEBUG_PRINT_ERROR_LEVEL)\r
 \r
 [PcdsFixedAtBuild.IPF]\r
 \r
@@ -43,6 +52,7 @@
   #\r
   UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf\r
   ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.inf\r
+  UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf\r
   #\r
   # Common Libraries\r
   #\r
   MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf\r
   UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf\r
   UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf\r
-  DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf\r
+  !if $(DEBUG_ENABLE_OUTPUT)\r
+    DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf\r
+    DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf\r
+  !else   ## DEBUG_ENABLE_OUTPUT\r
+    DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf\r
+  !endif  ## DEBUG_ENABLE_OUTPUT\r
   DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf\r
   PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf\r
   IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf\r
   ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf\r
   FileHandleLib|ShellPkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf\r
   SortLib|ShellPkg/Library/UefiSortLib/UefiSortLib.inf\r
-\r
-  #\r
-  # C Standard Libraries\r
-  #\r
-  LibC|StdLib/LibC/LibC.inf\r
-  LibStdLib|StdLib/LibC/StdLib/StdLib.inf\r
-  LibString|StdLib/LibC/String/String.inf\r
-  LibWchar|StdLib/LibC/Wchar/Wchar.inf\r
-  LibCType|StdLib/LibC/Ctype/Ctype.inf\r
-  LibTime|StdLib/LibC/Time/Time.inf\r
-  LibStdio|StdLib/LibC/Stdio/Stdio.inf\r
-  LibGdtoa|StdLib/LibC/gdtoa/gdtoa.inf\r
-  LibLocale|StdLib/LibC/Locale/Locale.inf\r
-  LibUefi|StdLib/LibC/Uefi/Uefi.inf\r
-  LibMath|StdLib/LibC/Math/Math.inf\r
-  LibSignal|StdLib/LibC/Signal/Signal.inf\r
-  LibNetUtil|StdLib/LibC/NetUtil/NetUtil.inf\r
-\r
-[LibraryClasses.IA32]\r
-  TimerLib|PerformancePkg/Library/DxeTscTimerLib/DxeTscTimerLib.inf\r
-  ## Comment out the above line and un-comment the line below for running under Nt32 emulation.\r
-#  TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf\r
-\r
-[LibraryClasses.X64]\r
-  TimerLib|PerformancePkg/Library/DxeTscTimerLib/DxeTscTimerLib.inf\r
-\r
-[LibraryClasses.IPF]\r
-  PalLib|MdePkg/Library/UefiPalLib/UefiPalLib.inf\r
-  TimerLib|MdePkg/Library/SecPeiDxeTimerLibCpu/SecPeiDxeTimerLibCpu.inf\r
+  PathLib|ShellPkg/Library/BasePathLib/BasePathLib.inf\r
 \r
 ###################################################################################################\r
 #\r
 ###################################################################################################\r
 \r
 [Components]\r
-# BaseLib and BaseMemoryLib need to be built with the /GL- switch when using the Microsoft\r
-# tool chain.  This is required so that the library functions can be resolved during\r
-# the second pass of the linker during Link-time-code-generation.\r
-###\r
-#  MdePkg/Library/BaseLib/BaseLib.inf {\r
-#    <BuildOptions>\r
-#      MSFT:*_*_*_CC_FLAGS    = /X /Zc:wchar_t /GL-\r
-#  }\r
-#\r
-#  MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf {\r
-#    <BuildOptions>\r
-#      MSFT:*_*_*_CC_FLAGS    = /X /Zc:wchar_t /GL-\r
-#  }\r
-\r
 # Standard C Libraries.\r
   StdLib/LibC/LibC.inf\r
   StdLib/LibC/StdLib/StdLib.inf\r
   StdLib/LibC/Ctype/Ctype.inf\r
   StdLib/LibC/Time/Time.inf\r
   StdLib/LibC/Stdio/Stdio.inf\r
-  StdLib/LibC/gdtoa/gdtoa.inf\r
   StdLib/LibC/Locale/Locale.inf\r
   StdLib/LibC/Uefi/Uefi.inf\r
   StdLib/LibC/Math/Math.inf\r
   StdLib/LibC/Signal/Signal.inf\r
   StdLib/LibC/NetUtil/NetUtil.inf\r
 \r
-\r
-################################################################\r
+# Device Abstractions within the Standard C Library\r
+# Applications should not directly access any functions defined in these libraries.\r
+  StdLib/LibC/gdtoa/gdtoa.inf\r
+  StdLib/LibC/Uefi/Devices/daUtility.inf\r
+  StdLib/LibC/Uefi/Devices/daConsole.inf\r
+  StdLib/LibC/Uefi/Devices/daShell.inf\r
+\r
+# Additional, non-standard, libraries\r
+  StdLib/LibC/Containers/ContainerLib.inf\r
+\r
+# Additional libraries for POSIX functionality.\r
+  StdLib/PosixLib/PosixLib.inf\r
+  StdLib/PosixLib/Err/LibErr.inf\r
+  StdLib/PosixLib/Gen/LibGen.inf\r
+  StdLib/PosixLib/Glob/LibGlob.inf\r
+  StdLib/PosixLib/Stringlist/LibStringlist.inf\r
+  StdLib/LibC/Uefi/InteractiveIO/IIO.inf\r
+\r
+#    Socket Libraries - LibC based\r
+  StdLib/BsdSocketLib/BsdSocketLib.inf\r
+  StdLib/EfiSocketLib/EfiSocketLib.inf\r
+  StdLib/UseSocketDxe/UseSocketDxe.inf\r
+\r
+##############################################################################\r
 #\r
-# See the additional comments below if you plan to run applications under the\r
-# Nt32 emulation environment.\r
+#  Include Boilerplate text required for building with the Standard Libraries.\r
 #\r
-\r
-[BuildOptions]\r
-  INTEL:*_*_*_CC_FLAGS          = /Qfreestanding\r
-   MSFT:*_*_*_CC_FLAGS          = /X /Zc:wchar_t\r
-    GCC:*_*_*_CC_FLAGS          = -ffreestanding -nostdinc -nostdlib\r
-\r
-# The Build Options, below, are only used when building the C library\r
-# to be run under the NT32 emulation.  They disable the clock() system call\r
-# which is currently incompatible with the NT32 environment.\r
-# Just uncomment the lines below and select the correct TimerLib instance, above.\r
-\r
-  # INTEL:*_*_IA32_CC_FLAGS     = /D NT32dvm\r
-  #  MSFT:*_*_IA32_CC_FLAGS     = /D NT32dvm\r
-  #   GCC:*_*_IA32_CC_FLAGS     = -DNT32dvm\r
+##############################################################################\r
+!include StdLib/StdLib.inc\r