Commit Graph

201 Commits

Author SHA1 Message Date
Yann E. MORIN"
2d87a35831 Add binutils-2.18.50.0.9.
Add a patch to binutils to not use '/' as a comment separator on i386 assembly when targeting bare metal (breaks linux kernel build).

 /trunk/patches/binutils/2.18.50.0.8/130-i386-no-divide-comment.patch |   64    64     0     0 ++++++++++
 /trunk/patches/binutils/2.18.50.0.9/130-i386-no-divide-comment.patch |   64    64     0     0 ++++++++++
 /trunk/patches/binutils/2.14/110-i386-no-divide-comment.patch        |   38    38     0     0 ++++++
 /trunk/patches/binutils/2.14/270-i386-no-divide-comment.patch        |   38    38     0     0 ++++++
 /trunk/patches/binutils/2.16.1/160-i386-no-divide-comment.patch      |   40    40     0     0 ++++++
 /trunk/patches/binutils/2.17/210-i386-no-divide-comment.patch        |   64    64     0     0 ++++++++++
 /trunk/patches/binutils/2.18/120-i386-no-divide-comment.patch        |   64    64     0     0 ++++++++++
 /trunk/patches/binutils/2.18.50.0.4/130-i386-no-divide-comment.patch |   64    64     0     0 ++++++++++
 /trunk/patches/binutils/2.18.50.0.6/130-i386-no-divide-comment.patch |   64    64     0     0 ++++++++++
 /trunk/patches/binutils/2.18.50.0.7/130-i386-no-divide-comment.patch |   64    64     0     0 ++++++++++
 /trunk/config/binutils.in                                            |    6     6     0     0 +
 11 files changed, 570 insertions(+)
2008-09-22 12:09:19 +00:00
Yann E. MORIN"
c0cc140a6f Move snapshots version after numbered versions (aka releases).
/trunk/config/debug/gdb.in   |   13     7     6     0 +++++++------
 /trunk/config/libc/glibc.in  |   21    11    10     0 +++++++++++----------
 /trunk/config/libc/uClibc.in |   21    11    10     0 +++++++++++----------
 /trunk/config/libc/eglibc.in |   13     7     6     0 +++++++------
 4 files changed, 36 insertions(+), 32 deletions(-)
2008-09-18 09:22:25 +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"
48c1e77819 Code-reorder in the Linux kernel config options.
/trunk/config/kernel/linux.in |   32    15    17     0 +++++++++++++++-----------------
 1 file changed, 15 insertions(+), 17 deletions(-)
2008-09-15 12:08:01 +00:00
Yann E. MORIN"
ed92de0b90 Make bare-metal a kernel selection.
/trunk/config/kernel.in |   22    14     8     0 ++++++++++++++--------
 /trunk/config/target.in |   13     0    13     0 -------------
 2 files changed, 14 insertions(+), 21 deletions(-)
2008-09-15 09:43:35 +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"
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"
d246b4d3ad Add linux-2.6.26.3.
/trunk/config/kernel/linux_headers_install.in |    6     6     0     0 ++++++
 1 file changed, 6 insertions(+)
2008-09-01 16:57:41 +00:00
Yann E. MORIN"
8623e7154c eglibc and PowerPC SPE documentaion, courtesy Nate CASE.
/trunk/config/libc.in         |    7     7     0     0 +++++++
 /trunk/arch/powerpc/config.in |   11    10     1     0 ++++++++++-
 2 files changed, 17 insertions(+), 1 deletion(-)
2008-08-27 16:24:24 +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"
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"
4a7d144844 Allow using ash as the shell for ./configure and make.
After an idea by "Martin Guy" <martinwguy@yahoo.it>:
http://sourceware.org/ml/crossgcc/2008-08/msg00037.html

 /trunk/scripts/crosstool.sh          |    4     4     0     0 ++++
 /trunk/config/global/build-behave.in |   14    14     0     0 ++++++++++++++
 2 files changed, 18 insertions(+)
2008-08-25 19:44:39 +00:00
Yann E. MORIN"
916e8760dc Typo.
/trunk/config/toolchain.in |    2     1     1     0 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
2008-08-21 13:12:35 +00:00
Yann E. MORIN"
30481d01ce Move the threading model choice back to the C library menu:
- the threading models available are dependent on the C library used
 - it is thus easier to first select the C libary, and then the threading model, rather going back to the toolchain menu.

 /trunk/config/toolchain.in |   29     0    29     0 -----------------------------
 /trunk/config/libc.in      |   47    38     9     0 ++++++++++++++++++++++++++++++++++++++---------
 2 files changed, 38 insertions(+), 38 deletions(-)
