Commit Graph

68 Commits

Author SHA1 Message Date
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"
76505c71c4 Mark some features as no longer being EXPERIMENTAL.
/trunk/config/debug/gdb.in  |    3     1     2     0 +--
 /trunk/config/libc/glibc.in |    1     0     1     0 -
 2 files changed, 1 insertion(+), 3 deletions(-)
2008-09-02 19:50:45 +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"
8ff367d9d8 MArk gdb-6.5 as being OBSOLETE.
/trunk/config/debug/gdb.in |    3     2     1     0 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
2008-07-22 09:32:27 +00:00
Yann E. MORIN"
d7ed189422 Mark gdb-6.8 as being no longer EXPERIMENTAL.
/trunk/config/debug/gdb.in |    3     1     2     0 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
2008-07-03 08:58:56 +00:00
Yann E. MORIN"
501143cea7 Don't force building target GMP and MPFR when a native gdb is built. Rather,
add a config knob to configure the native gdb to use or not to use GMP and
MPFR; _this_config_knob_ will force building the target GMP and MPFR only if
turned on.

 /trunk/scripts/build/debug/300-gdb.sh |    2     1     1     0 +-
 /trunk/config/debug/gdb.in            |   21    19     2     0 +++++++++++++++++++--
 2 files changed, 20 insertions(+), 3 deletions(-)
2008-06-25 21:56:36 +00:00
Yann E. MORIN"
1b00a301bd GMP and MPFR are no longer a sub-component of gcc (config-wise).
Build and install GMP and MPFR for the target.
Use the target GMP and MPFR to build the native gdb.
Have separate extra_config for cross gdb, native gdb and gdbserver.
Check native GMP and MPFR in //.

 /trunk/scripts/build/debug/300-gdb.sh |   27    19     8     0 ++++++++++++++++-------
 /trunk/scripts/build/gmp.sh           |   47    39     8     0 ++++++++++++++++++++++++++++++++-------
 /trunk/scripts/build/mpfr.sh          |   49    40     9     0 +++++++++++++++++++++++++++++++++--------
 /trunk/steps.mk                       |    2     2     0     0 ++
 /trunk/config/cc/gcc.in               |   18     1    17     0 +--------------
 /trunk/config/debug/gdb.in            |    6     1     5     0 +----
 /trunk/config/config.in               |    1     1     0     0 +
 /trunk/config/gmp_mpfr.in             |   34    34     0     0 ++++++++++++++++++++++++++++
 8 files changed, 137 insertions(+), 47 deletions(-)
2008-06-20 15:16:43 +00:00
Yann E. MORIN"
b4c1d39a2b Don't force building a gdbserver when only native gdb is selected.
/trunk/config/debug/gdb.in            |    1     0     1     0 -
 /trunk/scripts/build/debug/300-gdb.sh |    1     0     1     0 -
 2 files changed, 2 deletions(-)
2008-06-20 09:56:46 +00:00
Yann E. MORIN"
3950f8e87d A bunch of fixes/improvements to the gdb build:
- allow native builds (both shared and static)
 - fix enabling threads
 - better handle the gdbserver case
 - introduce the ncurses library to allow native builds
 - re-order config options adequately

 /trunk/scripts/build/debug/300-gdb.sh |  126    79    47     0 ++++++++++++++++++++++++++---------------
 /trunk/config/debug/gdb.in            |   45    33    12     0 +++++++++++----
 2 files changed, 112 insertions(+), 59 deletions(-)
2008-06-19 15:33:33 +00:00
Yann E. MORIN"
a09a458bb9 Fix building native gdb: download, extract, patch, build and install the ncurses library (that is needed by gdb)
/trunk/scripts/build/debug/300-gdb.sh |   46    42     4     0 +++++++++++++++++++++++++++++++++++++----
 /trunk/config/debug/gdb.in            |   26    25     1     0 ++++++++++++++++++++++-
 2 files changed, 67 insertions(+), 5 deletions(-)
2008-06-18 12:33:32 +00:00
Yann E. MORIN"
3b8580605b Add latest, untested gdb versions
/trunk/config/debug/gdb.in |   18    18     0     0 ++++++++++++++++++
 1 file changed, 18 insertions(+)
2008-05-02 21:54:46 +00:00
Yann E. MORIN"
8a6d956634 Offer an option to build a static cross-gdb.
/trunk/scripts/build/debug/gdb.sh |    9     9     0     0 +++++++++
 /trunk/config/debug/gdb.in        |    9     9     0     0 +++++++++
 2 files changed, 18 insertions(+)
2008-04-27 10:25:02 +00:00
Yann E. MORIN"
6c368af5b4 Do a clean-up pass on the OBSOLETE features (versions):
- remove legions of those,
 - remove associated patches no longer needed,
 - mark then as (OBSOLETE) in the prompt;
2007-08-14 20:11:44 +00:00
Yann E. MORIN"
7e40126cb9 Add (EXPERIMENTAL) in prompts of those options that depend on EXPERIMENTAL. 2007-07-08 22:22:18 +00:00
Yann E. MORIN"
b9f843657a Offer an option to build the gdbserver statically. This helps in case of debugging shared library loading. 2007-06-17 15:46:13 +00:00
Yann E. MORIN"
465cdbeee1 No longer mark NPTL as being EXPERIMENTAL.
But mark build a native gdb as being EXPERIMENTAL.
2007-05-27 20:29:22 +00:00
Yann E. MORIN"
41e8d132ce Un-mark gdb and dmalloc being EXPERIMENTAL.
Mark native gdb as being EXPERIMENTAL (it depends on termcap, which we don't have yet).
2007-05-18 19:55:49 +00:00
Yann E. MORIN"
8d3f0a8781 Debug facilities:
- add a framework to easily add new ones
  - add gdb as a first debug facility
  - add patches for gdb
After the kernel checked its installed headers, clean up the mess of .checked.* files.
Reorder scripts/crosstool.sh:
  - dump the configuration early
  - renice early
  - get info about build system early, when setting up the environment
  - when in cross or native, the host tools are those of the build system, and only in this case
  - elapsed time calculations moved to scripts/functions
Remove handling of the color: it's gone once and for all.
Update tools/addToolVersion.sh:
  - handle debug facilities
  - commonalise some code
  - remove dead tools (cygwin, tcc)
Point to my address for bug reports.
2007-05-17 16:22:51 +00:00