mirror of
https://github.com/acidanthera/audk.git
synced 2025-05-21 06:50:10 +02:00
Starting in OS X Mountain Lion X11 is not longer part of the OS install, so you must download it from http://xquartz.macosforge.org. To make XQuartz work with the EmulatorPkg an include path needs to be added. The build tools fail the build if you try to add an absolute inculde path to the X11 headers, so Unix/Host/X11IncludeHack, a symbolic link, was added to get the system building. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Anderw Fish <afish@apple.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15929 6f19259b-4bc3-4df7-8a09-765794883524
149 lines
5.9 KiB
INI
149 lines
5.9 KiB
INI
## @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 -m elf_i386 -dynamic-linker $(HOST_DLINK_PATHS) -L/usr/lib/i386-linux-gnu -L/usr/X11R6/lib -lXext -lX11
|
|
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 -m elf_x86_64 -dynamic-linker $(HOST_DLINK_PATHS) -L/usr/lib/x86_64-linux-gnu -L/usr/X11R6/lib -lXext -lX11
|
|
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:*_*_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 -lc -ldl
|
|
|
|
#
|
|
# 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
|