-
Notifications
You must be signed in to change notification settings - Fork 461
/
SiPkgBuildOption.dsc
130 lines (111 loc) · 4.77 KB
/
SiPkgBuildOption.dsc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
## @file
# Silicon build option configuration file.
#
# Copyright (c) 2019 Intel Corporation. All rights reserved. <BR>
#
# SPDX-License-Identifier: BSD-2-Clause-Patent
#
##
[BuildOptions]
# Define Build Options both for EDK and EDKII drivers.
# SA
!if gSiPkgTokenSpaceGuid.PcdPttEnable == TRUE
DEFINE PTT_BUILD_OPTION = -DPTT_FLAG=1
!else
DEFINE PTT_BUILD_OPTION =
!endif
#
# System Agent
#
!if gSiPkgTokenSpaceGuid.PcdSgEnable == TRUE
DEFINE DSC_SG_BUILD_OPTIONS = -DSG_SUPPORT=1
!else
DEFINE DSC_SG_BUILD_OPTIONS =
!endif
!if gSiPkgTokenSpaceGuid.PcdBdatEnable == TRUE
DEFINE BDAT_BUILD_OPTION = -DBDAT_SUPPORT=1
!else
DEFINE BDAT_BUILD_OPTION =
!endif
DEFINE SLE_BUILD_OPTIONS =
!if $(TARGET) == RELEASE
!if gSiPkgTokenSpaceGuid.PcdSiCatalogDebugEnable == TRUE
DEFINE DEBUG_BUILD_OPTIONS =
!else
# MDEPKG_NDEBUG is introduced for the intention
# of size reduction when compiler optimization is disabled. If MDEPKG_NDEBUG is
# defined, then debug and assert related macros wrapped by it are the NULL implementations.
DEFINE DEBUG_BUILD_OPTIONS = -DMDEPKG_NDEBUG
!endif
!else
DEFINE DEBUG_BUILD_OPTIONS =
!endif
!if ($(TARGET) == RELEASE) AND (gSiPkgTokenSpaceGuid.PcdSiCatalogDebugEnable == TRUE)
DEFINE RELEASE_CATALOG_BUILD_OPTIONS = -DRELEASE_CATALOG
!else
DEFINE RELEASE_CATALOG_BUILD_OPTIONS =
!endif
!if gSiPkgTokenSpaceGuid.PcdOptimizeCompilerEnable == FALSE
DEFINE OPTIMIZE_DISABLE_OPTIONS = -Od -GL-
!else
DEFINE OPTIMIZE_DISABLE_OPTIONS =
!endif
DEFINE HSLE_BUILD_OPTIONS =
!if gSiPkgTokenSpaceGuid.PcdCflCpuEnable == TRUE
DEFINE CPU_FLAGS = -DCPU_CFL
!else
DEFINE CPU_FLAGS =
!endif
DEFINE DSC_SIPKG_FEATURE_BUILD_OPTIONS = $(BDAT_BUILD_OPTION) $(PTT_BUILD_OPTION) $(DEBUG_BUILD_OPTIONS)
DEFINE DSC_SIPKG_FEATURE_BUILD_OPTIONS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS) $(DSC_SG_BUILD_OPTIONS) $(SIMICS_BUILD_OPTIONS) $(CPU_FLAGS) $(HSLE_BUILD_OPTIONS) $(RELEASE_CATALOG_BUILD_OPTIONS) $(DSC_TXT_BUILD_OPTIONS)
!if gSiPkgTokenSpaceGuid.PcdSourceDebugEnable == TRUE
*_*_X64_GENFW_FLAGS = --keepexceptiontable
!endif
[BuildOptions.Common.EDKII]
#
# For IA32 Global Build Flag
#
*_*_IA32_PP_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS)
*_*_IA32_CC_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS) -D PI_SPECIFICATION_VERSION=0x00010015 -DASF_PEI
*_*_IA32_VFRPP_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS)
*_*_IA32_APP_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS)
*_*_IA32_ASLPP_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS)
*_*_IA32_ASLCC_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS)
#
# For IA32 Specific Build Flag
#
MSFT: *_*_IA32_ASM_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS)
MSFT: *_*_IA32_CC_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS) $(OPTIMIZE_DISABLE_OPTIONS) -D PI_SPECIFICATION_VERSION=0x00010015 -DASF_PEI
MSFT: *_*_IA32_VFRPP_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS) $(OPTIMIZE_DISABLE_OPTIONS)
MSFT: *_*_IA32_APP_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS) $(OPTIMIZE_DISABLE_OPTIONS)
MSFT: *_*_IA32_ASLPP_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS) $(OPTIMIZE_DISABLE_OPTIONS)
MSFT: *_*_IA32_ASLCC_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS) $(OPTIMIZE_DISABLE_OPTIONS)
#
# For X64 Global Build Flag
#
*_*_X64_PP_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS)
*_*_X64_CC_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS) -D PI_SPECIFICATION_VERSION=0x00010015
*_*_X64_VFRPP_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS)
*_*_X64_APP_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS)
*_*_X64_ASLPP_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS)
*_*_X64_ASLCC_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS)
#
# For X64 Specific Build Flag
#
MSFT: *_*_X64_ASM_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS)
MSFT: *_*_X64_CC_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS) $(OPTIMIZE_DISABLE_OPTIONS) -D PI_SPECIFICATION_VERSION=0x00010015
MSFT: *_*_X64_VFRPP_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS) $(OPTIMIZE_DISABLE_OPTIONS)
MSFT: *_*_X64_APP_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS) $(OPTIMIZE_DISABLE_OPTIONS)
MSFT: *_*_X64_ASLPP_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS)
MSFT: *_*_X64_ASLCC_FLAGS = $(DSC_SIPKG_FEATURE_BUILD_OPTIONS)
#
# For Xcode Specific Build Flag
#
# Override assembly code build order
*_XCODE5_*_*_BUILDRULEORDER = nasm S s
# Align 47bfbd7f8069e523798ef973c8eb0abd5c6b0746 to fix the usage of VA_START in undefined way
*_XCODE5_*_CC_FLAGS = -Wno-varargs
# Force PE/COFF sections to be aligned at 4KB boundaries to support page level protection of runtime modules
[BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER]
MSFT: *_*_*_DLINK_FLAGS = /ALIGN:4096
GCC: *_GCC*_*_DLINK_FLAGS = -z common-page-size=0x1000