2008-08-21 09:48:00 +00:00
Yann E. MORIN"
dbb47694a4 Default to check installed kernel headers by default.
/trunk/config/kernel/linux_headers_install.in |    2     1     1     0 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
2008-08-19 07:06:21 +00:00
Yann E. MORIN"
57347d6ca0 gcc-4.3.1 is now longer EXPERIMENTAL (gcc-4.3.0 is still EXPERIMENTAL, because of lack of testing).
/trunk/config/cc/gcc.in |    3     1     2     0 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
2008-08-12 10:53:56 +00:00
Yann E. MORIN"
5b77246d1c Typo.
/trunk/config/libc.in |    2     1     1     0 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
2008-08-12 10:53:11 +00:00
Yann E. MORIN"
ebeba61f44 Move TARGET_LDFLAGS up with all target-dependent flags.
/trunk/config/target.in |    1     1     0     0 +
 1 file changed, 1 insertion(+)
2008-08-12 09:54:42 +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"
dde2a329d7 Add latest Linux kernel versions.
/trunk/config/kernel/linux_headers_install.in |   24    24     0     0 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)
2008-08-09 21:09:22 +00:00
Yann E. MORIN"
ef0f400c26 Introduce four new ARCH specific variables that CT_DoArchValues can set if they want:
- CT_ARCH_CC_CORE_EXTRA_CONFIG
  - CT_ARCH_CC_EXTRA_CONFIG
  - CT_ARCH_TARGET_CLFAGS
  - CT_ARCH_TARGET_LDFLAGS
This will hopefully enable architectures to specify specific flags.
PowerPC will need them to introduce SPE (coming RSN).

 /trunk/scripts/crosstool.sh |    2     2     0     0 ++
 /trunk/scripts/functions    |    4     2     2     0 ++--
 /trunk/docs/overview.txt    |   45    22    23     0 ++++++++++++++++++++++-----------------------
 /trunk/config/target.in     |   10    10     0     0 ++++++++++
 4 files changed, 36 insertions(+), 25 deletions(-)
2008-08-07 15:18:18 +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"
0dc2ac15c9 Mark "ADA", "ObjC", "ObjC++" and "other languages" as being EXPERIMENTAL.
/trunk/config/cc.in |   12     8     4     0 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)
2008-08-05 13:27:09 +00:00
Yann E. MORIN"
805aa7f8ec Add latest Linux kernel headers.
/trunk/config/kernel/linux_headers_install.in |    6     6     0     0 ++++++
 1 file changed, 6 insertions(+)
2008-08-04 13:18:36 +00:00
Yann E. MORIN"
4eeadf87e2 Rework a little bit of the LAN mirror and proxy settings.
/trunk/scripts/crosstool.sh      |  105     4   101     0 +------------------------
 /trunk/scripts/functions         |  151   129    22     0 +++++++++++++++++++++++++++++++-----
 /trunk/config/global/download.in |  193    99    94     0 ++++++++++++++++++++++++----------------------
 3 files changed, 232 insertions(+), 217 deletions(-)
2008-08-01 09:23:58 +00:00
Yann E. MORIN"
2166fb982f Change some config items' default values.
/trunk/config/global/paths.in   |    4     2     2     0 ++--
 /trunk/config/global/logging.in |    2     1     1     0 +-
 2 files changed, 3 insertions(+), 3 deletions(-)
2008-08-01 08:23:29 +00:00
Yann E. MORIN"
7d79584d9b Add latest headers from Linux kernel 2.6.25.1{1,2}.
/trunk/config/kernel/linux_headers_install.in |   12    12     0     0 ++++++++++++
 1 file changed, 12 insertions(+)
2008-07-28 11:43:29 +00:00
Yann E. MORIN"
e64bc999d5 Hmmm. The debug pause at each step never ever worked... Sigh...
/trunk/scripts/crosstool.sh       |    2     1     1     0 +-
 /trunk/config/global/ct-behave.in |    2     1     1     0 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
2008-07-25 22:57:35 +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"
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"
67eff1fce1 Using a SOCKS 4/5 proxy is no more EXPERIMENTAL.
/trunk/config/global/download.in |    3     1     2     0 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
2008-07-19 22:46:44 +00:00
Yann E. MORIN"
2f6bd7b794 Introduce using a LAN mirror for retrieving tarballs.
/trunk/scripts/functions         |   40    36     4     0 ++++++++++++-
 /trunk/config/global/download.in |  146   115    31     0 ++++++++++++++++++++++++++++++++++++----------
 2 files changed, 151 insertions(+), 35 deletions(-)
