BaseTools: Add rules to build NASM into a binary

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
UefiCpuPkg: Support building VTF0 ResetVector during the EDK II build

Using NASM we build VTF0 as part of the EDK II build process.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
OvmfPkg: Support building OVMF's ResetVector during the EDK II build

Using NASM we build OVMF's ResetVector as part of the EDK II build
process.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
OvmfPkg: Build OVMF ResetVector during EDK II build process

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
UefiCpuPkg VTF0: Remove pre-built binaries

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
OvmfPkg/ResetVector: Remove pre-built binaries

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
UefiCpuPkg: Add ResetVector/OldVtf

This implements the old VTF ResetVector code often used on EDK II
IA32 & X64 platforms.

The BaseTools GenFv tool has code that patches the jump target of
the reset vector code to match the entry point of the SEC image in
the PEI Firmware Volume.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
BaseTools: Add nasm => obj build process

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
OvmfPkg: Add empty PEI core module for GenFv

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
OvmfPkg: Use old style VTF (WIP)

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>