1#/*++
2#
3# Copyright (c) 2004 - 2007, Intel Corporation. All rights reserved.<BR>
4# This program and the accompanying materials
5# are licensed and made available under the terms and conditions of the BSD License
6# which accompanies this distribution.  The full text of the license may be found at
7# http://opensource.org/licenses/bsd-license.php
8#
9# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11#
12#  Module Name:
13#
14#   CommonIa32.dsc
15#
16#  Abstract:
17#
18#    This is the build description file containing the processor architecture
19#    dependent build instructions.
20#
21#  Notes:
22#
23#    The info in this file is broken down into sections. The start of a section
24#    is designated by a "[" in the first column. So the [=====] separater ends
25#    a section.
26#
27#--*/
28
29
30[=============================================================================]
31#
32# These are the package descriptions. They are tagged as
33# [Package.$(COMPONENT_TYPE).$(PACKAGE)], where COMPONENT_TYPE is typically
34# defined in the component INF file, and PACKAGE is typically specified
35# in the components section in the main DSC file. Main DSC file can also define
36# platform specific package descriptions.
37#
38
39[=============================================================================]
40[Package.APPLICATION.Default]
41PACKAGE.INF
42\[.]
43BASE_NAME                   = $(BASE_NAME)
44FFS_FILEGUID                = $(FILE_GUID)
45FFS_FILETYPE                = EFI_FV_FILETYPE_APPLICATION
46FFS_ATTRIB_CHECKSUM         = TRUE
47
48IMAGE_SCRIPT =
49{
50  Compress ($(COMPRESS_METHOD)) {
51    Tool (
52      $(OEMTOOLPATH)\GenCRC32Section
53      ARGS= -i $(DEST_DIR)\$(BASE_NAME).pe32
54               $(DEST_DIR)\$(BASE_NAME).ui
55               $(DEST_DIR)\$(BASE_NAME).ver
56            -o $(DEST_DIR)\$(BASE_NAME).crc32
57      OUTPUT = $(DEST_DIR)\$(BASE_NAME).crc32
58    )
59  }
60}
61
62[=============================================================================]
63[Package.Apriori.Default|DefaultStripped,Package.FILE.Default|DefaultStripped]
64PACKAGE.INF
65\[.]
66BASE_NAME                   = $(BASE_NAME)
67FFS_FILEGUID                = $(FILE_GUID)
68FFS_FILETYPE                = EFI_FV_FILETYPE_FREEFORM
69FFS_ATTRIB_CHECKSUM         = TRUE
70
71IMAGE_SCRIPT =
72{
73  $(BASE_NAME).sec
74}
75
76[=============================================================================]
77[Package.RAWFILE.Default|DefaultStripped,Package.Config.Default|DefaultStripped|Config,Package.Microcode.Default|DefaultStripped]
78PACKAGE.INF
79\[.]
80BASE_NAME                   = $(BASE_NAME)
81FFS_FILEGUID                = $(FILE_GUID)
82FFS_FILETYPE                = EFI_FV_FILETYPE_RAW
83FFS_ATTRIB_CHECKSUM         = TRUE
84
85IMAGE_SCRIPT =
86{
87  $(BASE_NAME).Bin
88}
89
90[=============================================================================]
91[Package.BINARY.Default,Package.Legacy16.Default,Package.Logo.Default|Logo]
92PACKAGE.INF
93\[.]
94BASE_NAME                   = $(BASE_NAME)
95FFS_FILEGUID                = $(FILE_GUID)
96FFS_FILETYPE                = EFI_FV_FILETYPE_FREEFORM
97FFS_ATTRIB_CHECKSUM         = TRUE
98
99IMAGE_SCRIPT =
100{
101  Compress ($(COMPRESS_METHOD)) {
102    Tool ( $(OEMTOOLPATH)\GenCRC32Section
103      ARGS = -i $(DEST_DIR)\$(BASE_NAME).sec
104             -o $(DEST_DIR)\$(BASE_NAME).crc32
105      OUTPUT = $(DEST_DIR)\$(BASE_NAME).crc32
106    )
107  }
108}
109
110[=============================================================================]
111#
112# Package definition for TE files
113#
114[Package.PE32_PEIM.TE_PEIM]
115PACKAGE.INF
116\[.]
117BASE_NAME                   = $(BASE_NAME)
118FFS_FILEGUID                = $(FILE_GUID)
119FFS_FILETYPE                = EFI_FV_FILETYPE_PEIM
120FFS_ATTRIB_CHECKSUM         = TRUE
121
122IMAGE_SCRIPT =
123{
124  $(BASE_NAME).dpx
125  $(BASE_NAME).tes
126  $(BASE_NAME).ui
127  $(BASE_NAME).ver
128}
129
130[=============================================================================]
131#
132# Package definition to put the IFR data in a separate section in the
133# FFS file.
134#
135[Package.BS_DRIVER.Ifr_Bin]
136PACKAGE.INF
137\[.]
138BASE_NAME                   = $(BASE_NAME)
139FFS_FILEGUID                = $(FILE_GUID)
140FFS_FILETYPE                = EFI_FV_FILETYPE_DRIVER
141FFS_ATTRIB_CHECKSUM         = TRUE
142
143IMAGE_SCRIPT =
144{
145  Compress ($(COMPRESS_METHOD)) {
146    Tool (
147      $(OEMTOOLPATH)\GenCRC32Section
148      ARGS= -i $(DEST_DIR)\$(BASE_NAME).dpx
149               $(DEST_DIR)\$(BASE_NAME).pe32
150               $(DEST_DIR)\$(BASE_NAME).ui
151               $(DEST_DIR)\$(BASE_NAME).ver
152               $(DEST_DIR)\$(BASE_NAME)IfrBin.sec
153            -o $(DEST_DIR)\$(BASE_NAME).crc32
154      OUTPUT = $(DEST_DIR)\$(BASE_NAME).crc32
155    )
156  }
157}
158
159[=============================================================================]
160[Package.PEI_CORE.Default]
161PACKAGE.INF
162\[.]
163BASE_NAME                   = $(BASE_NAME)
164FFS_FILEGUID                = $(FILE_GUID)
165FFS_FILETYPE                = EFI_FV_FILETYPE_PEI_CORE
166FFS_ATTRIB_CHECKSUM         = TRUE
167
168IMAGE_SCRIPT =
169{          \
170  $(BASE_NAME).pe32 \
171  $(BASE_NAME).ui \
172  $(BASE_NAME).ver \
173}
174
175[=============================================================================]
176[Package.PEI_CORE.TE_PEIM]
177PACKAGE.INF
178\[.]
179BASE_NAME                   = $(BASE_NAME)
180FFS_FILEGUID                = $(FILE_GUID)
181FFS_FILETYPE                = EFI_FV_FILETYPE_PEI_CORE
182FFS_ATTRIB_CHECKSUM         = TRUE
183
184IMAGE_SCRIPT =
185{          \
186  $(BASE_NAME).tes \
187  $(BASE_NAME).ui \
188  $(BASE_NAME).ver \
189}
190
191[=============================================================================]
192[Package.PE32_PEIM.Default]
193PACKAGE.INF
194\[.]
195BASE_NAME                   = $(BASE_NAME)
196FFS_FILEGUID                = $(FILE_GUID)
197FFS_FILETYPE                = EFI_FV_FILETYPE_PEIM
198FFS_ATTRIB_CHECKSUM         = TRUE
199
200IMAGE_SCRIPT =
201{ \
202  $(BASE_NAME).dpx \
203  $(BASE_NAME).pe32 \
204  $(BASE_NAME).ui \
205  $(BASE_NAME).ver \
206}
207
208[=============================================================================]
209[Package.PE32_PEIM.Relocatable]
210PACKAGE.INF
211\[.]
212BASE_NAME                   = $(BASE_NAME)
213FFS_FILEGUID                = $(FILE_GUID)
214FFS_FILETYPE                = EFI_FV_FILETYPE_PEIM
215FFS_ATTRIB_CHECKSUM         = TRUE
216
217IMAGE_SCRIPT =
218{ \
219  $(BASE_NAME).dpx \
220  $(BASE_NAME).pe32 \
221}
222
223[=============================================================================]
224[Package.PE32_PEIM.CompressPEIM]
225PACKAGE.INF
226\[.]
227BASE_NAME                   = $(BASE_NAME)
228FFS_FILEGUID                = $(FILE_GUID)
229FFS_FILETYPE                = EFI_FV_FILETYPE_PEIM
230FFS_ATTRIB_CHECKSUM         = TRUE
231
232IMAGE_SCRIPT =
233{
234  $(BASE_NAME).dpx
235  Compress ($(COMPRESS_METHOD)) {
236    $(BASE_NAME).pe32
237    $(BASE_NAME).ui
238    $(BASE_NAME).ver
239  }
240}
241
242[=============================================================================]
243[Package.COMBINED_PEIM_DRIVER.Default]
244PACKAGE.INF
245\[.]
246BASE_NAME                   = $(BASE_NAME)
247FFS_FILEGUID                = $(FILE_GUID)
248FFS_FILETYPE                = EFI_FV_FILETYPE_COMBINED_PEIM_DRIVER
249FFS_ATTRIB_CHECKSUM         = TRUE
250
251IMAGE_SCRIPT =
252{ \
253  $(BASE_NAME).dpx \
254  $(BASE_NAME).dpxd \
255  $(BASE_NAME).pe32 \
256  $(BASE_NAME).ui \
257  $(BASE_NAME).ver \
258}
259
260[=============================================================================]
261[Package.BS_DRIVER.DxeMain]
262PACKAGE.INF
263\[.]
264BASE_NAME                   = $(BASE_NAME)
265FFS_FILEGUID                = $(FILE_GUID)
266FFS_FILETYPE                = EFI_FV_FILETYPE_DXE_CORE
267FFS_ATTRIB_CHECKSUM         = TRUE
268
269IMAGE_SCRIPT =
270{
271  Compress ($(COMPRESS_METHOD)) {
272    $(BASE_NAME).pe32
273    $(BASE_NAME).ui
274    $(BASE_NAME).ver
275  }
276}
277
278[=============================================================================]
279[Package.BS_DRIVER.Default,Package.RT_DRIVER.Default]
280PACKAGE.INF
281\[.]
282BASE_NAME                   = $(BASE_NAME)
283FFS_FILEGUID                = $(FILE_GUID)
284FFS_FILETYPE                = EFI_FV_FILETYPE_DRIVER
285FFS_ATTRIB_CHECKSUM         = TRUE
286
287IMAGE_SCRIPT =
288{
289  Compress ($(COMPRESS_METHOD)) {
290    Tool (
291      $(OEMTOOLPATH)\GenCRC32Section
292      ARGS= -i $(DEST_DIR)\$(BASE_NAME).dpx
293               $(DEST_DIR)\$(BASE_NAME).pe32
294               $(DEST_DIR)\$(BASE_NAME).ui
295               $(DEST_DIR)\$(BASE_NAME).ver
296            -o $(DEST_DIR)\$(BASE_NAME).crc32
297      OUTPUT = $(DEST_DIR)\$(BASE_NAME).crc32
298    )
299  }
300}
301
302[=============================================================================]
303[Package.FvImageFile.Default]
304PACKAGE.INF
305\[.]
306BASE_NAME                   = $(BASE_NAME)
307FFS_FILEGUID                = $(FILE_GUID)
308FFS_FILETYPE                = EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE
309FFS_ATTRIB_CHECKSUM         = TRUE
310
311IMAGE_SCRIPT =
312{
313  Compress ($(COMPRESS_METHOD)) {
314    Tool (
315      $(OEMTOOLPATH)\GenCRC32Section
316      ARGS= -i $(DEST_DIR)\$(SOURCE_FV)Fv.sec
317            -o $(DEST_DIR)\$(BASE_NAME)fv.crc32
318      OUTPUT = $(DEST_DIR)\$(BASE_NAME)fv.crc32
319    )
320  }
321}
322
323[=============================================================================]
324#
325# Define a package that "signs" our capsule cargo FV
326#
327[Package.FvImageFile.SignedFVPackage]
328PACKAGE.INF
329\[.]
330BASE_NAME                   = $(BASE_NAME)
331FFS_FILEGUID                = $(FILE_GUID)
332FFS_FILETYPE                = EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE
333FFS_ATTRIB_CHECKSUM         = TRUE
334
335IMAGE_SCRIPT =
336{
337    Tool (
338      $(OEMTOOLPATH)\GenCRC32Section
339      ARGS= -i $(DEST_DIR)\$(SOURCE_FV)Fv.sec
340            -o $(DEST_DIR)\$(BASE_NAME).crc32
341      OUTPUT = $(DEST_DIR)\$(BASE_NAME).crc32
342    )
343}
344
345[=============================================================================]
346[Package.FvImageFile.FvMainCompact]
347PACKAGE.INF
348\[.]
349BASE_NAME                   = $(BASE_NAME)
350FFS_FILEGUID                = $(FILE_GUID)
351FFS_FILETYPE                = EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE
352FFS_ATTRIB_CHECKSUM         = TRUE
353
354IMAGE_SCRIPT =
355{
356  Compress ($(COMPRESS_METHOD)) {
357    Blank.pad
358    $(SOURCE_FV)Fv.sec
359  }
360}
361
362[=============================================================================]
363#
364# Stripped package descriptions for size reduction.
365#
366[=============================================================================]
367[Package.APPLICATION.DefaultStripped]
368PACKAGE.INF
369\[.]
370BASE_NAME                   = $(BASE_NAME)
371FFS_FILEGUID                = $(FILE_GUID)
372FFS_FILETYPE                = EFI_FV_FILETYPE_APPLICATION
373FFS_ATTRIB_CHECKSUM         = TRUE
374
375IMAGE_SCRIPT =
376{
377  Compress ($(COMPRESS_METHOD)) {
378    $(DEST_DIR)\$(BASE_NAME).pe32
379  }
380}
381
382[=============================================================================]
383[Package.BINARY.DefaultStripped,Package.Legacy16.DefaultStripped,Package.Logo.DefaultStripped|LogoStripped]
384PACKAGE.INF
385\[.]
386BASE_NAME                   = $(BASE_NAME)
387FFS_FILEGUID                = $(FILE_GUID)
388FFS_FILETYPE                = EFI_FV_FILETYPE_FREEFORM
389FFS_ATTRIB_CHECKSUM         = TRUE
390
391IMAGE_SCRIPT =
392{
393  Compress ($(COMPRESS_METHOD)) {
394    $(DEST_DIR)\$(BASE_NAME).sec
395  }
396}
397
398[=============================================================================]
399[Package.PEI_CORE.DefaultStripped]
400PACKAGE.INF
401\[.]
402BASE_NAME                   = $(BASE_NAME)
403FFS_FILEGUID                = $(FILE_GUID)
404FFS_FILETYPE                = EFI_FV_FILETYPE_PEI_CORE
405FFS_ATTRIB_CHECKSUM         = TRUE
406
407IMAGE_SCRIPT =
408{          \
409  $(BASE_NAME).pe32 \
410}
411
412[=============================================================================]
413[Package.PEI_CORE.TE_PEIMStripped]
414PACKAGE.INF
415\[.]
416BASE_NAME                   = $(BASE_NAME)
417FFS_FILEGUID                = $(FILE_GUID)
418FFS_FILETYPE                = EFI_FV_FILETYPE_PEI_CORE
419FFS_ATTRIB_CHECKSUM         = TRUE
420
421IMAGE_SCRIPT =
422{
423  $(BASE_NAME).tes
424}
425
426[=============================================================================]
427[Package.PE32_PEIM.DefaultStripped]
428PACKAGE.INF
429\[.]
430BASE_NAME                   = $(BASE_NAME)
431FFS_FILEGUID                = $(FILE_GUID)
432FFS_FILETYPE                = EFI_FV_FILETYPE_PEIM
433FFS_ATTRIB_CHECKSUM         = TRUE
434
435IMAGE_SCRIPT =
436{ \
437  $(BASE_NAME).dpx \
438  $(BASE_NAME).pe32 \
439}
440
441[=============================================================================]
442[Package.PE32_PEIM.CompressPEIMStripped]
443PACKAGE.INF
444\[.]
445BASE_NAME                   = $(BASE_NAME)
446FFS_FILEGUID                = $(FILE_GUID)
447FFS_FILETYPE                = EFI_FV_FILETYPE_PEIM
448FFS_ATTRIB_CHECKSUM         = TRUE
449
450IMAGE_SCRIPT =
451{
452  $(BASE_NAME).dpx
453  Compress ($(COMPRESS_METHOD)) {
454    $(BASE_NAME).pe32
455  }
456}
457
458[=============================================================================]
459#
460# Package definition for TE files
461#
462[Package.PE32_PEIM.TE_PEIMStripped]
463PACKAGE.INF
464\[.]
465BASE_NAME                   = $(BASE_NAME)
466FFS_FILEGUID                = $(FILE_GUID)
467FFS_FILETYPE                = EFI_FV_FILETYPE_PEIM
468FFS_ATTRIB_CHECKSUM         = TRUE
469
470IMAGE_SCRIPT =
471{
472  $(BASE_NAME).dpx
473  $(BASE_NAME).tes
474}
475
476[=============================================================================]
477[Package.COMBINED_PEIM_DRIVER.DefaultStripped]
478PACKAGE.INF
479\[.]
480BASE_NAME                   = $(BASE_NAME)
481FFS_FILEGUID                = $(FILE_GUID)
482FFS_FILETYPE                = EFI_FV_FILETYPE_COMBINED_PEIM_DRIVER
483FFS_ATTRIB_CHECKSUM         = TRUE
484
485IMAGE_SCRIPT =
486{ \
487  $(BASE_NAME).dpx \
488  $(BASE_NAME).dpxd \
489  $(BASE_NAME).pe32 \
490}
491
492[=============================================================================]
493[Package.BS_DRIVER.DxeMainStripped]
494PACKAGE.INF
495\[.]
496BASE_NAME                   = $(BASE_NAME)
497FFS_FILEGUID                = $(FILE_GUID)
498FFS_FILETYPE                = EFI_FV_FILETYPE_DXE_CORE
499FFS_ATTRIB_CHECKSUM         = TRUE
500
501IMAGE_SCRIPT =
502{
503  Compress ($(COMPRESS_METHOD)) {
504    $(BASE_NAME).pe32
505  }
506}
507
508[=============================================================================]
509[Package.BS_DRIVER.DefaultStripped,Package.RT_DRIVER.DefaultStripped]
510PACKAGE.INF
511\[.]
512BASE_NAME                   = $(BASE_NAME)
513FFS_FILEGUID                = $(FILE_GUID)
514FFS_FILETYPE                = EFI_FV_FILETYPE_DRIVER
515FFS_ATTRIB_CHECKSUM         = TRUE
516
517IMAGE_SCRIPT =
518{
519  Compress ($(COMPRESS_METHOD)) {
520    $(DEST_DIR)\$(BASE_NAME).dpx
521    $(DEST_DIR)\$(BASE_NAME).pe32
522  }
523}
524
525[=============================================================================]
526[Package.FvImageFile.DefaultStripped]
527PACKAGE.INF
528\[.]
529BASE_NAME                   = $(BASE_NAME)
530FFS_FILEGUID                = $(FILE_GUID)
531FFS_FILETYPE                = EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE
532FFS_ATTRIB_CHECKSUM         = TRUE
533
534IMAGE_SCRIPT =
535{
536  Compress ($(COMPRESS_METHOD)) {
537    $(DEST_DIR)\$(SOURCE_FV)Fv.sec
538  }
539}
540
541[=============================================================================]
542[Package.SECURITY_CORE.Default|DefaultStripped]
543PACKAGE.INF
544\[.]
545BASE_NAME                   = $(BASE_NAME)
546FFS_FILEGUID                = $(FILE_GUID)
547FFS_FILETYPE                = EFI_FV_FILETYPE_SECURITY_CORE
548FFS_ATTRIB_CHECKSUM         = FALSE
549
550IMAGE_SCRIPT =
551{          \
552  Blank1.pad \
553  $(BASE_NAME).tes \
554  ResetVec.raw \
555}
556
557[=============================================================================]
558[Package.AcpiTable.Default]
559PACKAGE.INF
560\[.]
561BASE_NAME                   = $(BASE_NAME)
562FFS_FILEGUID                = $(FILE_GUID)
563FFS_FILETYPE                = EFI_FV_FILETYPE_FREEFORM
564FFS_ATTRIB_CHECKSUM         = TRUE
565
566IMAGE_SCRIPT =
567{
568  Compress ($(COMPRESS_METHOD)) {
569    Tool (
570      $(OEMTOOLPATH)\GenCRC32Section
571      ARGS= -i $(SECTION_TARGETS)
572               $(DEST_DIR)\$(BASE_NAME).ui
573            -o $(DEST_DIR)\$(BASE_NAME).crc32
574      OUTPUT = $(DEST_DIR)\$(BASE_NAME).crc32
575    )
576  }
577}
578
579[=============================================================================]
580[Package.AcpiTable.DefaultStripped]
581PACKAGE.INF
582\[.]
583BASE_NAME                   = $(BASE_NAME)
584FFS_FILEGUID                = $(FILE_GUID)
585FFS_FILETYPE                = EFI_FV_FILETYPE_FREEFORM
586FFS_ATTRIB_CHECKSUM         = TRUE
587
588IMAGE_SCRIPT =
589{
590  Compress ($(COMPRESS_METHOD)) {
591    $(SECTION_TARGETS)
592  }
593}
594
595[=============================================================================]
596