2008-07-19 22:45:17 +00:00
Yann E. MORIN"
def4ca3905 Move the paths config options before the download options.
/trunk/config/global.in |    2     1     1     0 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
2008-07-19 22:39:15 +00:00
Yann E. MORIN"
49f53cc108 Split-up download and extract options into two separate files, because download options are begining to be numerous.
/trunk/config/global/extract.in  |  193     1   192     0 ----------------------------------------------
 /trunk/config/global/download.in |   52     1    51     0 ------------
 /trunk/config/global.in          |    3     2     1     0 +
 3 files changed, 4 insertions(+), 244 deletions(-)
2008-07-19 21:22:58 +00:00
Yann E. MORIN"
907141d953 Add gcc-4.2.4, with patches propagated from 4.2.3.
/trunk/config/cc/gcc.in |    5     5     0     0 +++++
 1 file changed, 5 insertions(+)
2008-07-19 12:17:26 +00:00
Yann E. MORIN"
41c0f214cc Add latest Linux 2.6.26 headers.
/trunk/config/kernel/linux_headers_install.in |    5     5     0     0 +++++
 1 file changed, 5 insertions(+)
2008-07-15 09:57:10 +00:00
Yann E. MORIN"
a1e8fc85c3 Add latest EXPERIMENTAL binutils 2.18.50.0.8.
/trunk/config/binutils.in |    6     6     0     0 ++++++
 1 file changed, 6 insertions(+)
2008-07-13 15:25:40 +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"
ba93eabd8a Add latest linux kernel 2.6.25.10.
/trunk/config/kernel/linux_headers_install.in |    6     6     0     0 ++++++
 1 file changed, 6 insertions(+)
2008-07-03 08:56:30 +00:00
Yann E. MORIN"
15483af16b Completely move GMP and MPFR files out of the compiler way into their own directory.
/trunk/config/gmp_mpfr.in |    4     2     2     0 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
2008-06-30 11:58:58 +00:00
Yann E. MORIN"
a865cf8aeb Re-order architecture specifics.
/trunk/config/target.in |   12     7     5     0 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)
2008-06-30 11:33:52 +00:00
Yann E. MORIN"
055681518c Only present each of arch, abi, cpu tune and fpu optimisations for those targets supporting them.
/trunk/config/target.in       |   30    30     0     0 ++++++++++++++++++++++++++++++
 /trunk/arch/arm/config.in     |    5     5     0     0 +++++
 /trunk/arch/powerpc/config.in |    3     3     0     0 +++
 /trunk/arch/alpha/config.in   |    2     2     0     0 ++
 /trunk/arch/x86/config.in     |    3     3     0     0 +++
 /trunk/arch/mips/config.in    |    3     3     0     0 +++
 /trunk/arch/x86_64/config.in  |    3     3     0     0 +++
 7 files changed, 49 insertions(+)
2008-06-27 15:08:43 +00:00
Yann E. MORIN"
62744e84e7 Autogenerate the architecture selection choice menu.
Update architectures definition files accordingly.
Update documentation accordingly.
Use makefile syntax when listing arch/, tools/ and debug/ config files.

 /trunk/kconfig/kconfig.mk     |   32    29     3     0 +++++++++++++++--
 /trunk/docs/overview.txt      |   75    67     8     0 +++++++++++++++++++++++++++++++++++----
 /trunk/config/target.in       |   94    16    78     0 ++++++++-----------------------------------------
 /trunk/arch/arm/config.in     |    6     5     1     0 +++
 /trunk/arch/powerpc/config.in |    2     2     0     0 +
 /trunk/arch/ia64/config.in    |    4     4     0     0 ++
 /trunk/arch/alpha/config.in   |    2     1     1     0
 /trunk/arch/x86/config.in     |    3     3     0     0 ++
 /trunk/arch/mips/config.in    |    5     5     0     0 +++
 /trunk/arch/sh/config.in      |    4     3     1     0 ++
 /trunk/arch/x86_64/config.in  |    3     3     0     0 ++
 11 files changed, 138 insertions(+), 92 deletions(-)
2008-06-27 13:58:53 +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"
d5c7eaa0c5 Add latest Linux kernel versions.
/trunk/config/kernel/linux_headers_install.in |   12    12     0     0 ++++++++++++
 1 file changed, 12 insertions(+)
2008-06-25 20:56:50 +00:00
Yann E. MORIN"
710b79ab7a Change default path where toolchain will run from to "${HOME}/x-tools/${CT_TARGET}".
/trunk/config/global/paths.in |    2     1     1     0 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
2008-06-25 06:24:51 +00:00