From 72a44be9ab9b9c62e090ece90ff4f7e402a9e309 Mon Sep 17 00:00:00 2001 From: jljusten Date: Sun, 15 May 2011 17:23:33 +0000 Subject: InOsEmuPkg: Use EdkShellBinPkg by default The following can be defined on the build command line: * BUILD_NEW_SHELL: Build & run the UefiShell * USE_NEW_SHELL: Use the pre-build UefiShell binary * BUILD_OLD_SHELL: Use the GCC shell binary previously built For the FAT driver: * BUILD_FAT: Build the fat driver from source Signed-off-by: jljusten git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11652 6f19259b-4bc3-4df7-8a09-765794883524 --- InOsEmuPkg/Unix/UnixX64.dsc | 36 ++++++++++++++++++++++++++++++++++-- InOsEmuPkg/Unix/UnixX64.fdf | 17 ++++++++++++++--- 2 files changed, 48 insertions(+), 5 deletions(-) diff --git a/InOsEmuPkg/Unix/UnixX64.dsc b/InOsEmuPkg/Unix/UnixX64.dsc index 1c2d468e65..92887dd841 100644 --- a/InOsEmuPkg/Unix/UnixX64.dsc +++ b/InOsEmuPkg/Unix/UnixX64.dsc @@ -196,7 +196,15 @@ gInOsEmuPkgTokenSpaceGuid.PcdEmuFirmwareVolume|L"../FV/FV_RECOVERY.fd" gInOsEmuPkgTokenSpaceGuid.PcdEmuMemorySizeForSecMain|L"64!64" - + +!if $(BUILD_NEW_SHELL) + gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile|{ 0x83, 0xA5, 0x04, 0x7C, 0x3E, 0x9E, 0x1C, 0x4F, 0xAD, 0x65, 0xE0, 0x52, 0x68, 0xD0, 0xB4, 0xD1 } +!else +!if $(USE_NEW_SHELL) + gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile|{ 0x83, 0xA5, 0x04, 0x7C, 0x3E, 0x9E, 0x1C, 0x4F, 0xAD, 0x65, 0xE0, 0x52, 0x68, 0xD0, 0xB4, 0xD1 } +!endif +!endif + #define BOOT_WITH_FULL_CONFIGURATION 0x00 #define BOOT_WITH_MINIMAL_CONFIGURATION 0x01 #define BOOT_ASSUMING_NO_CONFIGURATION_CHANGES 0x02 @@ -385,7 +393,31 @@ PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf } -!if $(COMPILE_BINS) +!if $(BUILD_FAT) FatPkg/EnhancedFatDxe/Fat.inf !endif + +!if $(BUILD_NEW_SHELL) + ShellPkg/Application/Shell/Shell.inf { + + ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf + NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf + NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf + NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf + NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf + NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf + NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf + NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf + HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf + FileHandleLib|ShellPkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf + ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf + SortLib|ShellPkg/Library/UefiSortLib/UefiSortLib.inf + PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf + + gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF + gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE + gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|8000 + } +!endif + !endif diff --git a/InOsEmuPkg/Unix/UnixX64.fdf b/InOsEmuPkg/Unix/UnixX64.fdf index 4b0e683ea0..0ba58a39d0 100644 --- a/InOsEmuPkg/Unix/UnixX64.fdf +++ b/InOsEmuPkg/Unix/UnixX64.fdf @@ -1,7 +1,7 @@ ## @file # This is Unix FDF file with UEFI HII features enabled # -# Copyright (c) 2008 - 2010, Intel Corporation. All rights reserved.
+# Copyright (c) 2008 - 2011, Intel Corporation. All rights reserved.
# Portions copyright (c) 2009 - 2011, Apple Inc. All rights reserved.
# # This program and the accompanying materials @@ -249,18 +249,29 @@ INF MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf INF MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf -!if $(COMPILE_BINS) +!if $(BUILD_FAT) INF FatPkg/EnhancedFatDxe/Fat.inf !else # Used checked in Visual Studio binaries INF RuleOverride = BINARY USE = X64 FatBinPkg/EnhancedFatDxe/Fat.inf !endif +!if $(BUILD_NEW_SHELL) +INF ShellPkg/Application/Shell/Shell.inf +!else +!if $(USE_NEW_SHELL) +INF ShellBinPkg/UefiShell/UefiShell.inf +!else FILE APPLICATION = PCD(gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile) { -# SECTION PE32 = ShellBinPkg/UefiShell/X64/Shell.efi +!if $(BUILD_OLD_SHELL) SECTION PE32 = Build/GccShellPkg/DEBUG_XCLANG/X64/ShellFull.efi +!else + SECTION PE32 = EdkShellBinPkg/FullShell/X64/Shell_Full.efi +!endif SECTION UI = "Shell" } +!endif +!endif FILE FREEFORM = PCD(gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdLogoFile) { SECTION RAW = MdeModulePkg/Logo/Logo.bmp -- cgit v1.2.3