mirror of
https://git.yoctoproject.org/poky
synced 2026-04-30 21:32:13 +02:00
mips: Enable gnu-hash-style on glibc
latest glibc 2.31 [1] and binutils [2] has finally added the needed support for gnu hash-style, which brings mips into same fold as other architectures Fix check for MIPS specific section for gnu hash information [1] https://sourceware.org/ml/libc-alpha/2019-06/msg00456.html [2] https://sourceware.org/ml/binutils/2019-07/msg00098.html (From OE-Core rev: 9ff90bf04a4c422feaea25180155e4954648f68c) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
@@ -373,11 +373,10 @@ def package_qa_hash_style(path, name, d, elf, messages):
|
||||
for line in phdrs.split("\n"):
|
||||
if "SYMTAB" in line:
|
||||
has_syms = True
|
||||
if "GNU_HASH" in line:
|
||||
if "GNU_HASH" or "DT_MIPS_XHASH" in line:
|
||||
sane = True
|
||||
if "[mips32]" in line or "[mips64]" in line:
|
||||
if ("[mips32]" in line or "[mips64]" in line) and d.getVar('TCLIBC') == "musl":
|
||||
sane = True
|
||||
|
||||
if has_syms and not sane:
|
||||
package_qa_add_message(messages, "ldflags", "No GNU_HASH in the ELF binary %s, didn't pass LDFLAGS?" % path)
|
||||
|
||||
|
||||
@@ -586,8 +586,6 @@ export BUILD_LDFLAGS = "-L${STAGING_LIBDIR_NATIVE} \
|
||||
BUILDSDK_LDFLAGS = "-Wl,-O1"
|
||||
|
||||
LINKER_HASH_STYLE ??= "gnu"
|
||||
# mips does not support GNU hash style therefore we override
|
||||
LINKER_HASH_STYLE_mipsarch = "sysv"
|
||||
|
||||
TARGET_LINK_HASH_STYLE ?= "${@['-Wl,--hash-style=gnu',''][d.getVar('LINKER_HASH_STYLE') != 'gnu']}"
|
||||
|
||||
@@ -595,6 +593,8 @@ ASNEEDED ?= "-Wl,--as-needed"
|
||||
|
||||
export LDFLAGS = "${TARGET_LDFLAGS}"
|
||||
TARGET_LDFLAGS = "-Wl,-O1 ${TARGET_LINK_HASH_STYLE} ${ASNEEDED}"
|
||||
# mips does not support GNU hash style therefore we override
|
||||
LINKER_HASH_STYLE_mipsarch_libc-musl = "sysv"
|
||||
|
||||
# Pass parallel make options to the compile task
|
||||
EXTRA_OEMAKE_prepend_task-compile = "${PARALLEL_MAKE} "
|
||||
|
||||
Reference in New Issue
Block a user