RFC enhance the toolchain bootstrap process
Get series with b4
b4 am [email protected]Versions newest first
- v3 RFC Latest7 patches 8 repliesIn review
Patches in v3 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/7 | sstate.bbclass: allow each step of toolchain bootstrap processes to do populate_sysroot independentlymeta/ | +0 | 0 replies | |
| 2/7 | cross.bbclass: make MULTIMACH_TARGET_SYS adjustable for bindir, libdir, libexecdirmeta/ | +4 | 0 replies | |
| 3/7 | gcc-cross-initial, gcc-crosssdk-initial: change CROSS_TARGET_SYS_DIR and insall into new locationsmeta/ meta/ meta/ +2 more | +6 | 2 replies | |
| 4/7 | eglibc-initial, eglibc-initial-nativesdk: install into individual sysrootsmeta/ meta/ | +11 | 0 replies | |
| 5/7 | gcc-cross-intermediate, gcc-crosssdk-intermediate: change CROSS_TARGET_SYS_DIR and insall into new locationsmeta/ meta/ meta/ +4 more | +73 | 0 replies | |
| 6/7 | cross.bbclass: modify sysroot_stage_all to allow gcc-{cross, crossdk}-intermediate to populate the libgcc_s.so* filesmeta/ meta/ | +11 | 0 replies | |
| 7/7 | eglibc, eglibc-nativesdk: fix the build due to changes to eglibc-initial and gcc-cross-intermediatemeta/ meta/ | +11 | 1 reply |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v3 yet.
Cover letter [RFC: enhance toolchain bootstrap process: v3: 0/7] enhance the toolchain bootstrap process
Hi Richard and all,
The patch set enhances the toolchain bootstrap process by installing a separate sysroot for each step of the process.
The purpose is to avoid file overwriting in the current global sysroot, namely, to fix Bug 239: http://bugzilla.pokylinux.org/show_bug.cgi?id=239
The basic idea is straightforward:
1) For gcc-cross-initial and -intermediate, by changing MULTIMACH_TARGET_SYS to install the files into new locations;
2) Fix the build of eglibc-initial, eglibc by using the appropriate compilers, libs, headers;
3) Also make proper changes for the crosssdk/nativesdk version.
I've split all the changes into small git commits and each commit should be basically self-explanatory. :-)
Please review the commits and comment. Thanks!
Test Results:
I've tested building poky-image-sdk on various qemu targets: the qemu target can boot fine.
I'm also testing building meta-toolchain-sdk -- not finished yet, but I think it should be fine because "bitbake gcc-runtime-nativesdk" and "bitbake gcc-cross-canadian-mips" can succeed. I'll be doing more tests.
TODO:
1) changes to gcc-4.3.3 not completely finished (Should we still support gcc-4.3.3 since we have gcc-4.5.1?) However I think I should be able to add the missing changes soon, supposing here 4.3.3 and 4.5.1 have no big difference.
2) do more tests against glibc rather than eglibc.
Pull URL: git://git.pokylinux.org/poky-contrib.git
Branch: dcui/tcbp-v3
Browse: http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=dcui/tcbp-v3
Thanks,
Dexuan Cui <[email protected]>
---
Dexuan Cui (7):
sstate.bbclass: allow each step of toolchain bootstrap processes to
do populate_sysroot independently
cross.bbclass: make MULTIMACH_TARGET_SYS adjustable for bindir,
libdir, libexecdir
gcc-cross-initial, gcc-crosssdk-initial: change CROSS_TARGET_SYS_DIR
and insall into new locations
eglibc-initial, eglibc-initial-nativesdk: install into individual
sysroots
gcc-cross-intermediate, gcc-crosssdk-intermediate: change
CROSS_TARGET_SYS_DIR and insall into new locations
cross.bbclass: modify sysroot_stage_all to allow
gcc-{cross,crossdk}-intermediate to populate the libgcc_s.so* files
eglibc, eglibc-nativesdk: fix the build due to changes to
eglibc-initial and gcc-cross-intermediate
meta/classes/cross.bbclass | 17 +++++--- meta/classes/sstate.bbclass | 24 ------------ meta/recipes-core/eglibc/eglibc-initial.inc | 10 +++++ meta/recipes-core/eglibc/eglibc.inc | 9 ++++ meta/recipes-core/eglibc/eglibc_2.12.bb | 8 +--- .../fix_CPPFLAGS_LDFLAGS_FOR_TARGET.patch | 40 ++++++++++++++++++++ meta/recipes-devtools/gcc/gcc-cross-initial.inc | 2 + .../gcc/gcc-cross-initial_4.3.3.bb | 2 +- .../gcc/gcc-cross-initial_4.5.1.bb | 2 +- .../gcc/gcc-cross-intermediate.inc | 32 ++++++++++++++- .../gcc/gcc-cross-intermediate_4.3.3.bb | 2 +- .../gcc/gcc-cross-intermediate_4.5.1.bb | 2 +- .../gcc/gcc-crosssdk-initial_4.3.3.bb | 2 +- .../gcc/gcc-crosssdk-initial_4.5.1.bb | 2 +- .../gcc/gcc-crosssdk-intermediate.inc | 3 + .../gcc/gcc-crosssdk-intermediate_4.3.3.bb | 2 +- .../gcc/gcc-crosssdk-intermediate_4.5.1.bb | 2 +- 17 files changed, 113 insertions(+), 48 deletions(-) create mode 100644 meta/recipes-devtools/gcc/gcc-4.5.1/fix_CPPFLAGS_LDFLAGS_FOR_TARGET.patch
Signature · 1 line
1.7.2