From: Khem Raj Date: Fri, 15 Jan 2016 18:38:52 +0000 (+0000) Subject: syslinux: Set LD to avoid using build host ld X-Git-Tag: lucaceresoli/bug-15201-perf-libtraceevent-missing~27434 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c4897af85eace49e3c27aebc1448227105286e30;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git syslinux: Set LD to avoid using build host ld base ld is used during link phase and since its x86 so it works mostly, however it can cause problems depending upon build host. During cross build we should use cross linker Fixes errors e.g. ld -shared -m elf_i386 --hash-style=gnu -T /home/ubuntu/work/oe/openembedded-core/build/tmp-glibc/work/i586-oe-linux/syslinux/6.03-r0/syslinux-6.03/com32/lib/i386/elf.ld -soname libcom32.c32 -o libcom32.elf zlib/adler32.o zlib/compress. o zlib/crc32.o zlib/uncompr.o zlib/deflate.o zlib/trees.o zlib/zutil.o zlib/inflate.o zlib/infback.o zlib/inftrees.o zlib/inffast.o sys/zfile.o sys/zfopen.o libpng/png.o libpng/pngset.o libpng/pngget.o libpng/pngrutil.o libpng/pngtrans.o libpng/pngwutil.o libpng/pngread.o libpng/pngrio.o libpng/pngwio.o libpng/pngwrite.o libpng/pngrtran.o libpng/pngwtran.o libpng/pngmem.o libpng/pngerror.o libpng/pngpread.o jpeg/tinyjpeg.o jpeg/jidctflt.o jpeg/decode1.o jpeg/decode3.o jpe g/rgb24.o jpeg/bgr24.o jpeg/yuv420p.o jpeg/grey.o jpeg/rgba32.o jpeg/bgra32.o pci/cfgtype.o pci/scan.o pci/bios.o pci/readb.o pci/readw.o pci/readl.o pci/writeb.o pci/writew.o pci/writel.o sys/vesacon_write.o sys/vesaserial_write.o sys/ve sa/initvesa.o sys/vesa/drawtxt.o sys/vesa/background.o sys/vesa/alphatbl.o sys/vesa/screencpy.o sys/vesa/fmtpixel.o sys/vesa/i915resolution.o syslinux/reboot.o syslinux/keyboard.o syslinux/version.o syslinux/pxe_get_cached.o syslinux/pxe_get_nic.o syslinux/pxe_dns.o syslinux/video/fontquery.o syslinux/video/reportmode.o syslinux/addlist.o syslinux/freelist.o syslinux/memmap.o syslinux/movebits.o syslinux/shuffle.o syslinux/shuffle_pm.o syslinux/shuffle_rm.o syslinux/bios$oot.o syslinux/zonelist.o syslinux/dump_mmap.o syslinux/dump_movelist.o syslinux/run_default.o syslinux/run_command.o syslinux/cleanup.o syslinux/localboot.o syslinux/runimage.o syslinux/loadfile.o syslinux/floadfile.o syslinux/zloadfile$o syslinux/load_linux.o syslinux/initramfs.o syslinux/initramfs_file.o syslinux/initramfs_loadfile.o syslinux/initramfs_archive.o sys/libansi.o sys/gpxe.o atexit.o onexit.o abort.o | ld: zlib/deflate.o: unrecognized relocation (0x2b) in section `.text' | ld: final link failed: Bad value | make[4]: *** [libcom32.elf] Error 1 Signed-off-by: Khem Raj --- diff --git a/meta/recipes-devtools/syslinux/syslinux_6.03.bb b/meta/recipes-devtools/syslinux/syslinux_6.03.bb index 8534528d7ed..51d54742881 100644 --- a/meta/recipes-devtools/syslinux/syslinux_6.03.bb +++ b/meta/recipes-devtools/syslinux/syslinux_6.03.bb @@ -59,11 +59,11 @@ do_compile() { # Rebuild only the installer; keep precompiled bootloaders # as per author's request (doc/distrib.txt) - oe_runmake CC="${CC} ${CFLAGS}" LDFLAGS="${LDFLAGS}" firmware="bios" installer + oe_runmake CC="${CC} ${CFLAGS}" LD="${LD}" LDFLAGS="${LDFLAGS}" firmware="bios" installer } do_install() { - oe_runmake CC="${CC} ${CFLAGS}" install INSTALLROOT="${D}" firmware="bios" + oe_runmake CC="${CC} ${CFLAGS}" LD="${LD}" install INSTALLROOT="${D}" firmware="bios" install -d ${D}${datadir}/syslinux/ install -m 644 ${S}/bios/core/ldlinux.sys ${D}${datadir}/syslinux/