On 07/09/15 15:47, Leif Lindholm wrote: > Some toolchains, at least Fedora GCC, generate inline unwind tables in > object files. These confuses GenFw to no end, leading to build failures: > GenFw: ERROR 3000: Invalid WriteSections64(): ... > unsupported ELF EM_AARCH64 relocation 0x105. > GenFw: ERROR 3000: Invalid WriteSections64(): ... > unsupported ELF EM_AARCH64 relocation 0x0. > > I am aware of no current use of these tables, so explicitly disable > their generation for aarch64. > > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Leif Lindholm <leif.lindh...@linaro.org> > --- > BaseTools/Conf/tools_def.template | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/BaseTools/Conf/tools_def.template > b/BaseTools/Conf/tools_def.template > index 7edd759..8e5750e 100644 > --- a/BaseTools/Conf/tools_def.template > +++ b/BaseTools/Conf/tools_def.template > @@ -3818,7 +3818,7 @@ DEFINE GCC_IA32_CC_FLAGS = > DEF(GCC_ALL_CC_FLAGS) -m32 -malign-double - > DEFINE GCC_X64_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -mno-red-zone > -Wno-address -mno-stack-arg-probe > DEFINE GCC_IPF_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) > -minline-int-divide-min-latency > DEFINE GCC_ARM_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) > -mword-relocations -mlittle-endian -mabi=aapcs -mapcs -fno-short-enums > -save-temps -fsigned-char -ffunction-sections -fdata-sections > -fomit-frame-pointer -Wno-address -mthumb -mfloat-abi=soft > -DEFINE GCC_AARCH64_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -mcmodel=large > -mlittle-endian -fno-short-enums -save-temps -fverbose-asm -fsigned-char > -ffunction-sections -fdata-sections -fomit-frame-pointer -fno-builtin > -Wno-address > +DEFINE GCC_AARCH64_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -mcmodel=large > -mlittle-endian -fno-short-enums -save-temps -fverbose-asm -fsigned-char > -ffunction-sections -fdata-sections -fomit-frame-pointer -fno-builtin > -Wno-address -fno-asynchronous-unwind-tables > DEFINE GCC_DLINK_FLAGS_COMMON = -nostdlib --pie > DEFINE GCC_IA32_X64_DLINK_COMMON = DEF(GCC_DLINK_FLAGS_COMMON) > --gc-sections > DEFINE GCC_ARM_AARCH64_DLINK_COMMON= --emit-relocs -nostdlib --gc-sections > -u $(IMAGE_ENTRY_POINT) -e $(IMAGE_ENTRY_POINT) -Map > $(DEST_DIR_DEBUG)/$(BASE_NAME).map >
Am I right to think this is a verbatim repost from http://thread.gmane.org/gmane.comp.bios.tianocore.devel/12482 ? If so, then I think Olivier should review it and then just go ahead and commit it, preferably with: Tested-by: Wei Huang <w...@redhat.com> based on Wei's message with Message-Id <54f740b4.3050...@redhat.com>. Unfortunately I can't find that email at the moment in the gmane archive, but I'm attaching it. Thanks Laszlo
--- Begin Message ---I can confirm that this patch fixes my problem. The machine is a native AArch64 server, with Fedora GCC 4.8.3. Thanks, -Wei On 03/04/2015 03:13 AM, Laszlo Ersek wrote: > On 02/06/15 14:52, Leif Lindholm wrote: >> Some toolchains, at least Fedora GCC, generate inline unwind tables in >> object files. These confuses GenFw to no end, leading to build failures: >> GenFw: ERROR 3000: Invalid WriteSections64(): ... >> unsupported ELF EM_AARCH64 relocation 0x105. >> GenFw: ERROR 3000: Invalid WriteSections64(): ... >> unsupported ELF EM_AARCH64 relocation 0x0. >> >> I am aware of no current use of these tables, so explicitly disable >> their generation for aarch64. >> >> Contributed-under: TianoCore Contribution Agreement 1.0 >> Signed-off-by: Leif Lindholm <leif.lindh...@linaro.org> >> --- >> BaseTools/Conf/tools_def.template | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/BaseTools/Conf/tools_def.template >> b/BaseTools/Conf/tools_def.template >> index f008024..04fdeba 100644 >> --- a/BaseTools/Conf/tools_def.template >> +++ b/BaseTools/Conf/tools_def.template >> @@ -3817,7 +3817,7 @@ DEFINE GCC_IA32_CC_FLAGS = >> DEF(GCC_ALL_CC_FLAGS) -m32 -malign-double - >> DEFINE GCC_X64_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -mno-red-zone >> -Wno-address -mno-stack-arg-probe >> DEFINE GCC_IPF_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) >> -minline-int-divide-min-latency >> DEFINE GCC_ARM_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) >> -mword-relocations -mlittle-endian -mabi=aapcs -mapcs -fno-short-enums >> -save-temps -fsigned-char -ffunction-sections -fdata-sections >> -fomit-frame-pointer -Wno-address -mthumb -mfloat-abi=soft >> -DEFINE GCC_AARCH64_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -mcmodel=large >> -mlittle-endian -fno-short-enums -save-temps -fverbose-asm -fsigned-char >> -ffunction-sections -fdata-sections -fomit-frame-pointer -fno-builtin >> -Wno-address >> +DEFINE GCC_AARCH64_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) -mcmodel=large >> -mlittle-endian -fno-short-enums -save-temps -fverbose-asm -fsigned-char >> -ffunction-sections -fdata-sections -fomit-frame-pointer -fno-builtin >> -Wno-address -fno-asynchronous-unwind-tables >> DEFINE GCC_DLINK_FLAGS_COMMON = -nostdlib --pie >> DEFINE GCC_IA32_X64_DLINK_COMMON = DEF(GCC_DLINK_FLAGS_COMMON) >> --gc-sections >> DEFINE GCC_ARM_AARCH64_DLINK_COMMON= -Ttext=0x0 --emit-relocs -nostdlib >> --gc-sections -u $(IMAGE_ENTRY_POINT) -e $(IMAGE_ENTRY_POINT) -Map >> $(DEST_DIR_DEBUG)/$(BASE_NAME).map > > Ping -- a colleague of mine has just run into this. (I don't use Fedora, > but many of my colleagues do.) > > Thanks > Laszlo >
--- End Message ---
------------------------------------------------------------------------------ Don't Limit Your Business. Reach for the Cloud. GigeNET's Cloud Solutions provide you with the tools and support that you need to offload your IT needs and focus on growing your business. Configured For All Businesses. Start Your Cloud Today. https://www.gigenetcloud.com/
_______________________________________________ edk2-devel mailing list edk2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-devel