ArmVirtPkg: factor out Rules FDF section

All three current ArmVirtPkg have identical [Rules] sections in their
FDF definitions, and ideally, they should remain that way. So factor
out the definitions into a separate include file, and replace the
existing definitions with !include directives.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
diff --git a/ArmVirtPkg/ArmVirtQemu.fdf b/ArmVirtPkg/ArmVirtQemu.fdf
index 9176cf2..c6a22dc 100644
--- a/ArmVirtPkg/ArmVirtQemu.fdf
+++ b/ArmVirtPkg/ArmVirtQemu.fdf
@@ -117,113 +117,4 @@
     }

   }

 

-

-################################################################################

-#

-# Rules are use with the [FV] section's module INF type to define

-# how an FFS file is created for a given INF file. The following Rule are the default

-# rules for the different module type. User can add the customized rules to define the

-# content of the FFS file.

-#

-################################################################################

-

-

-############################################################################

-# Example of a DXE_DRIVER FFS file with a Checksum encapsulation section   #

-############################################################################

-#

-#[Rule.Common.DXE_DRIVER]

-#  FILE DRIVER = $(NAMED_GUID) {

-#    DXE_DEPEX    DXE_DEPEX               Optional $(INF_OUTPUT)/$(MODULE_NAME).depex

-#    COMPRESS PI_STD {

-#      GUIDED {

-#        PE32     PE32                    $(INF_OUTPUT)/$(MODULE_NAME).efi

-#        UI       STRING="$(MODULE_NAME)" Optional

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

-#      }

-#    }

-#  }

-#

-############################################################################

-

-[Rule.Common.SEC]

-  FILE SEC = $(NAMED_GUID) RELOCS_STRIPPED FIXED {

-    TE  TE Align = Auto                 $(INF_OUTPUT)/$(MODULE_NAME).efi

-  }

-

-[Rule.Common.PEI_CORE]

-  FILE PEI_CORE = $(NAMED_GUID) FIXED {

-    TE     TE Align = Auto              $(INF_OUTPUT)/$(MODULE_NAME).efi

-    UI     STRING ="$(MODULE_NAME)" Optional

-  }

-

-[Rule.Common.PEIM]

-  FILE PEIM = $(NAMED_GUID) FIXED {

-     PEI_DEPEX PEI_DEPEX Optional       $(INF_OUTPUT)/$(MODULE_NAME).depex

-     TE       TE Align = Auto           $(INF_OUTPUT)/$(MODULE_NAME).efi

-     UI       STRING="$(MODULE_NAME)" Optional

-  }

-

-[Rule.Common.PEIM.TIANOCOMPRESSED]

-  FILE PEIM = $(NAMED_GUID) DEBUG_MYTOOLS_IA32 {

-    PEI_DEPEX PEI_DEPEX Optional        $(INF_OUTPUT)/$(MODULE_NAME).depex

-    GUIDED A31280AD-481E-41B6-95E8-127F4C984779 PROCESSING_REQUIRED = TRUE {

-      PE32      PE32                    $(INF_OUTPUT)/$(MODULE_NAME).efi

-      UI        STRING="$(MODULE_NAME)" Optional

-    }

-  }

-

-[Rule.Common.DXE_CORE]

-  FILE DXE_CORE = $(NAMED_GUID) {

-    PE32     PE32                       $(INF_OUTPUT)/$(MODULE_NAME).efi

-    UI       STRING="$(MODULE_NAME)" Optional

-  }

-

-[Rule.Common.UEFI_DRIVER]

-  FILE DRIVER = $(NAMED_GUID) {

-    DXE_DEPEX    DXE_DEPEX              Optional $(INF_OUTPUT)/$(MODULE_NAME).depex

-    PE32         PE32                   $(INF_OUTPUT)/$(MODULE_NAME).efi

-    UI           STRING="$(MODULE_NAME)" Optional

-  }

-

-[Rule.Common.DXE_DRIVER]

-  FILE DRIVER = $(NAMED_GUID) {

-    DXE_DEPEX    DXE_DEPEX              Optional $(INF_OUTPUT)/$(MODULE_NAME).depex

-    PE32         PE32                   $(INF_OUTPUT)/$(MODULE_NAME).efi

-    UI           STRING="$(MODULE_NAME)" Optional

-  }

-

-[Rule.Common.DXE_RUNTIME_DRIVER]

-  FILE DRIVER = $(NAMED_GUID) {

-    DXE_DEPEX    DXE_DEPEX              Optional $(INF_OUTPUT)/$(MODULE_NAME).depex

-    PE32         PE32                   $(INF_OUTPUT)/$(MODULE_NAME).efi

-    UI           STRING="$(MODULE_NAME)" Optional

-  }

