2102707 OvmfPkg: introduce the FD_SIZE_IN_KB macro / build flag

Authored and Committed by lersek 7 years ago
    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>
    
        
file modified
+3 -11
file modified
+15 -0
file modified
+15 -0
file modified
+15 -0