Make multi-machine toolchains to co-exist (revised again)
PATCH v4 1/1 Make multi-machine toolchains to co-exist (revised again)
Hey all,
As one of the folks who suggested something else, here's my take.
We modify the prefix for cross stuff to dump everything into MULTIMACH_TARGET_SYS in the sysroot.
Pro: It should work for all the cases
Con: We're back to having a 'special' directory of cross stuff
Pro: It's separate but still valid for $ORIGIN mangling, which is the other problem we had before.
I've got a qemuarm console-image and then beagleboard console-image build going now and that's going to take time.
classes/cross.bbclass +2 -2
@@ -44,9 +44,9 @@ target_base_libdir := "${base_libdir}" target_prefix := "${prefix}" # Overrides for paths -prefix = "${STAGING_DIR_NATIVE}${prefix_native}" +prefix = "${STAGING_DIR_NATIVE}${prefix_native}/${MULTIMACH_TARGET_SYS}" base_prefix = "${STAGING_DIR_NATIVE}" -exec_prefix = "${STAGING_DIR_NATIVE}${prefix_native}" +exec_prefix =
"${STAGING_DIR_NATIVE}${prefix_native}/${MULTIMACH_TARGET_SYS}"
base_sbindir = "${base_prefix}/bin"
sbindir = "${exec_prefix}/bin"
conf/bitbake.conf +0 -1
@@ -299,7 +299,7 @@ STAGING_DIR_JAVA = "${STAGING_DIR}/java" STAGING_DIR_NATIVE = "${STAGING_DIR}/${BUILD_SYS}" STAGING_BINDIR_NATIVE = "${STAGING_DIR_NATIVE}${bindir_native}" STAGING_SBINDIR_NATIVE = "${STAGING_DIR_NATIVE}${sbindir_native}" -STAGING_BINDIR_CROSS =
"${STAGING_DIR_NATIVE}${bindir_native}/${MULTIMACH_HOST_SYS}" +STAGING_BINDIR_CROSS = "${STAGING_DIR_NATIVE}${prefix_native}/${MULTIMACH_TARGET_SYS}${base_bindir_native}"
STAGING_BINDIR_CROSS_BASEPKG =
"${STAGING_DIR_NATIVE}${bindir_native}/${BASEPKG_TARGET_SYS}"
STAGING_LIBDIR_NATIVE = "${STAGING_DIR_NATIVE}${libdir_native}" STAGING_INCDIR_NATIVE = "${STAGING_DIR_NATIVE}${includedir_native}"
Signature · 2 lines
Tom Rini Mentor Graphics Corporation
Quoted 12 lines · Tom Rini
Hey all,
As one of the folks who suggested something else, here's my take.
We modify the prefix for cross stuff to dump everything into
MULTIMACH_TARGET_SYSin the sysroot.Pro: It should work for all the cases
Con: We're back to having a 'special' directory of cross stuff
Pro: It's separate but still valid for $ORIGIN mangling, which is the other problem we had before.
Quoted 4 lines
I've got a qemuarm console-image and then beagleboard console-image build going now and that's going to take time.
Signed-off-by Tom Rini <[email protected]>
hah indecently I have been testing similar patch per our discussions on IRC but trying to get program-transform-name to generate unique compiler names which can coexist in <native sysroot>/usr/bin meanwhile I work on that this portion looks ok to go in.
Quoted 46 lines
classes/cross.bbclass +0
-0@@ -44,9 +44,9 @@ target_base_libdir := "${base_libdir}"target_prefix := "${prefix}"
# Overrides for paths
classes/cross.bbclass +1
-1-prefix = "${STAGING_DIR_NATIVE}${prefix_native}" +prefix = "${STAGING_DIR_NATIVE}${prefix_native}/${MULTIMACH_TARGET_SYS}"base_prefix = "${STAGING_DIR_NATIVE}"
classes/cross.bbclass +1
-1-exec_prefix = "${STAGING_DIR_NATIVE}${prefix_native}" +exec_prefix ="${STAGING_DIR_NATIVE}${prefix_native}/${MULTIMACH_TARGET_SYS}"
base_sbindir= "${base_prefix}/bin"
sbindir = "${exec_prefix}/bin"conf/bitbake.conf +0
-0@@ -299,7 +299,7 @@ STAGING_DIR_JAVA = "${STAGING_DIR}/java"STAGING_DIR_NATIVE = "${STAGING_DIR}/${BUILD_SYS}"
STAGING_BINDIR_NATIVE= "${STAGING_DIR_NATIVE}${bindir_native}"STAGING_SBINDIR_NATIVE= "${STAGING_DIR_NATIVE}${sbindir_native}" -STAGING_BINDIR_CROSS = "${STAGING_DIR_NATIVE}${bindir_native}/${MULTIMACH_HOST_SYS}" +STAGING_BINDIR_CROSS = "${STAGING_DIR_NATIVE}${prefix_native}/${MULTIMACH_TARGET_SYS}${base_bindir_native}"STAGING_BINDIR_CROSS_BASEPKG= "${STAGING_DIR_NATIVE}${bindir_native}/${BASEPKG_TARGET_SYS}"STAGING_LIBDIR_NATIVE= "${STAGING_DIR_NATIVE}${libdir_native}"STAGING_INCDIR_NATIVE= "${STAGING_DIR_NATIVE}${includedir_native}"--
Tom Rini
Mentor Graphics Corporation_______________________________________________
Openembedded-devel mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
Quoted 16 lines · Khem Raj
Quoted 15 lines · Tom Rini
Hey all,
As one of the folks who suggested something else, here's my take.
We modify the prefix for cross stuff to dump everything into
MULTIMACH_TARGET_SYSin the sysroot.Pro: It should work for all the cases
Con: We're back to having a 'special' directory of cross stuff
Pro: It's separate but still valid for $ORIGIN mangling, which is the other problem we had before.I've got a qemuarm console-image and then beagleboard console-image build going now and that's going to take time.
Quoted 8 lines
Quoted 1 line
Signed-off-by Tom Rini <[email protected]>hah indecently I have been testing similar patch per our discussions on IRC but trying to get program-transform-name to generate unique compiler names which can coexist in <native sysroot>/usr/bin meanwhile I work on that this portion looks ok to go in.
Signed-off-by Khem Raj <[email protected]>
I've been trying to catch up with this issue and where OE is at now I'm back. Could someone summarise where we're at please as reading through the email threads which keep changing subject hasn't really educated me much :/ Did changing the triplet work out or not?
In Poky I've got the putting the toolchain into:
native-sysroot/usr/bin/<package-triplet>/${TARGET_SYS}-foo
and this seems to be working out okay after a slightly bumpy ride...
Cheers,
Richard
Quoted 24 lines · Richard Purdie
Quoted 23 lines · Khem Raj
Quoted 12 lines · Tom Rini
Hey all,
As one of the folks who suggested something else, here's my take.
We modify the prefix for cross stuff to dump everything into
MULTIMACH_TARGET_SYSin the sysroot.Pro: It should work for all the cases
Con: We're back to having a 'special' directory of cross stuff
Pro: It's separate but still valid for $ORIGIN mangling, which is the other problem we had before.Quoted 4 lines
I've got a qemuarm console-image and then beagleboard console-image build going now and that's going to take time.
Signed-off-by Tom Rini <[email protected]>hah indecently I have been testing similar patch per our discussions on IRC but trying to get program-transform-name to generate unique compiler names which can coexist in <native sysroot>/usr/bin meanwhile I work on that this portion looks ok to go in.
Quoted 6 lines
Quoted 1 line
Signed-off-by Khem Raj <[email protected]>I've been trying to catch up with this issue and where OE is at now I'm back. Could someone summarise where we're at please as reading through the email threads which keep changing subject hasn't really educated me much :/ Did changing the triplet work out or not?
Yes it worked out to a certain extent but there was few rough edges left. I did not pursue it more as it seemed not so desired approach.
Quoted 4 lines
In Poky I've got the putting the toolchain into:
native-sysroot/usr/bin/<package-triplet>/${TARGET_SYS}-foo
Something similar is what the v4 of the patch proposed. A difference is that it puts the toolchain in native-sysroot/usr/${BASE_PACKAGE_ARCH}/
Koen has been trying it out and so far he has had good results.
Thanks
-Khem