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

(From OE-Core rev: c4897af85eace49e3c27aebc1448227105286e30)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Khem Raj 2016-01-15 18:38:52 +00:00 committed by Richard Purdie
parent 136db70700
commit 527cd95c17
1 changed files with 2 additions and 2 deletions

View File

@ -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/