HI Liming, If no further concern, would you mind to help get this patch merged? Thanks! Best Regards, *Lean Sheng Tan* On Tue, 28 Mar 2023 at 07:42, gaoliming via groups.io wrote: > Reviewed-by: Liming Gao > > > -----邮件原件----- > > 发件人: devel@edk2.groups.io 代表 Patrick > > Rudolph > > 发送时间: 2023年3月17日 22:06 > > 抄送: devel@edk2.groups.io; guo.dong@intel.com; gua.guo@intel.com; > > james.lu@intel.com; ray.ni@intel.com; mhaeuser@posteo.de; > > ardb@kernel.org > > 主题: [edk2-devel] [PATCH 1/3] BaseTools/Conf/tools_def: Fix linking using > > CLANGDWARF_IA32 > > > > The clang toolchain might default to fPIE/fPIC, which prevents > > lld from linking the objects into a binary. > > > > Specify -fno-pie -fno-pic as done on GCC to fix linking. > > > > Test: > > Building the Universal Payload using the command > > 'python UefiPayloadPkg/UniversalPayloadBuild.py -a IA32' actually > > works. > > > > Signed-off-by: Patrick Rudolph > > Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=4356 > > --- > > BaseTools/Conf/tools_def.template | 14 +++++++------- > > 1 file changed, 7 insertions(+), 7 deletions(-) > > > > diff --git a/BaseTools/Conf/tools_def.template > > b/BaseTools/Conf/tools_def.template > > index 471eb67c0c..9b59bd75c3 100755 > > --- a/BaseTools/Conf/tools_def.template > > +++ b/BaseTools/Conf/tools_def.template > > @@ -2888,7 +2888,7 @@ DEFINE CLANGDWARF_X64_DLINK2_FLAGS > > = -Wl,--defsym=PECOFF_HEADER_SIZE=0x22 > > *_CLANGDWARF_IA32_RC_PATH = > > DEF(CLANGDWARF_IA32_PREFIX)llvm-rc > > > > > > > > *_CLANGDWARF_IA32_ASLCC_FLAGS = DEF(GCC_ASLCC_FLAGS) > > -m32 -fno-lto DEF(CLANG38_IA32_TARGET) > > > > -*_CLANGDWARF_IA32_ASLDLINK_FLAGS = > > DEF(CLANGDWARF_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_i386 -fuse-ld=lld > > > > +*_CLANGDWARF_IA32_ASLDLINK_FLAGS = > > DEF(CLANGDWARF_IA32_X64_ASLDLINK_FLAGS) -Wl,-m,elf_i386 -fuse-ld=lld > > -no-pie > > > > *_CLANGDWARF_IA32_ASM_FLAGS = DEF(GCC5_ASM_FLAGS) > > -m32 -march=i386 DEF(CLANG38_IA32_TARGET) > > > > *_CLANGDWARF_IA32_RC_FLAGS = > > DEF(GCC_IA32_RC_FLAGS) > > > > *_CLANGDWARF_IA32_OBJCOPY_FLAGS = > > > > @@ -2897,17 +2897,17 @@ DEFINE CLANGDWARF_X64_DLINK2_FLAGS > > = -Wl,--defsym=PECOFF_HEADER_SIZE=0x22 > > *_CLANGDWARF_IA32_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) > > DEF(CLANG38_IA32_TARGET) > > > > *_CLANGDWARF_IA32_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) > > DEF(CLANG38_IA32_TARGET) > > > > > > > > -DEBUG_CLANGDWARF_IA32_CC_FLAGS = > > DEF(CLANG38_ALL_CC_FLAGS) -m32 -Oz -flto -march=i586 > > DEF(CLANG38_IA32_TARGET) -g -malign-double > > > > +DEBUG_CLANGDWARF_IA32_CC_FLAGS = > > DEF(CLANG38_ALL_CC_FLAGS) -fno-pic -fno-pie -m32 -Oz -flto -march=i586 > > DEF(CLANG38_IA32_TARGET) -g -malign-double > > > > DEBUG_CLANGDWARF_IA32_DLINK_FLAGS = > > DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -flto -Wl,-O3 -Wl,-melf_i386 > > -Wl,--oformat,elf32-i386 > > > > -DEBUG_CLANGDWARF_IA32_DLINK2_FLAGS = > > DEF(CLANGDWARF_IA32_DLINK2_FLAGS) -O3 -fuse-ld=lld > > > > +DEBUG_CLANGDWARF_IA32_DLINK2_FLAGS = > > DEF(CLANGDWARF_IA32_DLINK2_FLAGS) -O3 -fuse-ld=lld -no-pie > > > > > > > > -RELEASE_CLANGDWARF_IA32_CC_FLAGS = > > DEF(CLANG38_ALL_CC_FLAGS) -m32 -Oz -flto -march=i586 > > DEF(CLANG38_IA32_TARGET) -malign-double > > > > +RELEASE_CLANGDWARF_IA32_CC_FLAGS = > > DEF(CLANG38_ALL_CC_FLAGS) -fno-pic -fno-pie -m32 -Oz -flto -march=i586 > > DEF(CLANG38_IA32_TARGET) -malign-double > > > > RELEASE_CLANGDWARF_IA32_DLINK_FLAGS = > > DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -flto -Wl,-O3 -Wl,-melf_i386 > > -Wl,--oformat,elf32-i386 > > > > -RELEASE_CLANGDWARF_IA32_DLINK2_FLAGS = > > DEF(CLANGDWARF_IA32_DLINK2_FLAGS) -O3 -fuse-ld=lld > > > > +RELEASE_CLANGDWARF_IA32_DLINK2_FLAGS = > > DEF(CLANGDWARF_IA32_DLINK2_FLAGS) -O3 -fuse-ld=lld -no-pie > > > > > > > > -NOOPT_CLANGDWARF_IA32_CC_FLAGS = > > DEF(CLANG38_ALL_CC_FLAGS) -m32 -O0 -march=i586 > > DEF(CLANG38_IA32_TARGET) -g -malign-double > > > > +NOOPT_CLANGDWARF_IA32_CC_FLAGS = > > DEF(CLANG38_ALL_CC_FLAGS) -fno-pic -fno-pie -m32 -O0 -march=i586 > > DEF(CLANG38_IA32_TARGET) -g -malign-double > > > > NOOPT_CLANGDWARF_IA32_DLINK_FLAGS = > > DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -Wl,-O0 -Wl,-melf_i386 > > -Wl,--oformat,elf32-i386 > > > > -NOOPT_CLANGDWARF_IA32_DLINK2_FLAGS = > > DEF(CLANGDWARF_IA32_DLINK2_FLAGS) -O0 -fuse-ld=lld > > > > +NOOPT_CLANGDWARF_IA32_DLINK2_FLAGS = > > DEF(CLANGDWARF_IA32_DLINK2_FLAGS) -O0 -fuse-ld=lld -no-pie > > > > > > > > ########################## > > > > # CLANGDWARF X64 definitions > > > > -- > > 2.39.1 > > > > > > > > -=-=-=-=-=-= > > Groups.io Links: You receive all messages sent to this group. > > View/Reply Online (#101340): > > https://edk2.groups.io/g/devel/message/101340 > > Mute This Topic: https://groups.io/mt/97673648/4905953 > > Group Owner: devel+owner@edk2.groups.io > > Unsubscribe: https://edk2.groups.io/g/devel/unsub > > [gaoliming@byosoft.com.cn] > > -=-=-=-=-=-= > > > > > > > > > > >