Move libraries from ShellPkg into MdeModulePkg and MdePkg.
The following libraries are being migrated out of ShellPkg in order to make
their functionality more widely available.
  • PathLib:        Incorporate into MdePkg/Library/BaseLib
  • FileHandleLib:  MdePkg/Library/UefiFileHandleLib
  • BaseSortLib:    MdeModulePkg/Library/BaseSortLib
  • UefiSortLib:    MdeModulePkg/Library/UefiSortLib
Diffs showing file changes are in the attached file, LibMigration.patch.
A description of the changes follows:
  • Move ShellPkg/Include/Library/FileHandleLib.h to MdePkg/Include/Library/FileHandleLib.h
  • Move ShellPkg/Include/Library/SortLib.h to MdeModulePkg/Include/Library/SortLib.h
  • Move ShellPkg/Library/BaseSortLib to MdeModulePkg/Library/BaseSortLib
  • Move ShellPkg/Library/UefiSortLib to MdeModulePkg/Library/UefiSortLib
  • Move ShellPkg/Library/BasePathLib/BasePathLib.c to MdePkg/Library/BaseLib/FilePaths.c
  • Merge ShellPkg/Include/Library/PathLib.h into MdePkg/Include/Library/BaseLib.h
  • Delete  ShellPkg/Library/BasePathLib; Includes BasePathLib.c and BasePathLib.inf
  • NetworkPkg/NetworkPkg.dsc
  • PerformancePkg.dsc
  • OvmfPkg/OvmfPkgX64.dsc
  • OvmfPkg/OvmfPkgIa32X64.dsc
  • OvmfPkg/OvmfPkgIa32.dsc
    o Update SortLib and FileHandleLib library classes to point to the new library locations.
    o Remove PathLib library class and make sure that BaseLib is described.
  • MdeModulePkg/MdeModulePkg.dec
    o Add SortLib library class
  • MdePkg/MdePkg.dec
    o Add FileHandleLib library class
    o Add PcdUefiFileHandleLibPrintBufferSize PCD
  • MdePkg/Library/BaseLib/BaseLib.inf
    o Add FilePaths.c to [Sources]
  • MdePkg/Include/Library/BaseLib.h
    o Update file description to include "file path functions"
  • ShellPkg/ShellPkg.dsc
    o Change PACKAGE_GUID to { C1014BB7-4092-43D4-984F-0738EB424DBF }
    o Update PACKAGE_VERSION to 1.0
    o Update SortLib and FileHandleLib library classes to point to the new library locations.
    o Remove PathLib library class and make sure that BaseLib is described.
    o Remove ShellPkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf from [Components]
  • ShellPkg/ShellPkg.dec
    o Update PLATFORM_VERSION to 1.0
    o Remove declarations of the FileHandleLib, SortLib, and PathLib Library Classes
    o Update comment for the PcdShellPrintBufferSize PCD.
  • ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
  • ShellPkg/Application/Shell/Shell.inf
    o Remove PathLib from [LibraryClasses]
  • ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.h
  • ShellPkg/Application/Shell/Shell.h
    o Remove #include <Library/PathLib.h>
  • ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
    o Add PathLib to [LibraryClasses]
  • ShellPkg/Library/UefiShellLevel1CommandsLib/If.c
    o Remove #include <Library/PathLib.h>
  • ShellPkg/Application/ShellSortTestApp/ShellSortTestApp.inf
    o Add MdeModulePkg/MdeModulePkg.dec to [Packages]
  • MdeModulePkg/Library/BaseSortLib/BaseSortLib.inf
  • MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf
    o Replace ShellPkg.dec with MdeModulePkg.dec in [Packages]
  • MdeModulePkg/Library/UefiSortLib/UefiSortLib.c
    o Remove #include <ShellBase.h>
    o Define USL_FREE_NON_NULL() to replace SHELL_FREE_NON_NULL()
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Daryl McDaniel <daryl.mcdaniel@intel.com>
Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16601 6f19259b-4bc3-4df7-8a09-765794883524
		
	
		
			
				
	
	
		
			112 lines
		
	
	
		
			5.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			112 lines
		
	
	
		
			5.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| ## @file
 | |
| # UEFI 2.4 Network Module Package for All Architectures
 | |
| #
 | |
| # (C) Copyright 2014 Hewlett-Packard Development Company, L.P.<BR>
 | |
| # Copyright (c) 2009 - 2014, Intel Corporation. All rights reserved.<BR>
 | |
| #
 | |
| #    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
 | |
| #    http://opensource.org/licenses/bsd-license.php
 | |
| #
 | |
| #    THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
 | |
| #    WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 | |
| #
 | |
| ##
 | |
| 
 | |
| [Defines]
 | |
|   PLATFORM_NAME                  = NetworkPkg
 | |
|   PLATFORM_GUID                  = 3FD34E9B-E90C-44e1-B510-1F632A509F10
 | |
