Age | Commit message (Collapse) | Author | Files | Lines |
|
- each config file no longer have to define their own 'menuconfig foo - if FOO - endif' gym
- each build script no longer has to say wether they are enabled
- generation of the 'menuconfig' entries for the Tools and Debug facilities now uses the same code
Some re-ordering of the code to be consistent with the steps ordering (tools, then debug).
/trunk/kconfig/kconfig.mk | 66 43 23 0 +++++++++++++++++++++++-------------
/trunk/scripts/build/debug.sh | 14 9 5 0 +++++---
/trunk/scripts/build/tools/000-template.sh | 7 0 7 0 ----
/trunk/scripts/build/tools/100-libelf.sh | 3 0 3 0 --
/trunk/scripts/build/tools/200-sstrip.sh | 2 0 2 0 -
/trunk/scripts/build/debug/000-template.sh | 7 0 7 0 ----
/trunk/scripts/build/debug/100-dmalloc.sh | 3 0 3 0 --
/trunk/scripts/build/debug/400-ltrace.sh | 3 0 3 0 --
/trunk/scripts/build/debug/300-gdb.sh | 3 0 3 0 --
/trunk/scripts/build/debug/500-strace.sh | 3 0 3 0 --
/trunk/scripts/build/debug/200-duma.sh | 3 0 3 0 --
/trunk/scripts/build/tools.sh | 14 9 5 0 +++++---
/trunk/scripts/crosstool.sh | 2 1 1 0
/trunk/config/debug/ltrace.in | 14 3 11 0 ++------
/trunk/config/debug/dmalloc.in | 9 1 8 0 +----
/trunk/config/debug/gdb.in | 9 1 8 0 +----
/trunk/config/debug/strace.in | 10 1 9 0 -----
/trunk/config/debug/duma.in | 10 1 9 0 -----
/trunk/config/tools/libelf.in | 12 2 10 0 +------
/trunk/config/tools/sstrip.in | 10 1 9 0 -----
/trunk/config/config.in | 4 2 2 0 +-
21 files changed, 74 insertions(+), 134 deletions(-)
|
|
/trunk/kconfig/kconfig.mk | 46 23 23 0 +++++++++++++++++++++++-----------------------
/trunk/scripts/crosstool.sh | 2 1 1 0 +-
/trunk/docs/overview.txt | 28 11 17 0 +++++++++++-----------------
3 files changed, 35 insertions(+), 41 deletions(-)
|
|
prior to 4.3 with gcc from 4.3.
Simplify detecting wether gcc is 4.3 and later, or older than 4.3 (we already know from .config).
/trunk/scripts/build/cc/gcc.sh | 22 13 9 0 +++++++++++++---------
1 file changed, 13 insertions(+), 9 deletions(-)
|
|
/trunk/scripts/build/cc/gcc.sh | 2 1 1 0 +-
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
source 'configure.in', when used from an svn check out, or a snapshot tarball.
They are nonetheless in sync and need not be regenerated.
Fix that by touching the files to have 'make' believe they are up-to-date (which they are).
/trunk/scripts/build/libc/glibc.sh | 5 5 0 0 +++++
/trunk/scripts/build/libc/eglibc.sh | 7 6 1 0 ++++++-
2 files changed, 11 insertions(+), 1 deletion(-)
|
|
scripts is plainly wrong.
It dates from dawn ages of the original crosstool code, and is not well explained. At that time, binutils might not understand the sysroot stuff, and it was necessary to remove absolute paths in that case.
/trunk/scripts/build/libc/glibc.sh | 14 2 12 0 ++------------
1 file changed, 2 insertions(+), 12 deletions(-)
|
|
/trunk/scripts/build/libc/eglibc.sh | 25 15 10 0 +++++++++++++++----------
1 file changed, 15 insertions(+), 10 deletions(-)
|
|
- change the menu label from 'Target OS' to 'Operating System',
- bare-metal is a kind of kernel (OS), rename to 'bare-metal' from 'none',
- update the kconfig.mk to generate the kernel choice entries,
- update glibc&eglibc kernel version option accordingly.
Update the debug & tools confiog file generation to match with arch & kernel.
Print terse command lines when building in kconfig/ (a-la Linux kernel).
Fix the makefile rules in kconfig/kconfig.mk to be /simple/ rules.
/trunk/kconfig/kconfig.mk | 117 81 36 0 +++++++++++++++++++++----------
/trunk/config/kernel/linux.in | 4 4 0 0 +
/trunk/config/kernel/bare-metal.experimental.in | 15 15 0 0 ++++
/trunk/config/kernel.in | 33 5 28 0 +--------
/trunk/config/libc/glibc-eglibc-common.in | 4 2 2 0
5 files changed, 107 insertions(+), 66 deletions(-)
|
|
supporting more than one kernel).
Rename some Linux kernel config options (ditto).
Update the addToolsVersion.sh script.
/trunk/scripts/build/kernel/linux.sh | 13 6 7 0 +--
/trunk/tools/addToolVersion.sh | 105 37 68 0 +++++++--------------
/trunk/config/kernel/linux.in | 211 189 22 0 ++++++++++++++++++++++++++++++++++++++----
3 files changed, 232 insertions(+), 97 deletions(-)
|
|
/trunk/scripts/build/debug/100-dmalloc.sh | 2 1 1 0 +-
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
Ideally, eglibc should also benefit for that, but the current code does not set it.
/trunk/scripts/build/libc/glibc.sh | 38 33 5 0 +++++++++++++++---
/trunk/config/libc/glibc.in | 4 2 2 0 +-
/trunk/config/libc/uClibc.in | 2 2 0 0 +
/trunk/config/libc/eglibc.in | 4 2 2 0 +-
/trunk/config/libc/glibc-eglibc-common.in | 80 68 12 0 +++++++++++++++++++++++++++++++------
/trunk/config/libc.in | 69 38 31 0 ++++++++++++++++++--------------
6 files changed, 145 insertions(+), 52 deletions(-)
|
|
This should ultimately llow to build bare-metal compilers, for targets that have no kernel and no C library.
Move the C library build script to their own sub-directory; introduce an empty build script for bare-metal.
Move the compiler build script to its own sub-directory.
Move the kernel build script to its own sub-directory; introduce an empty build script for bare-metal.
Update the ARM target tuples to enable bare-metal targets.
Add two ARM bare-metal samples.
Add latest Linux kernel versions.
/trunk/scripts/build/kernel/none.sh | 77 6 71 0 +----
/trunk/scripts/build/cc/gcc.sh | 58 41 17 0 ++-
/trunk/scripts/build/libc/none.sh | 513 9 504 0 +-----------------------------
/trunk/scripts/crosstool.sh | 17 9 8 0 +
/trunk/scripts/functions | 6 4 2 0 +
/trunk/scripts/showSamples.sh | 6 3 3 0
/trunk/samples/arm-unknown-elf/crosstool.config | 225 225 0 0 +++++++++++++
/trunk/samples/arm-unknown-eabi/crosstool.config | 223 223 0 0 +++++++++++++
/trunk/config/kernel/linux_headers_install.in | 64 27 37 0 ++--
/trunk/config/kernel.in | 9 8 1 0 +
/trunk/config/toolchain.in | 1 1 0 0 +
/trunk/config/cc/gcc.in | 3 3 0 0 +
/trunk/config/debug/dmalloc.in | 1 1 0 0 +
/trunk/config/debug/gdb.in | 4 3 1 0 +
/trunk/config/debug/strace.in | 1 1 0 0 +
/trunk/config/debug/duma.in | 1 1 0 0 +
/trunk/config/cc.in | 8 8 0 0 +
/trunk/config/target.in | 13 13 0 0 +
/trunk/config/binutils.in | 1 1 0 0 +
/trunk/config/gmp_mpfr.in | 1 1 0 0 +
/trunk/config/libc.in | 17 11 6 0 +
/trunk/arch/arm/functions | 3 1 2 0 -
22 files changed, 600 insertions(+), 652 deletions(-)
|
|
Remove orphanned Linux kernel patchsets.
Initiate a kernel build scripts directory. Move the Linux kernel build script there.
/trunk/scripts/build/kernel/linux.sh | 146 11 135 0 +++---------------------------------------
/trunk/scripts/crosstool.sh | 2 1 1 0
/trunk/steps.mk | 1 0 1 0 -
/trunk/config/kernel/linux.in | 49 0 49 0 --------------
/trunk/config/kernel.in | 4 4 0 0 +
5 files changed, 16 insertions(+), 186 deletions(-)
|
|
/trunk/scripts/build/debug/300-gdb.sh | 62 55 7 0 ++++++++++++++++++++++++++++++++++++-----
/trunk/config/debug/gdb.in | 13 13 0 0 +++++++++
2 files changed, 68 insertions(+), 7 deletions(-)
|
|
simply use "{} \;" instead.
/trunk/scripts/build/debug/300-gdb.sh | 2 1 1 0 +-
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
version from the kernel headers.
Thanks to Nate CASE <ncase@xes-inc.com> for suggesting this use-case, and providing the patch.
/trunk/scripts/build/libc_glibc.sh | 4 2 2 0 +-
/trunk/scripts/build/libc_eglibc.sh | 2 1 1 0 +-
/trunk/config/libc/glibc-eglibc-common.in | 44 44 0 0 +++++++++++++++++++++++++++++++++++++
3 files changed, 47 insertions(+), 3 deletions(-)
|
|
(thanks Nate Case).
/trunk/scripts/build/libc_eglibc.sh | 2 1 1 0 +-
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
/trunk/scripts/build/libc_eglibc.sh | 6 3 3 0 +-
/trunk/config/libc/glibc.in | 63 2 61 0 +---------------------------------
/trunk/config/libc/eglibc.in | 61 1 60 0 +--------------------------------
/trunk/config/libc/eglibc-glibc-common.in | 1 1 0 0 +
/trunk/config/libc/glibc-eglibc-common.in | 69 69 0 0 +++++++++++++++++++++++++++++++++++++
5 files changed, 76 insertions(+), 124 deletions(-)
|
|
/trunk/scripts/build/debug/300-gdb.sh | 2 2 0 0 ++
1 file changed, 2 insertions(+)
|
|
/trunk/scripts/build/libc_eglibc.sh | 2 1 1 0 +-
/trunk/scripts/functions | 6 3 3 0 +++---
2 files changed, 4 insertions(+), 4 deletions(-)
|
|
/trunk/scripts/build/mpfr.sh | 2 1 1 0 +-
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
/trunk/scripts/build/libc_eglibc.sh | 10 5 5 0 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
|
|
/trunk/scripts/build/cc_gcc.sh | 195 64 131 0 ++++++++++++++++--------------------------------
1 file changed, 64 insertions(+), 131 deletions(-)
|
|
- Add support for eglibc
/trunk/scripts/functions | 6 4 2 0 ++++--
/trunk/docs/CREDITS | 1 1 0 0 +
/trunk/config/libc.in | 12 12 0 0 ++++++++++++
/trunk/arch/arm/functions | 4 2 2 0 ++--
4 files changed, 19 insertions(+), 4 deletions(-)
|
|
This is needed for some architectures to compile the Java frontend (eg. ARM with uClibc).
/trunk/config/cc/gcc.in | 41 39 2 0 +++++++++++++++++++++++++++++++++++++++--
/trunk/scripts/build/cc_gcc.sh | 8 5 3 0 +++++---
2 files changed, 44 insertions(+), 5 deletions(-)
|
|
PowerPC unveiled that you can't reliably build a target libgcc until you have C library headers.
In fact you can't build it at all. The fact that it did build for some architectures was purely coincidental, and a mistake.
This fix should still allow to build uClibc-based toolchains (some ARM uClibc toolchains were build-tested).
/trunk/scripts/build/cc_gcc.sh | 100 47 53 0 +++++++++++++++++++++++-------------------------
1 file changed, 47 insertions(+), 53 deletions(-)
|
|
Update the gcc patchset accordingly.
/trunk/scripts/build/cc_gcc.sh | 55 53 2 0 ++++++++++++++++++++++++++++++++++++++++++++++--
1 file changed, 53 insertions(+), 2 deletions(-)
|
|
On some distros (eg. Fedora), the native objdump can not interpret objects not for the native system, and thus fail.
This commit adds a new patch against glibc-2.7 that introduces OBJDUMP_FOR_HOST, wich, if set, overides the detected objdump.
Note: bizarely enough, glibc already has code to detect the cross-objdump, but that does not work for an unknown reason... :-(
/trunk/patches/glibc/2.7/220-objdump_for_host.patch | 13 13 0 0 +++++++++
/trunk/scripts/build/libc_glibc.sh | 37 21 16 0 +++++++++++++++------------
2 files changed, 34 insertions(+), 16 deletions(-)
|
|
*64):
- symlink all lib64/ dirs to the corresponding lib/ dir
Also, prevent gcc from installing some of its target libs outside of the sys-root, in the first place.
Thanks to Laurent DUFRECHOU for reporting the bug and testing the fix.
/trunk/scripts/build/cc_gcc.sh | 26 0 26 0 --------------------------
/trunk/scripts/crosstool.sh | 14 14 0 0 ++++++++++++++
2 files changed, 14 insertions(+), 26 deletions(-)
|
|
/trunk/scripts/build/libc_glibc.sh | 80 44 36 0 ++++++++++++++++++++++++--------------------
1 file changed, 44 insertions(+), 36 deletions(-)
|
|
/trunk/scripts/build/cc_gcc.sh | 2 1 1 0 +-
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
Thanks to both Ioannis E. VENETIS and Thomas JOURDAN for their help.
/trunk/scripts/build/cc_gcc.sh | 26 22 4 0 ++++++++++++++++++++++----
1 file changed, 22 insertions(+), 4 deletions(-)
|
|
/trunk/scripts/build/tools/200-sstrip.sh | 1 0 1 0 -
1 file changed, 1 deletion(-)
|
|
/trunk/scripts/build/tools/200-sstrip.sh | 31 3 28 0 +++----------------------------
1 file changed, 3 insertions(+), 28 deletions(-)
|
|
/trunk/scripts/build/debug/500-strace.sh | 4 4 0 0 ++++
/trunk/scripts/build/debug/200-duma.sh | 5 4 1 0 ++++-
2 files changed, 8 insertions(+), 1 deletion(-)
|
|
glibc.
Update uClibc config to commonalise some help.
/trunk/scripts/build/libc_glibc.sh | 22 20 2 0 ++++++++++++++++++++--
/trunk/config/libc/glibc.in | 12 12 0 0 ++++++++++++
/trunk/config/libc/uClibc.in | 12 4 8 0 ++++--------
/trunk/config/libc.in | 13 13 0 0 +++++++++++++
4 files changed, 49 insertions(+), 10 deletions(-)
|
|
/trunk/scripts/build/debug/duma.in | 13 12 1 0 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
|
|
Move the check for 'lynx' to where it is needed (that is when sstrip from buildroot is selected).
/trunk/scripts/build/tools/200-sstrip.sh | 1 1 0 0 +
/trunk/scripts/crosstool.sh | 5 0 5 0 -----
2 files changed, 1 insertion(+), 5 deletions(-)
|
|
/trunk/scripts/build/tools/200-sstrip.sh | 12 6 6 0 ++++++------
/trunk/scripts/build/debug/100-dmalloc.sh | 10 5 5 0 +++++-----
/trunk/scripts/build/debug/400-ltrace.sh | 5 3 2 0 +++--
/trunk/scripts/build/debug/300-gdb.sh | 30 17 13 0 +++++++++++++++++-------------
/trunk/scripts/build/debug/500-strace.sh | 7 4 3 0 ++++---
/trunk/scripts/build/debug/200-duma.sh | 5 3 2 0 +++--
6 files changed, 38 insertions(+), 31 deletions(-)
|
|
/trunk/scripts/build/gmp.sh | 8 4 4 0 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
|
|
/trunk/scripts/build/tools/000-template.sh | 5 3 2 0 +++--
/trunk/scripts/build/debug/000-template.sh | 5 3 2 0 +++--
2 files changed, 6 insertions(+), 4 deletions(-)
|
|
/trunk/scripts/build/tools/100-libelf.sh | 7 4 3 0 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
|
|
/trunk/scripts/build/cc_gcc.sh | 55 27 28 0 ++++++++++++++++++++++++------------------------
1 file changed, 27 insertions(+), 28 deletions(-)
|
|
/trunk/scripts/build/libc_uClibc.sh | 19 11 8 0 +++++++++++--------
1 file changed, 11 insertions(+), 8 deletions(-)
|
|
/trunk/scripts/build/binutils.sh | 4 2 2 0 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
/trunk/scripts/build/binutils.sh | 16 9 7 0 +++++++++-------
1 file changed, 9 insertions(+), 7 deletions(-)
|
|
/trunk/scripts/build/mpfr.sh | 48 25 23 0 +++++++++++++++++++++++++-----------------------
1 file changed, 25 insertions(+), 23 deletions(-)
|
|
/trunk/scripts/build/gmp.sh | 12 7 5 0 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
|
|
/trunk/scripts/build/kernel_linux.sh | 6 4 2 0 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
|
|
MPFR were not used by gcc.
Turned out that none could use GMP and MPFR as the config option changed its name, but the change was not propagated to all users.
/trunk/scripts/build/binutils.sh | 2 1 1 0 +-
/trunk/scripts/build/debug/300-gdb.sh | 2 1 1 0 +-
/trunk/scripts/build/cc_gcc.sh | 6 3 3 0 +++---
3 files changed, 5 insertions(+), 5 deletions(-)
|