2 # Copyright (c) 2011-2015, ARM Limited. All rights reserved.
3 # Copyright (c) 2014-2016, Linaro Limited. All rights reserved.
4 # Copyright (c) 2015 - 2016, Intel Corporation. All rights reserved.
6 # SPDX-License-Identifier: BSD-2-Clause-Patent
9 ################################################################################
11 # Rules are use with the [FV] section's module INF type to define
12 # how an FFS file is created for a given INF file. The following Rule are the default
13 # rules for the different module type. User can add the customized rules to define the
14 # content of the FFS file.
16 ################################################################################
19 ############################################################################
20 # Example of a DXE_DRIVER FFS file with a Checksum encapsulation section #
21 ############################################################################
23 #[Rule.Common.DXE_DRIVER]
24 # FILE DRIVER = $(NAMED_GUID) {
25 # DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
28 # PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
29 # UI STRING="$(MODULE_NAME)" Optional
30 # VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
35 ############################################################################
38 FILE SEC = $(NAMED_GUID) RELOCS_STRIPPED FIXED {
39 TE TE Align = Auto $(INF_OUTPUT)/$(MODULE_NAME).efi
42 [Rule.Common.PEI_CORE]
43 FILE PEI_CORE = $(NAMED_GUID) FIXED {
44 TE TE Align = Auto $(INF_OUTPUT)/$(MODULE_NAME).efi
45 UI STRING ="$(MODULE_NAME)" Optional
49 FILE PEIM = $(NAMED_GUID) FIXED {
50 PEI_DEPEX PEI_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
51 TE TE Align = Auto $(INF_OUTPUT)/$(MODULE_NAME).efi
52 UI STRING="$(MODULE_NAME)" Optional
55 [Rule.Common.DXE_CORE]
56 FILE DXE_CORE = $(NAMED_GUID) {
57 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
58 UI STRING="$(MODULE_NAME)" Optional
61 [Rule.Common.UEFI_DRIVER]
62 FILE DRIVER = $(NAMED_GUID) {
63 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
64 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
65 UI STRING="$(MODULE_NAME)" Optional
68 [Rule.Common.DXE_DRIVER]
69 FILE DRIVER = $(NAMED_GUID) {
70 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
71 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
72 UI STRING="$(MODULE_NAME)" Optional
73 RAW ACPI Optional |.acpi
74 RAW ASL Optional |.aml
77 [Rule.Common.DXE_RUNTIME_DRIVER]
78 FILE DRIVER = $(NAMED_GUID) {
79 DXE_DEPEX DXE_DEPEX Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
80 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
81 UI STRING="$(MODULE_NAME)" Optional
84 [Rule.Common.UEFI_APPLICATION]
85 FILE APPLICATION = $(NAMED_GUID) {
86 UI STRING ="$(MODULE_NAME)" Optional
87 PE32 PE32 $(INF_OUTPUT)/$(MODULE_NAME).efi
90 [Rule.Common.UEFI_DRIVER.BINARY]
91 FILE DRIVER = $(NAMED_GUID) {
92 DXE_DEPEX DXE_DEPEX Optional |.depex
94 UI STRING="$(MODULE_NAME)" Optional
95 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
98 [Rule.Common.UEFI_APPLICATION.BINARY]
99 FILE APPLICATION = $(NAMED_GUID) {
101 UI STRING="$(MODULE_NAME)" Optional
102 VERSION STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
105 [Rule.Common.USER_DEFINED.ACPITABLE]
106 FILE FREEFORM = $(NAMED_GUID) {
109 UI STRING="$(MODULE_NAME)" Optional