|   PLATFORM_VERSION               = 0.95
 | |
|   DSC_SPECIFICATION              = 0x00010005
 | |
|   OUTPUT_DIRECTORY               = Build/NetworkPkg
 | |
|   SUPPORTED_ARCHITECTURES        = IA32|IPF|X64|EBC|ARM|AARCH64
 | |
|   BUILD_TARGETS                  = DEBUG|RELEASE
 | |
|   SKUID_IDENTIFIER               = DEFAULT
 | |
| 
 | |
| [LibraryClasses]
 | |
|   BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
 | |
|   BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
 | |
|   DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
 | |
|   HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
 | |
|   MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
 | |
|   PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
 | |
|   PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
 | |
|   UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
 | |
|   UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
 | |
|   UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
 | |
|   UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
 | |
|   UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
 | |
|   UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
 | |
| 
 | |
|   DpcLib|MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf
 | |
|   NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf
 | |
|   IpIoLib|MdeModulePkg/Library/DxeIpIoLib/DxeIpIoLib.inf
 | |
|   UdpIoLib|MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf
 | |
|   TcpIoLib|MdeModulePkg/Library/DxeTcpIoLib/DxeTcpIoLib.inf
 | |
|   BaseCryptLib|CryptoPkg/Library/BaseCryptLib/BaseCryptLib.inf
 | |
|   OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf
 | |
|   IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf
 | |
|   DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf  
 | |
|   FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
 | |
|   SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf
 | |
| 
 | |
| [LibraryClasses.common.UEFI_DRIVER]
 | |
|   DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf
 | |
| 
 | |
| [LibraryClasses.common.UEFI_APPLICATION]
 | |
|   DebugLib|MdePkg/Library/UefiDebugLibStdErr/UefiDebugLibStdErr.inf
 | |
|   ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
 | |
| 
 | |
| [LibraryClasses.ARM, LibraryClasses.AARCH64]
 | |
|   #
 | |
|   # It is not possible to prevent ARM compiler calls to generic intrinsic functions.
 | |
|   # This library provides the instrinsic functions generated by a given compiler.
 | |
|   # [LibraryClasses.ARM] and NULL mean link this library into all ARM images.
 | |
|   #
 | |
|   NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
 | |
| 
 | |
| [PcdsFeatureFlag]
 | |
|   gEfiMdePkgTokenSpaceGuid.PcdComponentName2Disable|TRUE
 | |
|   gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnostics2Disable|TRUE
 | |
| 
 | |
| [PcdsFixedAtBuild]
 | |
|   gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2f
 | |
|   gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000000
 | |
| 
 | |
| ###################################################################################################
 | |
| #
 | |
| # Components Section - list of the modules and components that will be processed by compilation
 | |
| #                      tools and the EDK II tools to generate PE32/PE32+/Coff image files.
 | |
| #
 | |
| # Note: The EDK II DSC file is not used to specify how compiled binary images get placed
 | |
| #       into firmware volume images. This section is just a list of modules to compile from
 | |
| #       source into UEFI-compliant binaries.
 | |
| #       It is the FDF file that contains information on combining binary files into firmware
 | |
| #       volume images, whose concept is beyond UEFI and is described in PI specification.
 | |
| #       Binary modules do not need to be listed in this section, as they should be
 | |
| #       specified in the FDF file. For example: Shell binary (Shell_Full.efi), FAT binary (Fat.efi),
 | |
| #       Logo (Logo.bmp), and etc.
 | |
| #       There may also be modules listed in this section that are not required in the FDF file,
 | |
| #       When a module listed here is excluded from FDF file, then UEFI-compliant binary will be
 | |
| #       generated for it, but the binary will not be put into any firmware volume.
 | |
| #
 | |
| ###################################################################################################
 | |
| 
 | |
| [Components]
 | |
|   NetworkPkg/Ip6Dxe/Ip6Dxe.inf
 | |
|   NetworkPkg/TcpDxe/TcpDxe.inf
 | |
|   NetworkPkg/Udp6Dxe/Udp6Dxe.inf
 | |
|   NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf
 | |
|   NetworkPkg/Mtftp6Dxe/Mtftp6Dxe.inf
 | |
| 
 | |
|   NetworkPkg/Application/IfConfig6/IfConfig6.inf
 | |
|   NetworkPkg/Application/IpsecConfig/IpSecConfig.inf
 | |
|   NetworkPkg/Application/VConfig/VConfig.inf
 | |
| 
 | |
| [Components.IA32, Components.X64, Components.IPF]
 | |
|   NetworkPkg/IpSecDxe/IpSecDxe.inf
 | |
|   NetworkPkg/IScsiDxe/IScsiDxe.inf
 | |
|   NetworkPkg/UefiPxeBcDxe/UefiPxeBcDxe.inf
 | |
|   NetworkPkg/Application/Ping6/Ping6.inf
 |