audk/EmulatorPkg
Michael D Kinney ef9a059cdb EmulatorPkg/Win/Host: Update CC_FLAGS
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3747

* Remove deprecated option /Gm that generates a warning.
* Remove /Zi and use '=' instead of '== to let DEBUG/RELEASE/NOOPT
  profile from tools_def.txt enable debug information
* Remove /Gs8192 option that is overriding the larger setting of
  /GS32768 from tools_def.txt that generates a warning.

Cc: Andrew Fish <afish@apple.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Michael Kubacki <michael.kubacki@microsoft.com>
Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com>
Reviewed-by: Michael Kubacki <michael.kubacki@microsoft.com>
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
Reviewed-by: Ray Ni <ray.ni@Intel.com>
2021-11-29 05:44:34 +00:00
..
Application/RedfishPlatformConfig EmulatorPkg/Application: Publish Redfish Host Interface Record 2020-12-03 07:54:44 +00:00
AutoScanPei EmulatorPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:57:59 -07:00
BootModePei EmulatorPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:57:59 -07:00
CpuRuntimeDxe EmulatorPkg: Change the cpu frequency to a non-zero value 2019-05-10 10:48:51 +08:00
EmuBlockIoDxe EmulatorPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:57:59 -07:00
EmuBusDriverDxe EmulatorPkg: Add -D DISABLE_NEW_DEPRECATED_INTERFACES 2019-08-19 09:49:54 -07:00
EmuGopDxe EmulatorPkg: Fix spelling mistake for occurred 2020-08-19 00:54:23 +00:00
EmuSimpleFileSystemDxe EmulatorPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:57:59 -07:00
EmuSnpDxe EmulatorPkg: Add NetworkPkg/NetworkPkg.dec as the package dependency 2019-05-21 10:35:33 +08:00
EmuThunkDxe EmulatorPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:57:59 -07:00
FirmwareVolumePei EmulatorPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:57:59 -07:00
FlashMapPei EmulatorPkg: Add -D DISABLE_NEW_DEPRECATED_INTERFACES 2019-08-19 09:49:54 -07:00
FvbServicesRuntimeDxe EmulatorPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:57:59 -07:00
Include EmulatorPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:57:59 -07:00
Library EmulatorPkg/library: RedfishPlatformCredentialLib 2021-01-16 03:35:31 +00:00
PlatformCI EmulatorPkg: Temp remove IA32 GCC CI builds 2021-04-29 05:38:20 +00:00
PlatformSmbiosDxe EmulatorPkg/PlatformSmbiosDxe: fix a spell error of platform. 2019-11-13 02:11:03 +00:00
RealTimeClockRuntimeDxe EmulatorPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:57:59 -07:00
ResetRuntimeDxe EmulatorPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:57:59 -07:00
Sec EmulatorPkg/Sec: Fix various typos 2020-02-10 22:30:07 +00:00
ThunkPpiToProtocolPei EmulatorPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:57:59 -07:00
TimerDxe EmulatorPkg: Fix spelling mistake for occurred 2020-08-19 00:54:23 +00:00
Unix EmulatorPkg/Unix: Fix various typos 2020-02-10 22:30:07 +00:00
Win EmulatorPkg/Win/Host: Update CC_FLAGS 2021-11-29 05:44:34 +00:00
EmulatorPkg.ci.yaml EmulatorPkg: Add allowable dependency 2020-12-03 07:54:44 +00:00
EmulatorPkg.dec EmulatorPkg/library: RedfishPlatformCredentialLib 2021-01-16 03:35:31 +00:00
EmulatorPkg.dsc EmulatorPkg: add SecureBootVariableLib class resolution 2021-08-03 07:26:41 +00:00
EmulatorPkg.fdf EmulatorPkg: Redfish related changes on EmulatorPkg 2020-12-03 07:54:44 +00:00
Readme.md EmulatorPkg: strip trailing whitespace 2019-10-04 11:18:32 +01:00
build.sh EmulatorPkg: Fix XCODE5 lldb issues 2019-08-19 09:57:25 -07:00

Readme.md

Overview

EmulatorPkg provides an environment where a UEFI environment can be emulated under an environment where a full UEFI compatible environment is not possible. (For example, running under an OS where an OS process hosts the UEFI emulation environment.)

https://github.com/tianocore/tianocore.github.io/wiki/EmulatorPkg

Status

  • Builds and runs under
    • a posix-like environment with X windows
      • Linux
      • OS X
    • Windows environment
      • Win10 (verified)
      • Win8 (not verified)

How to Build & Run

You can use the following command to build.

  • 32bit emulator in Windows:

    build -p EmulatorPkg\EmulatorPkg.dsc -t VS2017 -a IA32

  • 64bit emulator in Windows:

    build -p EmulatorPkg\EmulatorPkg.dsc -t VS2017 -a X64

  • 32bit emulator in Linux:

    build -p EmulatorPkg\EmulatorPkg.dsc -t GCC5 -a IA32

  • 64bit emulator in Linux:

    build -p EmulatorPkg\EmulatorPkg.dsc -t GCC5 -a X64

You can start/run the emulator using the following command:

  • 32bit emulator in Windows:

    cd Build\EmulatorIA32\DEBUG_VS2017\IA32\ && WinHost.exe

  • 64bit emulator in Windows:

    cd Build\EmulatorX64\DEBUG_VS2017\X64\ && WinHost.exe

  • 32bit emulator in Linux:

    cd Build/EmulatorIA32/DEBUG_GCC5/IA32/ && ./Host

  • 64bit emulator in Linux:

    cd Build/EmulatorX64/DEBUG_GCC5/X64/ && ./Host

On posix-like environment with the bash shell you can use EmulatorPkg/build.sh to simplify building and running emulator.

For example, to build + run:

$ EmulatorPkg/build.sh $ EmulatorPkg/build.sh run

The build architecture will match your host machine's architecture.

On X64 host machines, you can build + run IA32 mode as well:

$ EmulatorPkg/build.sh -a IA32 $ EmulatorPkg/build.sh -a IA32 run