Fix for 32-bit uninative
cover Fix for 32-bit uninative
The following changes since commit c093fd8bd2fbf070728f5401ce3e6cf951fa820d:
linux-yocto/4.1: Fix kernel oops on qemuarm boot (2015-12-08 17:22:31 +0000)
are available in the git repository at:
git://git.yoctoproject.org/poky-contrib rewitt/uninative-32bit-fix
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=rewitt/uninative-32bit-fix
Randy Witt (1):
uninative.bbclass: Choose the correct loader based on BUILD_ARCH
meta/classes/uninative.bbclass | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
Signature · 1 line
2.4.3
PATCH 1/1 uninative.bbclass: Choose the correct loader based on BUILD_ARCH
Previously UNINATIVE_LOADER was always ld-linux-x86-64.so.2. That is incorrect when the host is 32-bit.
This change also changes to using ?= so the user can override UNINATIVE_LOADER if so desired.
[YOCTO #8124]
--- meta/classes/uninative.bbclass | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
meta/classes/uninative.bbclass +1 -1
@@ -1,6 +1,6 @@ NATIVELSBSTRING = "universal" -UNINATIVE_LOADER = "${STAGING_DIR_NATIVE}/lib/ld-linux-x86-64.so.2" +UNINATIVE_LOADER ?= "${@bb.utils.contains('BUILD_ARCH', 'x86_64', '${STAGING_DIR_NATIVE}/lib/ld-linux-x86-64.so.2', '${STAGING_DIR_NATIVE}/lib/ld-linux.so.2', d)}" addhandler uninative_eventhandler uninative_eventhandler[eventmask] = "bb.event.BuildStarted"
Signature · 1 line
2.4.3
Re: [jethro][master][PATCH 1/1] uninative.bbclass: Choose the correct loader based on BUILD_ARCH
Quoted 5 lines · Randy Witt
(quoted diff) +1
-1-UNINATIVE_LOADER = "${STAGING_DIR_NATIVE}/lib/ld-linux-x86-64.so.2" +UNINATIVE_LOADER ?= "${@bb.utils.contains('BUILD_ARCH', 'x86_64','${STAGING_DIR_NATIVE}/lib/ld-linux-x86-64.so.2',
'${STAGING_DIR_NATIVE}/lib/ld-linux.so.2', d)}"
Would it be neater, and more flexible when other arches are different (specifically I'm thinking of aarch64 here) to do:
UNINATIVE_LOADER = "${STAGING_DIR_NATIVE}/lib/ld-linux.so.2" UNINATIVE_LOADER_x86-64 = "'${STAGING_DIR_NATIVE}/lib/ld-linux-x86-64.so.2"
At least I think that overload is correct...
Ross
Re: [jethro][master][PATCH 1/1] uninative.bbclass: Choose the correct loader based on BUILD_ARCH
Quoted 12 lines · Ross
Quoted 5 lines · Randy Witt
(quoted diff) +1
-1-UNINATIVE_LOADER = "${STAGING_DIR_NATIVE}/lib/ld-linux-x86-64.so.2" +UNINATIVE_LOADER ?= "${@bb.utils.contains('BUILD_ARCH', 'x86_64','${STAGING_DIR_NATIVE}/lib/ld-linux-x86-64.so.2',
'${STAGING_DIR_NATIVE}/lib/ld-linux.so.2', d)}"Would it be neater, and more flexible when other arches are different (specifically I'm thinking of aarch64 here) to do:
Quoted 2 lines
UNINATIVE_LOADER= "${STAGING_DIR_NATIVE}/lib/ld-linux.so.2" UNINATIVE_LOADER_x86-64 = "'${STAGING_DIR_NATIVE}/lib/ld-linux-x86-64.so.2"
Yes, I like that better. I'll check the override and test it again.
Quoted 4 lines
At least I think that overload is correct...
Ross
Re: [jethro][master][PATCH 1/1] uninative.bbclass: Choose the correct loader based on BUILD_ARCH
In reply to Burton, RossQuoted 8 lines · Ross
Would it be neater, and more flexible when other arches are different (specifically I'm thinking of aarch64 here) to do:
UNINATIVE_LOADER= "${STAGING_DIR_NATIVE}/lib/ld-linux.so.2" UNINATIVE_LOADER_x86-64 = "'${STAGING_DIR_NATIVE}/lib/ld-linux-x86-64.so.2"At least I think that overload is correct...
Of course BUILD_ARCH != TARGET_ARCH so this is wrong.
Ross