OVMF: Align PE images in ROM, and strip relocations were possible.

Align the PE32/32+ images in the ROM for XIP (execute in place) images
to function properly following the change in r9327.  Also, convert
pre-memory PEIM's to use the TE image format and strip-relocation
data from image.  This saves a little space, and provides a sample
usage of TE images.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9332 6f19259b-4bc3-4df7-8a09-765794883524
diff --git a/OvmfPkg/OvmfPkgIa32X64.fdf b/OvmfPkg/OvmfPkgIa32X64.fdf
index c2184e4..48ef1f9 100644
--- a/OvmfPkg/OvmfPkgIa32X64.fdf
+++ b/OvmfPkg/OvmfPkgIa32X64.fdf
@@ -148,7 +148,7 @@
 

 INF  MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf

 INF  MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf

-INF  RuleOverride = ACPITABLE OvmfPkg/AcpiTables/AcpiTables.inf

+INF  RuleOverride=ACPITABLE OvmfPkg/AcpiTables/AcpiTables.inf

 

 FILE DRIVER = 961578FE-B6B7-44c3-AF35-6BC705CD2B1F {

     SECTION PE32 = FatBinPkg/EnhancedFatDxe/X64/Fat.efi

@@ -205,9 +205,9 @@
 #  PEI Phase modules

 #

 INF  MdeModulePkg/Core/Pei/PeiMain.inf

-INF  MdeModulePkg/Universal/PCD/Pei/Pcd.inf

-INF  IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf

-INF  OvmfPkg/PlatformPei/PlatformPei.inf

+INF  RuleOverride=NORELOC MdeModulePkg/Universal/PCD/Pei/Pcd.inf

+INF  RuleOverride=NORELOC IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf

+INF  RuleOverride=NORELOC OvmfPkg/PlatformPei/PlatformPei.inf

 INF  MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf

 

 #

@@ -237,7 +237,7 @@
 

 [Rule.Common.PEI_CORE]

   FILE PEI_CORE = $(NAMED_GUID) {

-    PE32     PE32           |.efi

+    PE32     PE32   Align=32    |.efi

     UI       STRING ="$(MODULE_NAME)" Optional

     VERSION  STRING ="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)

   }

@@ -249,10 +249,18 @@
     VERSION  STRING ="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)

   }

 

+[Rule.Common.PEIM.NORELOC]

+  FILE PEIM = $(NAMED_GUID) RELOCS_STRIPPED  {

+     PEI_DEPEX PEI_DEPEX Optional        |.depex

+     TE        TE                        |.efi

+     UI        STRING="$(MODULE_NAME)" Optional

+     VERSION   STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)

+  }

+

 [Rule.Common.PEIM]

   FILE PEIM = $(NAMED_GUID) {

      PEI_DEPEX PEI_DEPEX Optional        |.depex

-     PE32      PE32                      |.efi

+     PE32      PE32   Align=32           |.efi

      UI       STRING="$(MODULE_NAME)" Optional

      VERSION  STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)

   }

@@ -307,8 +315,8 @@
 

 [Rule.Common.USER_DEFINED.ACPITABLE]

   FILE FREEFORM = $(NAMED_GUID) {

-    RAW ACPI |.acpi

-    RAW ASL  |.aml

+    RAW ACPI               |.acpi

+    RAW ASL                |.aml

   }

 

 [Rule.Common.SEC.RESET_VECTOR]