diff options
author | Laszlo Ersek <lersek@redhat.com> | 2017-05-03 17:54:49 +0200 |
---|---|---|
committer | Laszlo Ersek <lersek@redhat.com> | 2017-05-05 00:55:40 +0200 |
commit | 210270730c0e29d3b3381b519017ec5b3f347144 (patch) | |
tree | 8ebe759e1df6b37174fd9be272c55b2e4ca998ba /OvmfPkg/OvmfPkgIa32X64.dsc | |
parent | 4bf3b994e8b207fc919958b4a212a8342aaaa749 (diff) | |
download | edk2-210270730c0e29d3b3381b519017ec5b3f347144.tar.gz edk2-210270730c0e29d3b3381b519017ec5b3f347144.tar.bz2 edk2-210270730c0e29d3b3381b519017ec5b3f347144.zip |
OvmfPkg: introduce the FD_SIZE_IN_KB macro / build flag
FD_SIZE_xMB defines have existed for flash size selection. They can be
passed as "-D FD_SIZE_xMB" on the command line. Passing multiple of them
at the same time has never been supported; earlier settings on the command
line cannot be overridden.
Introduce the integer valued FD_SIZE_IN_KB macro, which provides the
following improvements:
- several instances of it are permitted on the command line, with the last
one taking effect,
- conditional statements in the DSC and FDF files need only check a single
macro, and multiple values can be checked in a single !if with the ||
operator,
- nested !ifdef / !else ladders can be replaced with flat equality tests,
- in the future, flash sizes can be expressed with a finer than MB
granularity, if necessary.
For now, we're going to preserve the FD_SIZE_xMB defines as convenience
wrappers for FD_SIZE_IN_KB.
FD_SIZE_IN_KB is being added to the DSC files because this way we can
depend on it in both the DSC and FDF files.
Cc: Gary Ching-Pang Lin <glin@suse.com>
Cc: Jordan Justen <jordan.l.justen@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Diffstat (limited to 'OvmfPkg/OvmfPkgIa32X64.dsc')
-rw-r--r-- | OvmfPkg/OvmfPkgIa32X64.dsc | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/OvmfPkg/OvmfPkgIa32X64.dsc b/OvmfPkg/OvmfPkgIa32X64.dsc index 71ac62f023..11866b7207 100644 --- a/OvmfPkg/OvmfPkgIa32X64.dsc +++ b/OvmfPkg/OvmfPkgIa32X64.dsc @@ -40,6 +40,21 @@ DEFINE SMM_REQUIRE = FALSE
DEFINE TLS_ENABLE = FALSE
+ #
+ # Flash size selection. Setting FD_SIZE_IN_KB on the command line directly to
+ # one of the supported values, in place of any of the convenience macros, is
+ # permitted.
+ #
+!ifdef $(FD_SIZE_1MB)
+ DEFINE FD_SIZE_IN_KB = 1024
+!else
+!ifdef $(FD_SIZE_2MB)
+ DEFINE FD_SIZE_IN_KB = 2048
+!else
+ DEFINE FD_SIZE_IN_KB = 2048
+!endif
+!endif
+
[BuildOptions]
GCC:*_UNIXGCC_*_CC_FLAGS = -DMDEPKG_NDEBUG
GCC:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG
|