-

-[Rule.Common.UEFI_APPLICATION]

-  FILE APPLICATION = $(NAMED_GUID) {

-    UI     STRING ="$(MODULE_NAME)"     Optional

-    PE32   PE32                         $(INF_OUTPUT)/$(MODULE_NAME).efi

-  }

-

-[Rule.Common.UEFI_DRIVER.BINARY]

-  FILE DRIVER = $(NAMED_GUID) {

-    DXE_DEPEX DXE_DEPEX Optional      |.depex

-    PE32      PE32                    |.efi

-    UI        STRING="$(MODULE_NAME)" Optional

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

-  }

-

-[Rule.Common.UEFI_APPLICATION.BINARY]

-  FILE APPLICATION = $(NAMED_GUID) {

-    PE32      PE32                    |.efi

-    UI        STRING="$(MODULE_NAME)" Optional

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

-  }

-

-[Rule.Common.USER_DEFINED.ACPITABLE]

-  FILE FREEFORM = $(NAMED_GUID) {

-    RAW       ACPI                    |.acpi

-    RAW       ASL                     |.aml

-    UI        STRING="$(MODULE_NAME)" Optional

-  }

+!include ArmVirtRules.fdf.inc

diff --git a/ArmVirtPkg/ArmVirtQemuKernel.fdf b/ArmVirtPkg/ArmVirtQemuKernel.fdf
index ee9fa18..7bc62f6 100644
--- a/ArmVirtPkg/ArmVirtQemuKernel.fdf
+++ b/ArmVirtPkg/ArmVirtQemuKernel.fdf
@@ -132,113 +132,4 @@
     }

   }

 

-

-################################################################################

-#

-# Rules are use with the [FV] section's module INF type to define

-# how an FFS file is created for a given INF file. The following Rule are the default

-# rules for the different module type. User can add the customized rules to define the

-# content of the FFS file.

-#

-################################################################################

-

-

-############################################################################

-# Example of a DXE_DRIVER FFS file with a Checksum encapsulation section   #

-############################################################################

-#

-#[Rule.Common.DXE_DRIVER]

-#  FILE DRIVER = $(NAMED_GUID) {

-#    DXE_DEPEX    DXE_DEPEX               Optional $(INF_OUTPUT)/$(MODULE_NAME).depex

-#    COMPRESS PI_STD {

-#      GUIDED {

-#        PE32     PE32                    $(INF_OUTPUT)/$(MODULE_NAME).efi

-#        UI       STRING="$(MODULE_NAME)" Optional

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

-#      }

-#    }

-#  }

-#

-############################################################################

-

-[Rule.Common.SEC]

-  FILE SEC = $(NAMED_GUID) RELOCS_STRIPPED FIXED {

-    TE  TE Align = Auto                 $(INF_OUTPUT)/$(MODULE_NAME).efi

-  }

-

-[Rule.Common.PEI_CORE]

-  FILE PEI_CORE = $(NAMED_GUID) FIXED {

-    TE     TE Align = Auto              $(INF_OUTPUT)/$(MODULE_NAME).efi

-    UI     STRING ="$(MODULE_NAME)" Optional

-  }

-

-[Rule.Common.PEIM]

-  FILE PEIM = $(NAMED_GUID) FIXED {

-     PEI_DEPEX PEI_DEPEX Optional       $(INF_OUTPUT)/$(MODULE_NAME).depex

-     TE       TE Align = Auto           $(INF_OUTPUT)/$(MODULE_NAME).efi

-     UI       STRING="$(MODULE_NAME)" Optional

-  }

-

-[Rule.Common.PEIM.TIANOCOMPRESSED]

-  FILE PEIM = $(NAMED_GUID) DEBUG_MYTOOLS_IA32 {

-    PEI_DEPEX PEI_DEPEX Optional        $(INF_OUTPUT)/$(MODULE_NAME).depex

-    GUIDED A31280AD-481E-41B6-95E8-127F4C984779 PROCESSING_REQUIRED = TRUE {

-      PE32      PE32                    $(INF_OUTPUT)/$(MODULE_NAME).efi

-      UI        STRING="$(MODULE_NAME)" Optional

-    }

-  }

-

-[Rule.Common.DXE_CORE]

-  FILE DXE_CORE = $(NAMED_GUID) {

-    PE32     PE32                       $(INF_OUTPUT)/$(MODULE_NAME).efi

-    UI       STRING="$(MODULE_NAME)" Optional

-  }

-

-[Rule.Common.UEFI_DRIVER]

