15079b1 BaseTools/VfrCompile: honor EXTRA_LDFLAGS

Authored and Committed by lersek 5 years ago
    BaseTools/VfrCompile: honor EXTRA_LDFLAGS
    
    In commit 81502cee20ac ("BaseTools/Source/C: take EXTRA_LDFLAGS from the
    caller", 2018-08-16), I missed that "VfrCompile/GNUmakefile" does not use
    BUILD_LFLAGS in the APPLICATION linking rule, unlike "app.makefile" does.
    Instead, "VfrCompile/GNUmakefile" uses the (undefined) LFLAGS macro.
    Therefore commit 81502cee20ac did not cover the linking step of
    VfrCompile.
    
    Thankfully, the structure of the linking rules is the same, between
    "app.makefile" and "VfrCompile/GNUmakefile". Rename the undefined LFLAGS
    macro in "VfrCompile/GNUmakefile" to VFR_LFLAGS (for consistency with
    VFR_CXXFLAGS), and set it to EXTRA_LDFLAGS.
    
    As a result, we have:
    
                 | compilation                    | linking
      -----------+--------------------------------+----------------------
      VfrCompile | VFR_CXXFLAGS =                 | VFR_LFLAGS =
                 | BUILD_OPTFLAGS =               | EXTRA_LDFLAGS
                 | '-O2' + EXTRA_OPTFLAGS         |
      -----------+--------------------------------+----------------------
      other apps | BUILD_CFLAGS/BUILD_CXXFLAGS =  | BUILD_LFLAGS =
                 | [...] + BUILD_OPTFLAGS =       | [...] + EXTRA_LDFLAGS
                 | [...] + '-O2' + EXTRA_OPTFLAGS |
    
    This table shows
    - that the VfrCompile compilation and linking flags are always a subset of
      the corresponding flags used by the other apps,
    - and that the EXTRA flags are always at the end.
    
    Cc: Liming Gao <liming.gao@intel.com>
    Cc: Yonghong Zhu <yonghong.zhu@intel.com>
    Ref: https://bugzilla.redhat.com/show_bug.cgi?id=1540244
    Fixes: 81502cee20ac4046f08bb4aec754c7091c8808dc
    Contributed-under: TianoCore Contribution Agreement 1.1
    Signed-off-by: Laszlo Ersek <lersek@redhat.com>