Yann E. MORIN"
6731142c39
Better handle the second pass core gcc build, differentiating between gcc 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(-)
2008-09-30 18:19:18 +00:00
Yann E. MORIN"
47221dfa6a
Restore the ability to build gcc older than 4.3. At last!
...
/trunk/scripts/build/cc/gcc.sh | 2 1 1 0 +-
1 file changed, 1 insertion(+), 1 deletion(-)
2008-09-29 12:02:47 +00:00
Yann E. MORIN"
b000bc94cd
In the glibc and eglibc trees, the 'configure' files may be older than their 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(-)
2008-09-28 21:34:11 +00:00
Yann E. MORIN"
6c54fde8fd
Bart De VOS pointed out that removing absolute paths from the libc linker 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(-)
2008-09-23 14:48:10 +00:00
Yann E. MORIN"
8935b10421
Rework the eglibc download so as to be a little bit saner.
...
/trunk/scripts/build/libc/eglibc.sh | 25 15 10 0 +++++++++++++++----------
1 file changed, 15 insertions(+), 10 deletions(-)
2008-09-22 19:51:29 +00:00
Yann E. MORIN"
c36b921790
Generate the kernel config choice, rather than having it hard-coded:
...
- 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(-)
2008-09-16 17:39:40 +00:00
Yann E. MORIN"
b6a8c7318d
Move all the Linux kernel config options to a single file (to ease 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(-)
2008-09-15 14:52:29 +00:00
Yann E. MORIN"
070411306a
DUMA: don't log twice through the logger.
...
/trunk/scripts/build/debug/100-dmalloc.sh | 2 1 1 0 +-
1 file changed, 1 insertion(+), 1 deletion(-)
2008-09-15 14:41:09 +00:00
Yann E. MORIN"
02d2b29cda
Enhance setting the minimum kernel version glibc will run against.
...
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(-)
2008-09-14 18:09:36 +00:00
Yann E. MORIN"
799672a641
Introduce a new EXPERIMENTAL feature: BARE_METAL.
...
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(-)
2008-09-14 16:21:07 +00:00
Yann E. MORIN"
7a0e770be1
Remove the now really obsolete Linux kernel headers copy and sanitised.
...
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(-)
2008-09-10 21:40:23 +00:00
Yann E. MORIN"
3d4bc00719
Add support for building Insight instead of gdb (only for the cross-gdb).
...
/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(-)
2008-09-02 10:47:44 +00:00
Yann E. MORIN"
520eda92a2
Be gentle to older findutils that don't have the "{} +" construct, and simply use "{} \;" instead.
...
/trunk/scripts/build/debug/300-gdb.sh | 2 1 1 0 +-
1 file changed, 1 insertion(+), 1 deletion(-)
2008-09-01 09:15:31 +00:00
Yann E. MORIN"
0a99eb0c77
Enable glibc to include support for kernel versions different than the 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(-)
2008-08-26 21:37:46 +00:00
Yann E. MORIN"
477baecf46
Missed one variable when converting to common options for eglibc and glibc (thanks Nate Case).
...
/trunk/scripts/build/libc_eglibc.sh | 2 1 1 0 +-
1 file changed, 1 insertion(+), 1 deletion(-)
2008-08-26 21:30:22 +00:00
Yann E. MORIN"
b3f5a87080
Commonalise options common to both glibc and eglibc.
...
/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(-)
2008-08-26 16:47:47 +00:00
Yann E. MORIN"
535c532baf
Fix building older gdb's with newer gcc's.
...
/trunk/scripts/build/debug/300-gdb.sh | 2 2 0 0 ++
1 file changed, 2 insertions(+)
2008-08-20 12:08:03 +00:00
Yann E. MORIN"
99691ee4d6
Log retrieved file emssages to DEBUG level, not EXTRA.
...
/trunk/scripts/build/libc_eglibc.sh | 2 1 1 0 +-
/trunk/scripts/functions | 6 3 3 0 +++---
2 files changed, 4 insertions(+), 4 deletions(-)
2008-08-17 14:13:00 +00:00
Yann E. MORIN"
5742930b13
MPFR: log autotools files rebuilding to DEBUG level, not EXTRA.
...
/trunk/scripts/build/mpfr.sh | 2 1 1 0 +-
1 file changed, 1 insertion(+), 1 deletion(-)
2008-08-17 14:10:44 +00:00
Yann E. MORIN"
70e05067fa
Fix saving and using local copy of eglibc tarballs.
...
/trunk/scripts/build/libc_eglibc.sh | 10 5 5 0 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
2008-08-12 09:14:55 +00:00
Yann E. MORIN"
f1b9a7e7bb
Merge the static and shared core gcc builds.
...
/trunk/scripts/build/cc_gcc.sh | 195 64 131 0 ++++++++++++++++--------------------------------
1 file changed, 64 insertions(+), 131 deletions(-)
2008-08-12 07:47:51 +00:00
Yann E. MORIN"
59ef10f5d6
Merge the branches/eglibc stuff:
...
- 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(-)
2008-08-11 12:22:47 +00:00
Yann E. MORIN"
c1a2e1bb87
Add a new config knob for gcc: usage of SJLJ to handle exceptions.
...
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(-)
2008-08-07 13:55:30 +00:00
Yann E. MORIN"
f53dd7e985
Fix building core C compiler.
...
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(-)
2008-08-07 13:28:02 +00:00
Yann E. MORIN"
d67a32191b
Make gcc-4.3.x able to compile uClibc (snapshot only).
...
Update the gcc patchset accordingly.
/trunk/scripts/build/cc_gcc.sh | 55 53 2 0 ++++++++++++++++++++++++++++++++++++++++++++++--
1 file changed, 53 insertions(+), 2 deletions(-)
2008-08-04 12:38:06 +00:00
Yann E. MORIN"
fe5feb1154
Have the glibc build use the cross-objdump, rather than the host one.
...
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(-)
2008-07-31 09:08:33 +00:00
Yann E. MORIN"
5a28e26b8d
Fix building x86_64 on x86_64 (and hopefully all other *64 archs on the same *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(-)
2008-07-27 16:35:37 +00:00
Yann E. MORIN"
c3817897cb
Do log the glibc build commands.
...
/trunk/scripts/build/libc_glibc.sh | 80 44 36 0 ++++++++++++++++++++++++--------------------
1 file changed, 44 insertions(+), 36 deletions(-)
2008-07-26 12:26:42 +00:00
Yann E. MORIN"
da88cd1dde
Build a little bit more of gcc in //.
...
/trunk/scripts/build/cc_gcc.sh | 2 1 1 0 +-
1 file changed, 1 insertion(+), 1 deletion(-)
2008-07-26 12:10:54 +00:00
Yann E. MORIN"
5575787f66
Make gcc-4.3.x build.
...
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(-)
2008-07-24 16:56:28 +00:00
Yann E. MORIN"
e6ba0e5854
Don't check fo lynx, it's no longer used.
...
/trunk/scripts/build/tools/200-sstrip.sh | 1 0 1 0 -
1 file changed, 1 deletion(-)
2008-07-24 06:47:08 +00:00
Yann E. MORIN"
17693c9c98
Simplify downloading sstrip, using the common retrieval framework.
...
/trunk/scripts/build/tools/200-sstrip.sh | 31 3 28 0 +++----------------------------
1 file changed, 3 insertions(+), 28 deletions(-)
2008-07-24 06:46:40 +00:00
Yann E. MORIN"
f4f3f526b8
Remove garbage files left behind by downloads from sourceforge.net.
...
/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(-)
2008-07-22 14:17:10 +00:00
Yann E. MORIN"
7abf35f472
Allow selecting 'latest' snapshot, as well as 'specific' date snapshot for 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(-)
2008-07-22 13:29:08 +00:00
Yann E. MORIN"
709299f291
Use POSIX constructs in the DUMA wrapper installed on the target.
...
/trunk/scripts/build/debug/duma.in | 13 12 1 0 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
2008-07-19 12:15:17 +00:00
Yann E. MORIN"
ba5a96ad78
Remove the check for absolutely needed tools now ./configure checks for them.
...
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(-)
2008-07-17 21:17:19 +00:00
Yann E. MORIN"
6e1b1ccb7d
Use CT_DoExecLog when building tools and debug utilities.
...
/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(-)
2008-07-14 21:57:57 +00:00
Yann E. MORIN"
0b499187a2
Fix CT_DoExecLog usage when building GMP for target.
...
/trunk/scripts/build/gmp.sh | 8 4 4 0 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
2008-07-14 21:21:35 +00:00
Yann E. MORIN"
4a03de30df
Advertise using CT_DoExecLog in the tools and debug templates.
...
/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(-)
2008-07-14 16:04:41 +00:00
Yann E. MORIN"
223231bcc3
Use CT_DoExecLog when building libelf.
...
/trunk/scripts/build/tools/100-libelf.sh | 7 4 3 0 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
2008-07-14 15:58:39 +00:00
Yann E. MORIN"
549ef5d740
Use CT_DoExecLog when building gcc.
...
/trunk/scripts/build/cc_gcc.sh | 55 27 28 0 ++++++++++++++++++++++++------------------------
1 file changed, 27 insertions(+), 28 deletions(-)
2008-07-14 15:56:57 +00:00
Yann E. MORIN"
00084df12b
Use CT_DoExecLog when building uClibc.
...
/trunk/scripts/build/libc_uClibc.sh | 19 11 8 0 +++++++++++--------
1 file changed, 11 insertions(+), 8 deletions(-)
2008-07-14 15:48:51 +00:00
Yann E. MORIN"
972fdecb11
Fix CT_DoExecLog usage when building binutils' libraries for target.
...
/trunk/scripts/build/binutils.sh | 4 2 2 0 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
2008-07-14 15:42:27 +00:00
Yann E. MORIN"
212f6fffff
Use CT_DoExecLog in binutils build.
...
/trunk/scripts/build/binutils.sh | 16 9 7 0 +++++++++-------
1 file changed, 9 insertions(+), 7 deletions(-)
2008-07-14 15:27:20 +00:00
Yann E. MORIN"
dd5a5f683e
Use CT_DoExecLog for MPFR build.
...
/trunk/scripts/build/mpfr.sh | 48 25 23 0 +++++++++++++++++++++++++-----------------------
1 file changed, 25 insertions(+), 23 deletions(-)
2008-07-14 15:15:40 +00:00
Yann E. MORIN"
f235889bde
Use CT_DoExecLog for GMP build.
...
/trunk/scripts/build/gmp.sh | 12 7 5 0 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
2008-07-14 13:55:30 +00:00
Yann E. MORIN"
8c214615b0
Use CT_DoExecLog for Linux headers install.
...
/trunk/scripts/build/kernel_linux.sh | 6 4 2 0 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
2008-07-14 13:51:45 +00:00
Yann E. MORIN"
6e49891565
Ioannis E. VENETIS <venetis@mail.capsl.udel.edu> pointed out that GMP and 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(-)
2008-07-13 10:32:38 +00:00
Yann E. MORIN"
22bd5ce4ca
Although working with bash, 'echo -n' is really non-portable.
...
Get rid of this by using printf(1) with no trailing new-line (\n).
Again, thanks to Martin GUY, who pointed this issue.
/trunk/kconfig/kconfig.mk | 2 1 1 0
/trunk/scripts/build/libc_uClibc.sh | 4 3 1 0 ++
/trunk/scripts/showSamples.sh | 78 39 39 0 +++++++++++++++++++++---------------------
3 files changed, 43 insertions(+), 41 deletions(-)
2008-07-07 21:25:57 +00:00
Yann E. MORIN"
08ca782e76
Newer, better, tsocks(1)-like wrapper script for D.U.M.A.
...
/trunk/scripts/build/debug/duma.in | 44 44 0 0 ++++++++++++++++++++++++++++++++++++++++
/trunk/scripts/build/debug/200-duma.sh | 12 3 9 0 +++--------
2 files changed, 47 insertions(+), 9 deletions(-)
2008-06-30 20:37:14 +00:00