-  FILE DRIVER = $(NAMED_GUID) {

-    DXE_DEPEX    DXE_DEPEX              Optional $(INF_OUTPUT)/$(MODULE_NAME).depex

-    PE32         PE32                   $(INF_OUTPUT)/$(MODULE_NAME).efi

-    UI           STRING="$(MODULE_NAME)" Optional

-  }

-

-[Rule.Common.DXE_DRIVER]

-  FILE DRIVER = $(NAMED_GUID) {

-    DXE_DEPEX    DXE_DEPEX              Optional $(INF_OUTPUT)/$(MODULE_NAME).depex

-    PE32         PE32                   $(INF_OUTPUT)/$(MODULE_NAME).efi

-    UI           STRING="$(MODULE_NAME)" Optional

-  }

-

-[Rule.Common.DXE_RUNTIME_DRIVER]

-  FILE DRIVER = $(NAMED_GUID) {

-    DXE_DEPEX    DXE_DEPEX              Optional $(INF_OUTPUT)/$(MODULE_NAME).depex

-    PE32         PE32                   $(INF_OUTPUT)/$(MODULE_NAME).efi

-    UI           STRING="$(MODULE_NAME)" Optional

-  }

-

-[Rule.Common.UEFI_APPLICATION]

-  FILE APPLICATION = $(NAMED_GUID) {

-    UI     STRING ="$(MODULE_NAME)"     Optional

-    PE32   PE32                         $(INF_OUTPUT)/$(MODULE_NAME).efi

-  }

-

-[Rule.Common.UEFI_DRIVER.BINARY]

-  FILE DRIVER = $(NAMED_GUID) {

-    DXE_DEPEX DXE_DEPEX Optional      |.depex

-    PE32      PE32                    |.efi

-    UI        STRING="$(MODULE_NAME)" Optional

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

-  }

-

-[Rule.Common.UEFI_APPLICATION.BINARY]

-  FILE APPLICATION = $(NAMED_GUID) {

-    PE32      PE32                    |.efi

-    UI        STRING="$(MODULE_NAME)" Optional

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

-  }

-

-[Rule.Common.USER_DEFINED.ACPITABLE]

-  FILE FREEFORM = $(NAMED_GUID) {

-    RAW       ACPI                    |.acpi

-    RAW       ASL                     |.aml

-    UI        STRING="$(MODULE_NAME)" Optional

-  }

+!include ArmVirtRules.fdf.inc

diff --git a/ArmVirtPkg/ArmVirtRules.fdf.inc b/ArmVirtPkg/ArmVirtRules.fdf.inc
new file mode 100644
index 0000000..8952c67
--- /dev/null
+++ b/ArmVirtPkg/ArmVirtRules.fdf.inc
@@ -0,0 +1,123 @@
+#

+#  Copyright (c) 2011-2015, ARM Limited. All rights reserved.

+#  Copyright (c) 2014-2016, Linaro Limited. All rights reserved.

+#  Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.

+#

+#  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.

+#

+

+################################################################################

+#

+# Rules are use with the [FV] section's module INF type to define

+# how an FFS file is created for a given INF file. The following Rule are the default

+# rules for the different module type. User can add the customized rules to define the

+# content of the FFS file.

+#

+################################################################################

+

+

+############################################################################

+# Example of a DXE_DRIVER FFS file with a Checksum encapsulation section   #

+############################################################################

+#

+#[Rule.Common.DXE_DRIVER]

+#  FILE DRIVER = $(NAMED_GUID) {

+#    DXE_DEPEX    DXE_DEPEX               Optional $(INF_OUTPUT)/$(MODULE_NAME).depex

+#    COMPRESS PI_STD {

+#      GUIDED {

+#        PE32     PE32                    $(INF_OUTPUT)/$(MODULE_NAME).efi

+#        UI       STRING="$(MODULE_NAME)" Optional

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

+#      }

+#    }

+#  }

+#

+############################################################################

+

+[Rule.Common.SEC]

+  FILE SEC = $(NAMED_GUID) RELOCS_STRIPPED FIXED {

+    TE  TE Align = Auto                 $(INF_OUTPUT)/$(MODULE_NAME).efi

+  }

+

+[Rule.Common.PEI_CORE]

+  FILE PEI_CORE = $(NAMED_GUID) FIXED {

+    TE     TE Align = Auto              $(INF_OUTPUT)/$(MODULE_NAME).efi

+    UI     STRING ="$(MODULE_NAME)" Optional

+  }

+

+[Rule.Common.PEIM]

