• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#
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.
5#
6#  This program and the accompanying materials
7#  are licensed and made available under the terms and conditions of the BSD License
8#  which accompanies this distribution.  The full text of the license may be found at
9#  http://opensource.org/licenses/bsd-license.php
10#
11#  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12#  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13#
14
15################################################################################
16#
17# Rules are use with the [FV] section's module INF type to define
18# how an FFS file is created for a given INF file. The following Rule are the default
19# rules for the different module type. User can add the customized rules to define the
20# content of the FFS file.
21#
22################################################################################
23
24
25############################################################################
26# Example of a DXE_DRIVER FFS file with a Checksum encapsulation section   #
27############################################################################
28#
29#[Rule.Common.DXE_DRIVER]
30#  FILE DRIVER = $(NAMED_GUID) {
31#    DXE_DEPEX    DXE_DEPEX               Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
32#    COMPRESS PI_STD {
33#      GUIDED {
34#        PE32     PE32                    $(INF_OUTPUT)/$(MODULE_NAME).efi
35#        UI       STRING="$(MODULE_NAME)" Optional
36#        VERSION  STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
37#      }
38#    }
39#  }
40#
41############################################################################
42
43[Rule.Common.SEC]
44  FILE SEC = $(NAMED_GUID) RELOCS_STRIPPED FIXED {
45    TE  TE Align = Auto                 $(INF_OUTPUT)/$(MODULE_NAME).efi
46  }
47
48[Rule.Common.PEI_CORE]
49  FILE PEI_CORE = $(NAMED_GUID) FIXED {
50    TE     TE Align = Auto              $(INF_OUTPUT)/$(MODULE_NAME).efi
51    UI     STRING ="$(MODULE_NAME)" Optional
52  }
53
54[Rule.Common.PEIM]
55  FILE PEIM = $(NAMED_GUID) FIXED {
56     PEI_DEPEX PEI_DEPEX Optional       $(INF_OUTPUT)/$(MODULE_NAME).depex
57     TE       TE Align = Auto           $(INF_OUTPUT)/$(MODULE_NAME).efi
58     UI       STRING="$(MODULE_NAME)" Optional
59  }
60
61[Rule.Common.PEIM.TIANOCOMPRESSED]
62  FILE PEIM = $(NAMED_GUID) DEBUG_MYTOOLS_IA32 {
63    PEI_DEPEX PEI_DEPEX Optional        $(INF_OUTPUT)/$(MODULE_NAME).depex
64    GUIDED A31280AD-481E-41B6-95E8-127F4C984779 PROCESSING_REQUIRED = TRUE {
65      PE32      PE32                    $(INF_OUTPUT)/$(MODULE_NAME).efi
66      UI        STRING="$(MODULE_NAME)" Optional
67    }
68  }
69
70[Rule.Common.DXE_CORE]
71  FILE DXE_CORE = $(NAMED_GUID) {
72    PE32     PE32                       $(INF_OUTPUT)/$(MODULE_NAME).efi
73    UI       STRING="$(MODULE_NAME)" Optional
74  }
75
76[Rule.Common.UEFI_DRIVER]
77  FILE DRIVER = $(NAMED_GUID) {
78    DXE_DEPEX    DXE_DEPEX              Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
79    PE32         PE32                   $(INF_OUTPUT)/$(MODULE_NAME).efi
80    UI           STRING="$(MODULE_NAME)" Optional
81  }
82
83[Rule.Common.DXE_DRIVER]
84  FILE DRIVER = $(NAMED_GUID) {
85    DXE_DEPEX    DXE_DEPEX              Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
86    PE32         PE32                   $(INF_OUTPUT)/$(MODULE_NAME).efi
87    UI           STRING="$(MODULE_NAME)" Optional
88    RAW          ACPI  Optional               |.acpi
89    RAW          ASL   Optional               |.aml
90  }
91
92[Rule.Common.DXE_RUNTIME_DRIVER]
93  FILE DRIVER = $(NAMED_GUID) {
94    DXE_DEPEX    DXE_DEPEX              Optional $(INF_OUTPUT)/$(MODULE_NAME).depex
95    PE32         PE32                   $(INF_OUTPUT)/$(MODULE_NAME).efi
96    UI           STRING="$(MODULE_NAME)" Optional
97  }
98
99[Rule.Common.UEFI_APPLICATION]
100  FILE APPLICATION = $(NAMED_GUID) {
101    UI     STRING ="$(MODULE_NAME)"     Optional
102    PE32   PE32                         $(INF_OUTPUT)/$(MODULE_NAME).efi
103  }
104
105[Rule.Common.UEFI_DRIVER.BINARY]
106  FILE DRIVER = $(NAMED_GUID) {
107    DXE_DEPEX DXE_DEPEX Optional      |.depex
108    PE32      PE32                    |.efi
109    UI        STRING="$(MODULE_NAME)" Optional
110    VERSION   STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
111  }
112
113[Rule.Common.UEFI_APPLICATION.BINARY]
114  FILE APPLICATION = $(NAMED_GUID) {
115    PE32      PE32                    |.efi
116    UI        STRING="$(MODULE_NAME)" Optional
117    VERSION   STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
118  }
119
120[Rule.Common.USER_DEFINED.ACPITABLE]
121  FILE FREEFORM = $(NAMED_GUID) {
122    RAW       ACPI                    |.acpi
123    RAW       ASL                     |.aml
124    UI        STRING="$(MODULE_NAME)" Optional
125  }
126