]> git.proxmox.com Git - mirror_edk2.git/commit
BaseTools: Update the rule to remove .lib before link it for GCC
authorYonghong Zhu <yonghong.zhu@intel.com>
Thu, 9 Aug 2018 01:25:09 +0000 (09:25 +0800)
committerYonghong Zhu <yonghong.zhu@intel.com>
Thu, 16 Aug 2018 06:17:29 +0000 (14:17 +0800)
commit9ddd4f7f9455d9d07e749a2df65a294a1946cd2c
tree7976a2c6ee3ac91320ccd5a9d248ee621b2acdb9
parentf64fbdde8c99bcf0c97f1348f02fdcd8685f1df2
BaseTools: Update the rule to remove .lib before link it for GCC

We met a case on GCC toolchain for increment build. the case is user
build Helloworld first, then rename the source file Helloworld.c to
Helloworld_new.c and also update the file name to Helloworld_new.c in
.inf file's [sources] section. finally, he rebuild it again.
It cause build failure due to multiple definition of `UefiMain' because
in the .lib file it both have Helloworld.obj and Helloworld_new.obj.
current we use the option 'cr' to create the .lib file while the 'r'
cmd means replace existing or insert new files into the archive. so
in this patch before we create the .lib file, we delete it first.

Cc: Liming Gao <liming.gao@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
BaseTools/Conf/build_rule.template