+  FILE PEIM = $(NAMED_GUID) FIXED {

+     PEI_DEPEX PEI_DEPEX Optional       $(INF_OUTPUT)/$(MODULE_NAME).depex

+     TE       TE Align = Auto           $(INF_OUTPUT)/$(MODULE_NAME).efi

+     UI       STRING="$(MODULE_NAME)" Optional

+  }

+

+[Rule.Common.PEIM.TIANOCOMPRESSED]

+  FILE PEIM = $(NAMED_GUID) DEBUG_MYTOOLS_IA32 {

+    PEI_DEPEX PEI_DEPEX Optional        $(INF_OUTPUT)/$(MODULE_NAME).depex

+    GUIDED A31280AD-481E-41B6-95E8-127F4C984779 PROCESSING_REQUIRED = TRUE {

+      PE32      PE32                    $(INF_OUTPUT)/$(MODULE_NAME).efi

+      UI        STRING="$(MODULE_NAME)" Optional

+    }

+  }

+

+[Rule.Common.DXE_CORE]

+  FILE DXE_CORE = $(NAMED_GUID) {

+    PE32     PE32                       $(INF_OUTPUT)/$(MODULE_NAME).efi

+    UI       STRING="$(MODULE_NAME)" Optional

+  }

+

+[Rule.Common.UEFI_DRIVER]

+  FILE DRIVER = $(NAMED_GUID) {

+    DXE_DEPEX    DXE_DEPEX              Optional $(INF_OUTPUT)/$(MODULE_NAME).depex

+    PE32         PE32                   $(INF_OUTPUT)/$(MODULE_NAME).efi

+    UI           STRING="$(MODULE_NAME)" Optional

+  }

+

+[Rule.Common.DXE_DRIVER]

+  FILE DRIVER = $(NAMED_GUID) {

+    DXE_DEPEX    DXE_DEPEX              Optional $(INF_OUTPUT)/$(MODULE_NAME).depex

+    PE32         PE32                   $(INF_OUTPUT)/$(MODULE_NAME).efi

+    UI           STRING="$(MODULE_NAME)" Optional

+  }

+

+[Rule.Common.DXE_RUNTIME_DRIVER]

+  FILE DRIVER = $(NAMED_GUID) {

+    DXE_DEPEX    DXE_DEPEX              Optional $(INF_OUTPUT)/$(MODULE_NAME).depex

+    PE32         PE32                   $(INF_OUTPUT)/$(MODULE_NAME).efi

+    UI           STRING="$(MODULE_NAME)" Optional

+  }

+

+[Rule.Common.UEFI_APPLICATION]

+  FILE APPLICATION = $(NAMED_GUID) {

+    UI     STRING ="$(MODULE_NAME)"     Optional

+    PE32   PE32                         $(INF_OUTPUT)/$(MODULE_NAME).efi

+  }

+

+[Rule.Common.UEFI_DRIVER.BINARY]

+  FILE DRIVER = $(NAMED_GUID) {

+    DXE_DEPEX DXE_DEPEX Optional      |.depex

+    PE32      PE32                    |.efi

+    UI        STRING="$(MODULE_NAME)" Optional

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

+  }

+

+[Rule.Common.UEFI_APPLICATION.BINARY]

+  FILE APPLICATION = $(NAMED_GUID) {

+    PE32      PE32                    |.efi

+    UI        STRING="$(MODULE_NAME)" Optional

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

+  }

+

+[Rule.Common.USER_DEFINED.ACPITABLE]

+  FILE FREEFORM = $(NAMED_GUID) {

+    RAW       ACPI                    |.acpi

+    RAW       ASL                     |.aml

+    UI        STRING="$(MODULE_NAME)" Optional

+  }

diff --git a/ArmVirtPkg/ArmVirtXen.fdf b/ArmVirtPkg/ArmVirtXen.fdf
index b1e00e5..653aa30 100644
--- a/ArmVirtPkg/ArmVirtXen.fdf
+++ b/ArmVirtPkg/ArmVirtXen.fdf
@@ -213,113 +213,4 @@
     }

   }

 

-

-################################################################################

-#

-# Rules are use with the [FV] section's module INF type to define

-# how an FFS file is created for a given INF file. The following Rule are the default

-# rules for the different module type. User can add the customized rules to define the

-# content of the FFS file.

-#

-################################################################################

-

-

-############################################################################

-# Example of a DXE_DRIVER FFS file with a Checksum encapsulation section   #

-############################################################################

-#

-#[Rule.Common.DXE_DRIVER]

-#  FILE DRIVER = $(NAMED_GUID) {

-#    DXE_DEPEX    DXE_DEPEX               Optional $(INF_OUTPUT)/$(MODULE_NAME).depex

-#    COMPRESS PI_STD {

