| ## @file | |
| # Entry Point of Emu Emulator | |
| # | |
| # Main executable file of Unix Emulator that loads PEI core after initialization finished. | |
| # Copyright (c) 2008 - 2011, Intel Corporation. All rights reserved.<BR> | |
| # Portions copyright (c) 2008 - 2011, Apple Inc. 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] | |
| INF_VERSION = 0x00010005 | |
| BASE_NAME = Host | |
| FILE_GUID = 8863C0AD-7724-C84B-88E5-A33B116D1485 | |
| MODULE_TYPE = USER_DEFINED | |
| VERSION_STRING = 1.0 | |
| # | |
| # The following information is for reference only and not required by the build tools. | |
| # | |
| # VALID_ARCHITECTURES = IA32 X64 IPF EBC | |
| # | |
| [Sources] | |
| Host.c | |
| EmuThunk.c | |
| X11GraphicsWindow.c | |
| Pthreads.c | |
| PosixFileSystem.c | |
| BlockIo.c | |
| LinuxPacketFilter.c | |
| BerkeleyPacketFilter.c | |
| MemoryAllocationLib.c | |
| [Sources.X64] | |
| X64/Gasket.S # convert between Emu x86_64 ABI and EFI X64 ABI | |
| X64/SwitchStack.S | |
| [Sources.IA32] | |
| Ia32/Gasket.S # enforce 16-byte stack alignment for Mac OS X | |
| Ia32/SwitchStack.c | |
| [Packages] | |
| MdePkg/MdePkg.dec | |
| MdeModulePkg/MdeModulePkg.dec | |
| EmulatorPkg/EmulatorPkg.dec | |
| [LibraryClasses] | |
| DebugLib | |
| PcdLib | |
| PrintLib | |
| BaseMemoryLib | |
| BaseLib | |
| PeCoffLib | |
| ThunkPpiList | |
| ThunkProtocolList | |
| PpiListLib | |
| PeiServicesLib | |
| PeCoffGetEntryPointLib | |
| [Ppis] | |
| gEfiPeiStatusCodePpiGuid # PPI ALWAYS_PRODUCED | |
| gEmuThunkPpiGuid | |
| [Protocols] | |
| gEmuIoThunkProtocolGuid | |
| gEmuIoThunkProtocolGuid | |
| gEmuGraphicsWindowProtocolGuid | |
| gEmuThreadThunkProtocolGuid | |
| gEmuBlockIoProtocolGuid | |
| gEmuSnpProtocolGuid | |
| gEfiSimpleFileSystemProtocolGuid | |
| [Guids] | |
| gEfiFileSystemVolumeLabelInfoIdGuid # SOMETIMES_CONSUMED | |
| gEfiFileInfoGuid # SOMETIMES_CONSUMED | |
| gEfiFileSystemInfoGuid # SOMETIMES_CONSUMED | |
| [Pcd] | |
| gEmulatorPkgTokenSpaceGuid.PcdEmuBootMode | |
| gEmulatorPkgTokenSpaceGuid.PcdEmuFirmwareVolume | |
| gEmulatorPkgTokenSpaceGuid.PcdEmuMemorySize | |
| gEmulatorPkgTokenSpaceGuid.PcdEmuFdBaseAddress | |
| gEmulatorPkgTokenSpaceGuid.PcdEmuFirmwareFdSize | |
| gEmulatorPkgTokenSpaceGuid.PcdEmuFirmwareBlockSize | |
| gEmulatorPkgTokenSpaceGuid.PcdEmuApCount | |
| gEmulatorPkgTokenSpaceGuid.PcdEmuVirtualDisk | |
| gEmulatorPkgTokenSpaceGuid.PcdEmuGop|L"GOP Window" | |
| gEmulatorPkgTokenSpaceGuid.PcdEmuFileSystem | |
| gEmulatorPkgTokenSpaceGuid.PcdEmuSerialPort | |
| gEmulatorPkgTokenSpaceGuid.PcdEmuNetworkInterface | |
| gEmulatorPkgTokenSpaceGuid.PcdNetworkPacketFilterSize | |
| gEmulatorPkgTokenSpaceGuid.PcdEmuFlashFvRecoveryBase | |
| gEmulatorPkgTokenSpaceGuid.PcdEmuFlashFvRecoverySize | |
| gEmulatorPkgTokenSpaceGuid.PcdEmuFlashNvStorageVariableBase | |
| gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize | |
| gEmulatorPkgTokenSpaceGuid.PcdEmuFlashNvStorageEventLogBase | |
| gEmulatorPkgTokenSpaceGuid.PcdEmuFlashNvStorageEventLogSize | |
| gEmulatorPkgTokenSpaceGuid.PcdEmuFlashNvStorageFtwWorkingBase | |
| gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize | |
| gEmulatorPkgTokenSpaceGuid.PcdEmuFlashNvStorageFtwSpareBase | |
| gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize | |
| gEmulatorPkgTokenSpaceGuid.PcdPeiServicesTablePage | |
| [FeaturePcd] | |
| gEmulatorPkgTokenSpaceGuid.PcdEmulatorLazyLoadSymbols | |
| [BuildOptions] | |
| GCC:*_*_IA32_DLINK_FLAGS == -o $(BIN_DIR)/Host -m32 -L/usr/X11R6/lib | |
| GCC:*_*_IA32_CC_FLAGS == -m32 -g -fshort-wchar -fno-strict-aliasing -Wall -malign-double -idirafter/usr/include -c -include $(DEST_DIR_DEBUG)/AutoGen.h -DSTRING_ARRAY_NAME=$(BASE_NAME)Strings | |
| GCC:*_*_IA32_PP_FLAGS == -m32 -E -x assembler-with-cpp -include $(DEST_DIR_DEBUG)/AutoGen.h | |
| GCC:*_*_IA32_ASM_FLAGS == -m32 -c -x assembler -imacros $(DEST_DIR_DEBUG)/AutoGen.h | |
| GCC:*_*_X64_DLINK_FLAGS == -o $(BIN_DIR)/Host -m64 -L/usr/X11R6/lib | |
| GCC:*_GCC5_X64_DLINK_FLAGS == -flto -o $(BIN_DIR)/Host -m64 -L/usr/X11R6/lib | |
| GCC:*_*_X64_CC_FLAGS == -m64 -g -fshort-wchar -fno-strict-aliasing -Wall -malign-double -idirafter/usr/include -c -include $(DEST_DIR_DEBUG)/AutoGen.h -DSTRING_ARRAY_NAME=$(BASE_NAME)Strings | |
| GCC:*_GCC44_X64_CC_FLAGS = "-DEFIAPI=__attribute__((ms_abi))" | |
| GCC:*_GCC45_X64_CC_FLAGS = "-DEFIAPI=__attribute__((ms_abi))" | |
| GCC:*_GCC46_X64_CC_FLAGS = "-DEFIAPI=__attribute__((ms_abi))" | |
| GCC:*_GCC47_X64_CC_FLAGS = "-DEFIAPI=__attribute__((ms_abi))" | |
| GCC:*_GCC48_X64_CC_FLAGS = "-DEFIAPI=__attribute__((ms_abi))" | |
| GCC:*_GCC49_X64_CC_FLAGS = "-DEFIAPI=__attribute__((ms_abi))" | |
| GCC:*_GCC5_X64_CC_FLAGS = "-DEFIAPI=__attribute__((ms_abi))" -flto -DUSING_LTO -Os | |
| GCC:*_*_X64_PP_FLAGS == -m64 -E -x assembler-with-cpp -include $(DEST_DIR_DEBUG)/AutoGen.h | |
| GCC:*_*_X64_ASM_FLAGS == -m64 -c -x assembler -imacros $(DEST_DIR_DEBUG)/AutoGen.h | |
| GCC:*_*_*_DLINK2_FLAGS == -lpthread -ldl -lXext -lX11 | |
| # | |
| # Need to do this link via gcc and not ld as the pathing to libraries changes from OS version to OS version | |
| # | |
| XCODE:*_*_IA32_DLINK_PATH == gcc | |
| XCODE:*_*_IA32_CC_FLAGS == -arch i386 -O0 -g -include $(DEST_DIR_DEBUG)/AutoGen.h -c -fshort-wchar -fno-strict-aliasing | |
| XCODE:*_*_IA32_DLINK_FLAGS == -arch i386 -o $(BIN_DIR)/Host -L/usr/X11R6/lib -lXext -lX11 -framework Carbon | |
| XCODE:*_*_IA32_ASM_FLAGS == -arch i386 -g | |
| XCODE:*_*_X64_DLINK_PATH == gcc | |
| XCODE:*_*_X64_DLINK_FLAGS == -o $(BIN_DIR)/Host -L/usr/X11R6/lib -lXext -lX11 -framework Carbon | |
| XCODE:*_*_X64_ASM_FLAGS == -g | |
| XCODE:*_*_X64_CC_FLAGS = -I$(WORKSPACE)/EmulatorPkg/Unix/Host/X11IncludeHack |