From 9071550e8697ed9df3d24b369bd30e3f0e190d1f Mon Sep 17 00:00:00 2001 From: klu2 Date: Fri, 18 Apr 2008 03:09:54 +0000 Subject: Add missing module for duet package. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@5088 6f19259b-4bc3-4df7-8a09-765794883524 --- DuetPkg/EfiLdr/X64/EfiLdr.inf | 27 ++++++ DuetPkg/EfiLdr/X64/Makefile | 186 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 213 insertions(+) create mode 100644 DuetPkg/EfiLdr/X64/EfiLdr.inf create mode 100644 DuetPkg/EfiLdr/X64/Makefile (limited to 'DuetPkg/EfiLdr/X64') diff --git a/DuetPkg/EfiLdr/X64/EfiLdr.inf b/DuetPkg/EfiLdr/X64/EfiLdr.inf new file mode 100644 index 0000000000..ba87791958 --- /dev/null +++ b/DuetPkg/EfiLdr/X64/EfiLdr.inf @@ -0,0 +1,27 @@ +#/*++ +# +# Copyright (c) 2006, 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 +# 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. +# +# Module Name: +# EfiLdr.inf +# +# Abstract: +# +#--*/ + +[defines] +BASE_NAME = EfiLoader +COMPONENT_TYPE = FILE +BUILD_TYPE = CUSTOM_MAKEFILE +FILE_GUID = 7E374E25-8E01-4FEE-87F2-390C23C606CD + +[sources.common] + +[nmake.common] diff --git a/DuetPkg/EfiLdr/X64/Makefile b/DuetPkg/EfiLdr/X64/Makefile new file mode 100644 index 0000000000..dc31b137d7 --- /dev/null +++ b/DuetPkg/EfiLdr/X64/Makefile @@ -0,0 +1,186 @@ +#/*++ +# +# Copyright (c) 2006 - 2007, 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 +# 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. +# +# Module Name: +# Makefile +# +# Abstract: +# +#--*/ + +# +# Globals +# +BIN_DIR = $(BUILD_DIR)\$(PROCESSOR) +TOOLCHAIN = TOOLCHAIN_$(PROCESSOR) + +TOOLBIN_DIR = $(BUILD_DIR)\Tools + +# +# Include CommonTools.env enviroment +# + +!INCLUDE $(BUILD_DIR)\PlatformTools.env + +# +# Include paths +# +INC = -I $(SOURCE_DIR)\. -I $(SOURCE_DIR)\.\$(PROCESSOR) $(INC) +INC = -I $(EDK_SOURCE)\Foundation\ \ + -I $(EDK_SOURCE)\Foundation\Include \ + -I $(EDK_SOURCE)\Foundation\Include\$(PROCESSOR) \ + -I $(EDK_SOURCE)\Foundation\Efi \ + -I $(EDK_SOURCE)\Foundation\Efi\Include \ + -I $(EDK_SOURCE)\Foundation\Framework \ + -I $(EDK_SOURCE)\Foundation\Framework\Include \ + -I $(EDK_SOURCE)\Foundation\Library\Dxe\Include \ + -I $(EDK_SOURCE)\Foundation\Library\Pei\Include \ + -I $(EDK_SOURCE)\Foundation\Include\Pei \ + $(INC) + +LDRDEP = $(BUILD_DIR)\..\Loader\EfiLdr\Efildr.c \ + $(BUILD_DIR)\..\Loader\EfiLdr\EfiLdrHandoff.h \ + $(BUILD_DIR)\..\Loader\EfiLdr\EfiLoader.c \ + $(BUILD_DIR)\..\Loader\EfiLdr\Debug.c \ + $(BUILD_DIR)\..\Loader\EfiLdr\Debug.h \ + $(BUILD_DIR)\..\Loader\EfiLdr\PeLoader.c \ + $(BUILD_DIR)\..\Loader\EfiLdr\PeLoader.h \ + $(BUILD_DIR)\..\Loader\EfiLdr\Support.c \ + $(BUILD_DIR)\..\Loader\EfiLdr\Support.h + +all : \ + $(BIN_DIR)\BootSect.com \ + $(BIN_DIR)\Bs16.com \ + $(BIN_DIR)\Bs32.com \ + $(BIN_DIR)\Gpt.com \ + $(BIN_DIR)\Mbr.com \ + $(BIN_DIR)\Start64.com \ + $(BIN_DIR)\St16_64.com \ + $(BIN_DIR)\St32_64.com \ + $(BIN_DIR)\Efi64.com2 \ + $(BIN_DIR)\Efildr.efi \ + + +loader : \ + Fv\Efildr \ + Fv\Efildr16 \ + Fv\Efildr20 \ + + +# +# Generate loader object +# +$(BIN_DIR)\BootSect.obj: $(BUILD_DIR)\..\Loader\BootSector\BootSect.asm + $(ASM16) /c /omf /Fo$(BIN_DIR)\BootSect.obj $(BUILD_DIR)\..\Loader\BootSector\BootSect.asm + +$(BIN_DIR)\BootSect.com: $(BIN_DIR)\BootSect.obj + cd $(BIN_DIR) + $(ASMLINK16) /tiny BootSect.obj,BootSect.com,BootSect.map,,, + +$(BIN_DIR)\Bs16.obj: $(BUILD_DIR)\..\Loader\BootSector\Bs16.asm + $(ASM16) /c /omf /Fo$(BIN_DIR)\Bs16.obj $(BUILD_DIR)\..\Loader\BootSector\Bs16.asm + +$(BIN_DIR)\Bs16.com: $(BIN_DIR)\Bs16.obj + cd $(BIN_DIR) + $(ASMLINK16) /tiny Bs16.obj,Bs16.com,Bs16.map,,, + +$(BIN_DIR)\Bs32.obj: $(BUILD_DIR)\..\Loader\BootSector\Bs32.asm + $(ASM16) /c /omf /Fo$(BIN_DIR)\Bs32.obj $(BUILD_DIR)\..\Loader\BootSector\Bs32.asm + +$(BIN_DIR)\Bs32.com: $(BIN_DIR)\Bs32.obj + cd $(BIN_DIR) + $(ASMLINK16) /tiny Bs32.obj,Bs32.com,Bs32.map,,, + +$(BIN_DIR)\Gpt.obj: $(BUILD_DIR)\..\Loader\BootSector\Gpt.asm + $(ASM16) /c /omf /Fo$(BIN_DIR)\Gpt.obj $(BUILD_DIR)\..\Loader\BootSector\Gpt.asm + +$(BIN_DIR)\Gpt.com: $(BIN_DIR)\Gpt.obj + cd $(BIN_DIR) + $(ASMLINK16) /tiny Gpt.obj,Gpt.com,Gpt.map,,, + +$(BIN_DIR)\Mbr.obj: $(BUILD_DIR)\..\Loader\BootSector\Mbr.asm + $(ASM16) /c /omf /Fo$(BIN_DIR)\Mbr.obj $(BUILD_DIR)\..\Loader\BootSector\Mbr.asm + +$(BIN_DIR)\Mbr.com: $(BIN_DIR)\Mbr.obj + cd $(BIN_DIR) + $(ASMLINK16) /tiny Mbr.obj,Mbr.com,Mbr.map,,, + +$(BIN_DIR)\Start64.obj: $(BUILD_DIR)\..\Loader\BootSector\Start64.asm + $(ASM16) /c /omf /Fo$(BIN_DIR)\Start64.obj $(BUILD_DIR)\..\Loader\BootSector\Start64.asm + +$(BIN_DIR)\Start64.com: $(BIN_DIR)\Start64.obj + cd $(BIN_DIR) + $(ASMLINK16) /tiny Start64.obj,Start64.com,Start64.map,,, + +$(BIN_DIR)\St16_64.obj: $(BUILD_DIR)\..\Loader\BootSector\St16_64.asm + $(ASM16) /c /omf /Fo$(BIN_DIR)\St16_64.obj $(BUILD_DIR)\..\Loader\BootSector\St16_64.asm + +$(BIN_DIR)\St16_64.com: $(BIN_DIR)\St16_64.obj + cd $(BIN_DIR) + $(ASMLINK16) /tiny St16_64.obj,St16_64.com,St16_64.map,,, + +$(BIN_DIR)\St32_64.obj: $(BUILD_DIR)\..\Loader\BootSector\St32_64.asm + $(ASM16) /c /omf /Fo$(BIN_DIR)\St32_64.obj $(BUILD_DIR)\..\Loader\BootSector\St32_64.asm + +$(BIN_DIR)\St32_64.com: $(BIN_DIR)\St32_64.obj + cd $(BIN_DIR) + $(ASMLINK16) /tiny St32_64.obj,St32_64.com,St32_64.map,,, + +$(BIN_DIR)\Efi64.obj: $(BUILD_DIR)\..\Loader\BootSector\Efi64.asm + $(ASM16) /c /omf /Fo$(BIN_DIR)\Efi64.obj $(BUILD_DIR)\..\Loader\BootSector\Efi64.asm + +$(BIN_DIR)\Efi64.com: $(BIN_DIR)\Efi64.obj + cd $(BIN_DIR) + $(ASMLINK16) /tiny Efi64.obj,Efi64.com,Efi64.map,,, + +$(BIN_DIR)\Efi64.com2: $(BIN_DIR)\Efi64.com + $(TOOLBIN_DIR)\Splitfile $(BIN_DIR)\Efi64.com 135168 + +$(BIN_DIR)\Efildr.obj: $(LDRDEP) + $(CC) $(C_FLAGS) $(BUILD_DIR)\..\Loader\EfiLdr\Efildr.c + +$(BIN_DIR)\Efildr.dll: $(BIN_DIR)\Efildr.obj + $(LINK) /nologo /MACHINE:AMD64 /SUBSYSTEM:CONSOLE /NODEFAULTLIB /INCREMENTAL:NO \ + /MAP /FIXED /BASE:0x00010000 /OPT:REF /ALIGN:32 /MERGE:.data=.text \ + /MERGE:.rdata=.text /DRIVER /ENTRY:EfiLoader $(BIN_DIR)\Efildr.obj \ + $(BIN_DIR)\CompilerStub.lib $(BIN_DIR)\EfiCommonLib.lib $(BIN_DIR)\PeiLib.lib \ + /OUT:$(BIN_DIR)\Efildr.dll /IGNORE:4078,4096 + +$(BIN_DIR)\Efildr.efi: $(BIN_DIR)\Efildr.dll + $(TOOLBIN_DIR)\FwImage app $(BIN_DIR)\Efildr.dll $(BIN_DIR)\Efildr.efi + +# +# Generate loader binary +# +Fv\EfiMain.z : Fv\EfiMain.fv + $(TOOLBIN_DIR)\Eficompress -tTiano Fv\EfiMain.fv Fv\EfiMain.z + +Fv\DxeMain.z : $(BIN_DIR)\DxeMain.efi + $(TOOLBIN_DIR)\Eficompress -tTiano $(BIN_DIR)\DxeMain.efi Fv\DxeMain.z + +Fv\DxeIpl.z : $(BIN_DIR)\DxeIpl.efi + $(TOOLBIN_DIR)\Eficompress -tTiano $(BIN_DIR)\DxeIpl.efi Fv\DxeIpl.z + +Fv\Efildr64: $(BIN_DIR)\Efildr.efi Fv\DxeIpl.z Fv\DxeMain.z Fv\EfiMain.z + $(TOOLBIN_DIR)\Efildrimage Fv\Efildr64 $(BIN_DIR)\Efildr.efi Fv\DxeIpl.z Fv\DxeMain.z Fv\EfiMain.z + +Fv\Efildr: $(BIN_DIR)\Start64.com $(BIN_DIR)\Efi64.com2 Fv\Efildr64 + copy /b $(BIN_DIR)\Start64.com+$(BIN_DIR)\Efi64.com2+Fv\Efildr64 Fv\EfildrPure + $(TOOLBIN_DIR)\GenPage Fv\EfildrPure Fv\Efildr + +Fv\Efildr16: $(BIN_DIR)\St16_64.com $(BIN_DIR)\Efi64.com2 Fv\Efildr64 + copy /b $(BIN_DIR)\St16_64.com+$(BIN_DIR)\Efi64.com2+Fv\Efildr64 Fv\Efildr16Pure + $(TOOLBIN_DIR)\GenPage Fv\Efildr16Pure Fv\Efildr16 + +Fv\Efildr20: $(BIN_DIR)\St32_64.com $(BIN_DIR)\Efi64.com2 Fv\Efildr64 + copy /b $(BIN_DIR)\St32_64.com+$(BIN_DIR)\Efi64.com2+Fv\Efildr64 Fv\Efildr20Pure + $(TOOLBIN_DIR)\GenPage Fv\Efildr20Pure Fv\Efildr20 + -- cgit v1.2.3