-#      GUIDED {

-#        PE32     PE32                    $(INF_OUTPUT)/$(MODULE_NAME).efi

-#        UI       STRING="$(MODULE_NAME)" Optional

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

-#      }

-#    }

-#  }

-#

-############################################################################

-

-[Rule.Common.SEC]

-  FILE SEC = $(NAMED_GUID) RELOCS_STRIPPED FIXED {

-    TE  TE Align = Auto                 $(INF_OUTPUT)/$(MODULE_NAME).efi

-  }

-

-[Rule.Common.PEI_CORE]

-  FILE PEI_CORE = $(NAMED_GUID) FIXED {

-    TE     TE Align = Auto              $(INF_OUTPUT)/$(MODULE_NAME).efi

-    UI     STRING ="$(MODULE_NAME)" Optional

-  }

-

-[Rule.Common.PEIM]

-  FILE PEIM = $(NAMED_GUID) FIXED {

-     PEI_DEPEX PEI_DEPEX Optional       $(INF_OUTPUT)/$(MODULE_NAME).depex

-     TE       TE Align = Auto           $(INF_OUTPUT)/$(MODULE_NAME).efi

-     UI       STRING="$(MODULE_NAME)" Optional

-  }

-

-[Rule.Common.PEIM.TIANOCOMPRESSED]

-  FILE PEIM = $(NAMED_GUID) DEBUG_MYTOOLS_IA32 {

-    PEI_DEPEX PEI_DEPEX Optional        $(INF_OUTPUT)/$(MODULE_NAME).depex

-    GUIDED A31280AD-481E-41B6-95E8-127F4C984779 PROCESSING_REQUIRED = TRUE {

-      PE32      PE32                    $(INF_OUTPUT)/$(MODULE_NAME).efi

-      UI        STRING="$(MODULE_NAME)" Optional

-    }

-  }

-

-[Rule.Common.DXE_CORE]

-  FILE DXE_CORE = $(NAMED_GUID) {

-    PE32     PE32                       $(INF_OUTPUT)/$(MODULE_NAME).efi

-    UI       STRING="$(MODULE_NAME)" Optional

-  }

-

-[Rule.Common.UEFI_DRIVER]

-  FILE DRIVER = $(NAMED_GUID) {

-    DXE_DEPEX    DXE_DEPEX              Optional $(INF_OUTPUT)/$(MODULE_NAME).depex

-    PE32         PE32                   $(INF_OUTPUT)/$(MODULE_NAME).efi

-    UI           STRING="$(MODULE_NAME)" Optional

-  }

-

-[Rule.Common.DXE_DRIVER]

-  FILE DRIVER = $(NAMED_GUID) {

-    DXE_DEPEX    DXE_DEPEX              Optional $(INF_OUTPUT)/$(MODULE_NAME).depex

-    PE32         PE32                   $(INF_OUTPUT)/$(MODULE_NAME).efi

-    UI           STRING="$(MODULE_NAME)" Optional

-  }

-

-[Rule.Common.DXE_RUNTIME_DRIVER]

-  FILE DRIVER = $(NAMED_GUID) {

-    DXE_DEPEX    DXE_DEPEX              Optional $(INF_OUTPUT)/$(MODULE_NAME).depex

-    PE32         PE32                   $(INF_OUTPUT)/$(MODULE_NAME).efi

-    UI           STRING="$(MODULE_NAME)" Optional

-  }

-

-[Rule.Common.UEFI_APPLICATION]

-  FILE APPLICATION = $(NAMED_GUID) {

-    UI     STRING ="$(MODULE_NAME)"     Optional

-    PE32   PE32                         $(INF_OUTPUT)/$(MODULE_NAME).efi

-  }

-

-[Rule.Common.UEFI_DRIVER.BINARY]

-  FILE DRIVER = $(NAMED_GUID) {

-    DXE_DEPEX DXE_DEPEX Optional      |.depex

-    PE32      PE32                    |.efi

-    UI        STRING="$(MODULE_NAME)" Optional

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

-  }

-

-[Rule.Common.UEFI_APPLICATION.BINARY]

-  FILE APPLICATION = $(NAMED_GUID) {

-    PE32      PE32                    |.efi

-    UI        STRING="$(MODULE_NAME)" Optional

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

-  }

-

-[Rule.Common.USER_DEFINED.ACPITABLE]

-  FILE FREEFORM = $(NAMED_GUID) {

-    RAW       ACPI                    |.acpi

-    RAW       ASL                     |.aml

-    UI        STRING="$(MODULE_NAME)" Optional

-  }

+!include ArmVirtRules.fdf.inc