Merge the uClinux/noMMU stuff back to /trunk:
author"Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Wed May 20 20:13:13 2009 +0000 (2009-05-20)
changeset 134527fec561af53
parent 1343 e6f6153d318c
child 1346 fee8feeba8ac
Merge the uClinux/noMMU stuff back to /trunk:
- merge Linux and uClinux back to a single kernel
- add ARCH_USE_MMU and acquainted config options that
architectures can auto-select
- make binutils and elf2flt two "Binary utilities" that
go in a single common sub-{menu,directory} structure

-------- diffstat follows --------
/trunk/scripts/build/kernel/uclinux.sh | 2 0 2 0 -
/trunk/scripts/build/kernel/linux.sh | 206 204 2 0 +++++++++++++++++++++++++++++
/trunk/scripts/build/kernel/linux-common.sh | 198 0 198 0 ----------------------------
/trunk/scripts/build/binutils.sh | 232 0 232 0 --------------------------------
/trunk/scripts/build/elf2flt.sh | 150 0 150 0 ---------------------
/trunk/scripts/crosstool-NG.sh.in | 6 4 2 0 +
/trunk/config/kernel/linux.in | 249 249 0 0 +++++++++++++++++++++++++++++++++++
/trunk/config/kernel/linux.in-common | 252 0 252 0 -----------------------------------
/trunk/config/kernel/uclinux.in | 21 0 21 0 ---
/trunk/config/target.in | 23 22 1 0 +++
/trunk/config/elf2flt.in | 49 0 49 0 -------
/trunk/config/libc/glibc.in | 2 1 1 0
/trunk/config/libc/eglibc.in | 2 1 1 0
/trunk/config/config.in | 1 0 1 0 -
/trunk/config/arch/sh.in | 1 1 0 0 +
/trunk/config/arch/arm.in | 2 1 1 0
/trunk/config/arch/powerpc.in | 1 1 0 0 +
/trunk/config/arch/ia64.in | 1 1 0 0 +
/trunk/config/arch/alpha.in | 1 1 0 0 +
/trunk/config/arch/x86.in | 1 1 0 0 +
/trunk/config/arch/mips.in | 1 1 0 0 +
/trunk/config/arch/powerpc64.in | 1 1 0 0 +
22 files changed, 489 insertions(+), 913 deletions(-)
config/arch/alpha.in
config/arch/arm.in
config/arch/ia64.in
config/arch/mips.in
config/arch/powerpc.in
config/arch/powerpc64.in
config/arch/sh.in
config/arch/x86.in
config/binutils.in
config/binutils/binutils.in
config/binutils/elf2flt.in
config/config.in
config/elf2flt.in
config/kernel/linux.in
config/kernel/linux.in-common
config/kernel/uclinux.in
config/libc/eglibc.in
config/libc/glibc.in
config/target.in
scripts/build/binutils.sh
scripts/build/binutils/binutils.sh
scripts/build/binutils/elf2flt.sh
scripts/build/elf2flt.sh
scripts/build/kernel/linux-common.sh
scripts/build/kernel/linux.sh
scripts/build/kernel/uclinux.sh
scripts/crosstool-NG.sh.in
     1.1 --- a/config/arch/alpha.in	Tue May 19 16:05:36 2009 +0000
     1.2 +++ b/config/arch/alpha.in	Wed May 20 20:13:13 2009 +0000
     1.3 @@ -1,6 +1,7 @@
     1.4  # Alpha specific configuration file
     1.5  
     1.6  config ARCH_alpha
     1.7 +    select ARCH_USE_MMU
     1.8      select ARCH_SUPPORT_CPU
     1.9      select ARCH_SUPPORT_TUNE
    1.10      help
     2.1 --- a/config/arch/arm.in	Tue May 19 16:05:36 2009 +0000
     2.2 +++ b/config/arch/arm.in	Wed May 20 20:13:13 2009 +0000
     2.3 @@ -1,6 +1,7 @@
     2.4  # ARM specific configuration file
     2.5  
     2.6  config ARCH_arm
     2.7 +    select ARCH_USE_MMU
     2.8      select ARCH_SUPPORTS_BOTH_ENDIAN
     2.9      select ARCH_DEFAULT_LE
    2.10      select ARCH_SUPPORT_ARCH
    2.11 @@ -23,4 +24,3 @@
    2.12      default y
    2.13      depends on ! ARCH_ARM_EABI
    2.14      select ARCH_SUPPORT_ABI
    2.15 -
     3.1 --- a/config/arch/ia64.in	Tue May 19 16:05:36 2009 +0000
     3.2 +++ b/config/arch/ia64.in	Wed May 20 20:13:13 2009 +0000
     3.3 @@ -2,6 +2,7 @@
     3.4  # depends on EXPERIMENTAL
     3.5  
     3.6  config ARCH_ia64
     3.7 +    select ARCH_USE_MMU
     3.8      select ARCH_64
     3.9      select ARCH_SUPPORTS_BOTH_ENDIAN
    3.10      help
     4.1 --- a/config/arch/mips.in	Tue May 19 16:05:36 2009 +0000
     4.2 +++ b/config/arch/mips.in	Wed May 20 20:13:13 2009 +0000
     4.3 @@ -1,6 +1,7 @@
     4.4  # MIPS specific config options
     4.5  
     4.6  config ARCH_mips
     4.7 +    select ARCH_USE_MMU
     4.8      select ARCH_SUPPORTS_BOTH_ENDIAN
     4.9      select ARCH_DEFAULT_BE
    4.10      select ARCH_SUPPORT_ARCH
     5.1 --- a/config/arch/powerpc.in	Tue May 19 16:05:36 2009 +0000
     5.2 +++ b/config/arch/powerpc.in	Wed May 20 20:13:13 2009 +0000
     5.3 @@ -1,6 +1,7 @@
     5.4  # powerpc specific configuration file
     5.5  
     5.6  config ARCH_powerpc
     5.7 +    select ARCH_USE_MMU
     5.8      select ARCH_SUPPORT_ABI
     5.9      select ARCH_SUPPORT_CPU
    5.10      select ARCH_SUPPORT_TUNE
     6.1 --- a/config/arch/powerpc64.in	Tue May 19 16:05:36 2009 +0000
     6.2 +++ b/config/arch/powerpc64.in	Wed May 20 20:13:13 2009 +0000
     6.3 @@ -2,6 +2,7 @@
     6.4  # depends on EXPERIMENTAL
     6.5  
     6.6  config ARCH_powerpc64
     6.7 +    select ARCH_USE_MMU
     6.8      select ARCH_64
     6.9      select ARCH_SUPPORT_ABI
    6.10      select ARCH_SUPPORT_CPU
     7.1 --- a/config/arch/sh.in	Tue May 19 16:05:36 2009 +0000
     7.2 +++ b/config/arch/sh.in	Wed May 20 20:13:13 2009 +0000
     7.3 @@ -2,6 +2,7 @@
     7.4  # depends on EXPERIMENTAL
     7.5  
     7.6  config ARCH_sh
     7.7 +    select ARCH_USE_MMU
     7.8      select ARCH_SUPPORTS_BOTH_ENDIAN
     7.9      select ARCH_DEFAULT_LE
    7.10      help
     8.1 --- a/config/arch/x86.in	Tue May 19 16:05:36 2009 +0000
     8.2 +++ b/config/arch/x86.in	Wed May 20 20:13:13 2009 +0000
     8.3 @@ -1,6 +1,7 @@
     8.4  # x86 specific options
     8.5  
     8.6  config ARCH_x86
     8.7 +    select ARCH_USE_MMU
     8.8      select ARCH_SUPPORT_ARCH
     8.9      select ARCH_SUPPORT_CPU
    8.10      select ARCH_SUPPORT_TUNE
     9.1 --- a/config/binutils.in	Tue May 19 16:05:36 2009 +0000
     9.2 +++ b/config/binutils.in	Wed May 20 20:13:13 2009 +0000
     9.3 @@ -1,160 +1,44 @@
     9.4 -# binutils options
     9.5 +# Binary utilities menu
     9.6  
     9.7 -menu "binutils"
     9.8 -
     9.9 -config BINUTILS_VERSION
    9.10 -    string
    9.11 +menu "Binary utilities"
    9.12  
    9.13  choice
    9.14      bool
    9.15 -    prompt "binutils version"
    9.16 +    prompt "Binary format:"
    9.17  
    9.18 -config BINUTILS_V_2_14
    9.19 +if ARCH_USE_MMU
    9.20 +
    9.21 +config ARCH_BINFMT_ELF
    9.22      bool
    9.23 -    prompt "2.14 (OBSOLETE)"
    9.24 -    depends on OBSOLETE
    9.25 +    prompt "ELF"
    9.26 +    help
    9.27 +      This will make your system build ELF exectubales,
    9.28 +      suitable for architectures with an MMU.
    9.29  
    9.30 -config BINUTILS_V_2_15
    9.31 +endif # ARCH_USE_MMU
    9.32 +
    9.33 +if ! ARCH_USE_MMU
    9.34 +
    9.35 +config ARCH_BINFMT_FLAT
    9.36      bool
    9.37 -    prompt "2.15 (OBSOLETE)"
    9.38 -    depends on OBSOLETE
    9.39 +    prompt "Flat"
    9.40 +    help
    9.41 +      This will build flat binaries, suitable for
    9.42 +      MMU-less architectures.
    9.43  
    9.44 -config BINUTILS_V_2_16_1
    9.45 +config ARCH_BINFMT_FDPIC
    9.46      bool
    9.47 -    prompt "2.16.1"
    9.48 +    prompt "FD_PIC ELF"
    9.49 +    help
    9.50 +      This will build FD_PIC ELF binaries, suitable for
    9.51 +      MMU-less architectures that still require to use
    9.52 +      shared libraries (FIXME).
    9.53  
    9.54 -config BINUTILS_V_2_17
    9.55 -    bool
    9.56 -    prompt "2.17"
    9.57 +endif # ! ARCH_USE_MMU
    9.58  
    9.59 -config BINUTILS_V_2_18
    9.60 -    bool
    9.61 -    prompt "2.18"
    9.62 -
    9.63 -config BINUTILS_V_2_18_50_0_4
    9.64 -    bool
    9.65 -    prompt "2.18.50.0.4 (EXPERIMENTAL)"
    9.66 -    depends on EXPERIMENTAL
    9.67 -
    9.68 -config BINUTILS_V_2_18_50_0_6
    9.69 -    bool
    9.70 -    prompt "2.18.50.0.6 (EXPERIMENTAL)"
    9.71 -    depends on EXPERIMENTAL
    9.72 -
    9.73 -config BINUTILS_V_2_18_50_0_7
    9.74 -    bool
    9.75 -    prompt "2.18.50.0.7 (EXPERIMENTAL)"
    9.76 -    depends on EXPERIMENTAL
    9.77 -
    9.78 -config BINUTILS_V_2_18_50_0_8
    9.79 -    bool
    9.80 -    prompt "2.18.50.0.8 (EXPERIMENTAL)"
    9.81 -    depends on EXPERIMENTAL
    9.82 -
    9.83 -config BINUTILS_V_2_18_50_0_9
    9.84 -    bool
    9.85 -    prompt "2.18.50.0.9 (EXPERIMENTAL)"
    9.86 -    depends on EXPERIMENTAL
    9.87 -
    9.88 -config BINUTILS_V_2_18_90
    9.89 -    bool
    9.90 -    prompt "2.18.90 (EXPERIMENTAL)"
    9.91 -    depends on EXPERIMENTAL
    9.92 -
    9.93 -config BINUTILS_V_2_18_91
    9.94 -    bool
    9.95 -    prompt "2.18.91 (EXPERIMENTAL)"
    9.96 -    depends on EXPERIMENTAL
    9.97 -
    9.98 -config BINUTILS_V_2_18_92
    9.99 -    bool
   9.100 -    prompt "2.18.92 (EXPERIMENTAL)"
   9.101 -    depends on EXPERIMENTAL
   9.102 -
   9.103 -config BINUTILS_V_2_18_93
   9.104 -    bool
   9.105 -    prompt "2.18.93 (EXPERIMENTAL)"
   9.106 -    depends on EXPERIMENTAL
   9.107 -
   9.108 -config BINUTILS_V_2_19
   9.109 -    bool
   9.110 -    prompt "2.19"
   9.111 -
   9.112 -config BINUTILS_V_2_19_1
   9.113 -    bool
   9.114 -    prompt "2.19.1"
   9.115 -
   9.116 -config BINUTILS_V_2_19_50_0_1
   9.117 -    bool
   9.118 -    prompt "2.19.50.0.1 (EXPERIMENTAL)"
   9.119 -    depends on EXPERIMENTAL
   9.120 -
   9.121 -config BINUTILS_V_2_19_51_0_1
   9.122 -    bool
   9.123 -    prompt "2.19.51.0.1  (EXPERIMENTAL)"
   9.124 -    depends on EXPERIMENTAL
   9.125 -
   9.126 -config BINUTILS_V_2_19_51_0_2
   9.127 -    bool
   9.128 -    prompt "2.19.51.0.2  (EXPERIMENTAL)"
   9.129 -    depends on EXPERIMENTAL
   9.130 -
   9.131 -# CT_INSERT_VERSION_ABOVE
   9.132 -# Don't remove above line!
   9.133  endchoice
   9.134  
   9.135 -config BINUTILS_VERSION
   9.136 -    string
   9.137 -    default "2.14" if BINUTILS_V_2_14
   9.138 -    default "2.15" if BINUTILS_V_2_15
   9.139 -    default "2.16.1" if BINUTILS_V_2_16_1
   9.140 -    default "2.17" if BINUTILS_V_2_17
   9.141 -    default "2.18" if BINUTILS_V_2_18
   9.142 -    default "2.18.50.0.4" if BINUTILS_V_2_18_50_0_4
   9.143 -    default "2.18.50.0.6" if BINUTILS_V_2_18_50_0_6
   9.144 -    default "2.18.50.0.7" if BINUTILS_V_2_18_50_0_7
   9.145 -    default "2.18.50.0.8" if BINUTILS_V_2_18_50_0_8
   9.146 -    default "2.18.50.0.9" if BINUTILS_V_2_18_50_0_9
   9.147 -    default "2.18.90" if BINUTILS_V_2_18_90
   9.148 -    default "2.18.91" if BINUTILS_V_2_18_91
   9.149 -    default "2.18.92" if BINUTILS_V_2_18_92
   9.150 -    default "2.18.93" if BINUTILS_V_2_18_93
   9.151 -    default "2.19" if BINUTILS_V_2_19
   9.152 -    default "2.19.1" if BINUTILS_V_2_19_1
   9.153 -    default "2.19.50.0.1" if BINUTILS_V_2_19_50_0_1
   9.154 -    default "2.19.51.0.1" if BINUTILS_V_2_19_51_0_1
   9.155 -    default "2.19.51.0.2" if BINUTILS_V_2_19_51_0_2
   9.156 -# CT_INSERT_VERSION_STRING_ABOVE
   9.157 -# Don't remove above line!
   9.158 -
   9.159 -config BINUTILS_EXTRA_CONFIG
   9.160 -    string
   9.161 -    prompt "binutils extra config"
   9.162 -    default ""
   9.163 -    help
   9.164 -      Extra flags passed onto ./configure when configuring
   9.165 -
   9.166 -config BINUTILS_FOR_TARGET
   9.167 -    bool
   9.168 -    prompt "binutils libraries for the target"
   9.169 -    depends on ! BARE_METAL
   9.170 -    default n
   9.171 -    help
   9.172 -      Some utilities may need binutils libraries to be available on
   9.173 -      the target, eg. oprofile.
   9.174 -
   9.175 -if BINUTILS_FOR_TARGET
   9.176 -
   9.177 -config BINUTILS_FOR_TARGET_IBERTY
   9.178 -    bool
   9.179 -    prompt "libiberty"
   9.180 -    default y
   9.181 -
   9.182 -config BINUTILS_FOR_TARGET_BFD
   9.183 -    bool
   9.184 -    prompt "libbfd"
   9.185 -    default y
   9.186 -
   9.187 -endif # BINUTILS_FOR_TARGET
   9.188 +source config/binutils/binutils.in
   9.189 +source config/binutils/elf2flt.in
   9.190  
   9.191  endmenu
    10.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    10.2 +++ b/config/binutils/binutils.in	Wed May 20 20:13:13 2009 +0000
    10.3 @@ -0,0 +1,158 @@
    10.4 +# binutils options
    10.5 +
    10.6 +comment "GNU binutils"
    10.7 +
    10.8 +config BINUTILS_VERSION
    10.9 +    string
   10.10 +
   10.11 +choice
   10.12 +    bool
   10.13 +    prompt "binutils version"
   10.14 +
   10.15 +config BINUTILS_V_2_14
   10.16 +    bool
   10.17 +    prompt "2.14 (OBSOLETE)"
   10.18 +    depends on OBSOLETE
   10.19 +
   10.20 +config BINUTILS_V_2_15
   10.21 +    bool
   10.22 +    prompt "2.15 (OBSOLETE)"
   10.23 +    depends on OBSOLETE
   10.24 +
   10.25 +config BINUTILS_V_2_16_1
   10.26 +    bool
   10.27 +    prompt "2.16.1"
   10.28 +
   10.29 +config BINUTILS_V_2_17
   10.30 +    bool
   10.31 +    prompt "2.17"
   10.32 +
   10.33 +config BINUTILS_V_2_18
   10.34 +    bool
   10.35 +    prompt "2.18"
   10.36 +
   10.37 +config BINUTILS_V_2_18_50_0_4
   10.38 +    bool
   10.39 +    prompt "2.18.50.0.4 (EXPERIMENTAL)"
   10.40 +    depends on EXPERIMENTAL
   10.41 +
   10.42 +config BINUTILS_V_2_18_50_0_6
   10.43 +    bool
   10.44 +    prompt "2.18.50.0.6 (EXPERIMENTAL)"
   10.45 +    depends on EXPERIMENTAL
   10.46 +
   10.47 +config BINUTILS_V_2_18_50_0_7
   10.48 +    bool
   10.49 +    prompt "2.18.50.0.7 (EXPERIMENTAL)"
   10.50 +    depends on EXPERIMENTAL
   10.51 +
   10.52 +config BINUTILS_V_2_18_50_0_8
   10.53 +    bool
   10.54 +    prompt "2.18.50.0.8 (EXPERIMENTAL)"
   10.55 +    depends on EXPERIMENTAL
   10.56 +
   10.57 +config BINUTILS_V_2_18_50_0_9
   10.58 +    bool
   10.59 +    prompt "2.18.50.0.9 (EXPERIMENTAL)"
   10.60 +    depends on EXPERIMENTAL
   10.61 +
   10.62 +config BINUTILS_V_2_18_90
   10.63 +    bool
   10.64 +    prompt "2.18.90 (EXPERIMENTAL)"
   10.65 +    depends on EXPERIMENTAL
   10.66 +
   10.67 +config BINUTILS_V_2_18_91
   10.68 +    bool
   10.69 +    prompt "2.18.91 (EXPERIMENTAL)"
   10.70 +    depends on EXPERIMENTAL
   10.71 +
   10.72 +config BINUTILS_V_2_18_92
   10.73 +    bool
   10.74 +    prompt "2.18.92 (EXPERIMENTAL)"
   10.75 +    depends on EXPERIMENTAL
   10.76 +
   10.77 +config BINUTILS_V_2_18_93
   10.78 +    bool
   10.79 +    prompt "2.18.93 (EXPERIMENTAL)"
   10.80 +    depends on EXPERIMENTAL
   10.81 +
   10.82 +config BINUTILS_V_2_19
   10.83 +    bool
   10.84 +    prompt "2.19"
   10.85 +
   10.86 +config BINUTILS_V_2_19_1
   10.87 +    bool
   10.88 +    prompt "2.19.1"
   10.89 +
   10.90 +config BINUTILS_V_2_19_50_0_1
   10.91 +    bool
   10.92 +    prompt "2.19.50.0.1 (EXPERIMENTAL)"
   10.93 +    depends on EXPERIMENTAL
   10.94 +
   10.95 +config BINUTILS_V_2_19_51_0_1
   10.96 +    bool
   10.97 +    prompt "2.19.51.0.1  (EXPERIMENTAL)"
   10.98 +    depends on EXPERIMENTAL
   10.99 +
  10.100 +config BINUTILS_V_2_19_51_0_2
  10.101 +    bool
  10.102 +    prompt "2.19.51.0.2  (EXPERIMENTAL)"
  10.103 +    depends on EXPERIMENTAL
  10.104 +
  10.105 +# CT_INSERT_VERSION_ABOVE
  10.106 +# Don't remove above line!
  10.107 +endchoice
  10.108 +
  10.109 +config BINUTILS_VERSION
  10.110 +    string
  10.111 +    default "2.14" if BINUTILS_V_2_14
  10.112 +    default "2.15" if BINUTILS_V_2_15
  10.113 +    default "2.16.1" if BINUTILS_V_2_16_1
  10.114 +    default "2.17" if BINUTILS_V_2_17
  10.115 +    default "2.18" if BINUTILS_V_2_18
  10.116 +    default "2.18.50.0.4" if BINUTILS_V_2_18_50_0_4
  10.117 +    default "2.18.50.0.6" if BINUTILS_V_2_18_50_0_6
  10.118 +    default "2.18.50.0.7" if BINUTILS_V_2_18_50_0_7
  10.119 +    default "2.18.50.0.8" if BINUTILS_V_2_18_50_0_8
  10.120 +    default "2.18.50.0.9" if BINUTILS_V_2_18_50_0_9
  10.121 +    default "2.18.90" if BINUTILS_V_2_18_90
  10.122 +    default "2.18.91" if BINUTILS_V_2_18_91
  10.123 +    default "2.18.92" if BINUTILS_V_2_18_92
  10.124 +    default "2.18.93" if BINUTILS_V_2_18_93
  10.125 +    default "2.19" if BINUTILS_V_2_19
  10.126 +    default "2.19.1" if BINUTILS_V_2_19_1
  10.127 +    default "2.19.50.0.1" if BINUTILS_V_2_19_50_0_1
  10.128 +    default "2.19.51.0.1" if BINUTILS_V_2_19_51_0_1
  10.129 +    default "2.19.51.0.2" if BINUTILS_V_2_19_51_0_2
  10.130 +# CT_INSERT_VERSION_STRING_ABOVE
  10.131 +# Don't remove above line!
  10.132 +
  10.133 +config BINUTILS_EXTRA_CONFIG
  10.134 +    string
  10.135 +    prompt "binutils extra config"
  10.136 +    default ""
  10.137 +    help
  10.138 +      Extra flags passed onto ./configure when configuring
  10.139 +
  10.140 +config BINUTILS_FOR_TARGET
  10.141 +    bool
  10.142 +    prompt "binutils libraries for the target"
  10.143 +    depends on ! BARE_METAL
  10.144 +    default n
  10.145 +    help
  10.146 +      Some utilities may need binutils libraries to be available on
  10.147 +      the target, eg. oprofile.
  10.148 +
  10.149 +if BINUTILS_FOR_TARGET
  10.150 +
  10.151 +config BINUTILS_FOR_TARGET_IBERTY
  10.152 +    bool
  10.153 +    prompt "libiberty"
  10.154 +    default y
  10.155 +
  10.156 +config BINUTILS_FOR_TARGET_BFD
  10.157 +    bool
  10.158 +    prompt "libbfd"
  10.159 +    default y
  10.160 +
  10.161 +endif # BINUTILS_FOR_TARGET
    11.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    11.2 +++ b/config/binutils/elf2flt.in	Wed May 20 20:13:13 2009 +0000
    11.3 @@ -0,0 +1,50 @@
    11.4 +# elf2flt options
    11.5 +
    11.6 +if ARCH_BINFMT_FLAT
    11.7 +
    11.8 +comment "elf2flt"
    11.9 +
   11.10 +config ELF2FLT_VERSION
   11.11 +    string
   11.12 +
   11.13 +choice
   11.14 +    bool
   11.15 +    prompt "elf2flt version"
   11.16 +
   11.17 +config ELF2FLT_CVSHEAD
   11.18 +    bool
   11.19 +    prompt "CVS Head"
   11.20 +    help
   11.21 +      Grab the latest version of elf2flt from the CVS repository
   11.22 +
   11.23 +config ELF2FLT_CVS_SNAPSHOT
   11.24 +    bool
   11.25 +    prompt "CVS Snapshot"
   11.26 +
   11.27 +# CT_INSERT_VERSION_ABOVE
   11.28 +# Don't remove above line!
   11.29 +endchoice
   11.30 +
   11.31 +config ELF2FLT_CVS_SNAPSHOT_SPEC
   11.32 +    string
   11.33 +    depends on ELF2FLT_CVS_SNAPSHOT
   11.34 +    default ""
   11.35 +    prompt "CVS refspec for elf2flt"
   11.36 +    help
   11.37 +       What you enter here will be passed verbatim to the cvs checkout command
   11.38 +       so be careful!
   11.39 +
   11.40 +config ELF2FLT_VERSION
   11.41 +    string
   11.42 +    default "head" if ELF2FLT_CVSHEAD
   11.43 +# CT_INSERT_VERSION_STRING_ABOVE
   11.44 +# Don't remove above line!
   11.45 +
   11.46 +config ELF2FLT_EXTRA_CONFIG
   11.47 +    string
   11.48 +    prompt "elf2flt extra config"
   11.49 +    default ""
   11.50 +    help
   11.51 +      Extra flags passed onto ./configure when configuring
   11.52 +
   11.53 +endif
    12.1 --- a/config/config.in	Tue May 19 16:05:36 2009 +0000
    12.2 +++ b/config/config.in	Wed May 20 20:13:13 2009 +0000
    12.3 @@ -4,7 +4,6 @@
    12.4  source config/kernel.in
    12.5  source config/companion_libs.in
    12.6  source config/binutils.in
    12.7 -source config/elf2flt.in
    12.8  source config/cc.in
    12.9  source config/libc.in
   12.10  source config/tools.in
    13.1 --- a/config/elf2flt.in	Tue May 19 16:05:36 2009 +0000
    13.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    13.3 @@ -1,49 +0,0 @@
    13.4 -# elf2flt options
    13.5 -
    13.6 -menu "elf2flt"
    13.7 -    depends on KERNEL_UCLINUX_BINFMT_FLAT
    13.8 -
    13.9 -config ELF2FLT_VERSION
   13.10 -    string
   13.11 -
   13.12 -choice
   13.13 -    bool
   13.14 -    prompt "elf2flt version"
   13.15 -
   13.16 -config ELF2FLT_CVSHEAD
   13.17 -    bool
   13.18 -    prompt "CVS Head"
   13.19 -    help
   13.20 -      Grab the latest version of elf2flt from the CVS repository
   13.21 -
   13.22 -config ELF2FLT_CVS_SNAPSHOT
   13.23 -    bool
   13.24 -    prompt "CVS Snapshot"
   13.25 -
   13.26 -# CT_INSERT_VERSION_ABOVE
   13.27 -# Don't remove above line!
   13.28 -endchoice
   13.29 -
   13.30 -config ELF2FLT_CVS_SNAPSHOT_SPEC
   13.31 -    string
   13.32 -    depends on ELF2FLT_CVS_SNAPSHOT
   13.33 -    default ""
   13.34 -    prompt "CVS refspec for elf2flt"
   13.35 -    help
   13.36 -       What you enter here will be passed verbatim to the cvs checkout command
   13.37 -       so be careful!
   13.38 -
   13.39 -config ELF2FLT_VERSION
   13.40 -    string
   13.41 -    default "head" if ELF2FLT_CVSHEAD
   13.42 -# CT_INSERT_VERSION_STRING_ABOVE
   13.43 -# Don't remove above line!
   13.44 -
   13.45 -config ELF2FLT_EXTRA_CONFIG
   13.46 -    string
   13.47 -    prompt "elf2flt extra config"
   13.48 -    default ""
   13.49 -    help
   13.50 -      Extra flags passed onto ./configure when configuring
   13.51 -
   13.52 -endmenu
    14.1 --- a/config/kernel/linux.in	Tue May 19 16:05:36 2009 +0000
    14.2 +++ b/config/kernel/linux.in	Wed May 20 20:13:13 2009 +0000
    14.3 @@ -1,6 +1,255 @@
    14.4 +# Linux kernel options
    14.5 +
    14.6  # Linux kernel options
    14.7  
    14.8  config KERNEL_linux
    14.9      help
   14.10        Build a toolchain targeting systems running Linux as a kernel.
   14.11  
   14.12 +choice
   14.13 +    bool
   14.14 +    prompt "Get kernel headers from:"
   14.15 +
   14.16 +config KERNEL_LINUX_INSTALL
   14.17 +    bool
   14.18 +    prompt "kernel's 'headers_install'"
   14.19 +    help
   14.20 +      This will make use of the new headers_install rule in recent kernels.
   14.21 +      This is most probably what you want to use.
   14.22 +
   14.23 +if KERNEL_LINUX_INSTALL
   14.24 +
   14.25 +config KERNEL_LINUX_INSTALL_CHECK
   14.26 +    bool
   14.27 +    prompt "Check installed headers"
   14.28 +    default y
   14.29 +    help
   14.30 +      If you are in doubt that installed headers are buggy, say 'Y'
   14.31 +      here to have an extra check passed onto the headers.
   14.32 +
   14.33 +choice
   14.34 +    bool
   14.35 +    prompt "Linux kernel version"
   14.36 +
   14.37 +config KERNEL_V_2_6_18_8
   14.38 +    bool
   14.39 +    prompt "2.6.18.8 (OBSOLETE)"
   14.40 +    depends on OBSOLETE
   14.41 +
   14.42 +config KERNEL_V_2_6_19_7
   14.43 +    bool
   14.44 +    prompt "2.6.19.7 (OBSOLETE)"
   14.45 +    depends on OBSOLETE
   14.46 +
   14.47 +config KERNEL_V_2_6_20_21
   14.48 +    bool
   14.49 +    prompt "2.6.20.21 (OBSOLETE)"
   14.50 +    depends on OBSOLETE
   14.51 +
   14.52 +config KERNEL_V_2_6_21_7
   14.53 +    bool
   14.54 +    prompt "2.6.21.7 (OBSOLETE)"
   14.55 +    depends on OBSOLETE
   14.56 +
   14.57 +config KERNEL_V_2_6_22_19
   14.58 +    bool
   14.59 +    prompt "2.6.22.19 (OBSOLETE)"
   14.60 +    depends on OBSOLETE
   14.61 +
   14.62 +config KERNEL_V_2_6_23_17
   14.63 +    bool
   14.64 +    prompt "2.6.23.17 (OBSOLETE)"
   14.65 +    depends on OBSOLETE
   14.66 +
   14.67 +config KERNEL_V_2_6_24_7
   14.68 +    bool
   14.69 +    prompt "2.6.24.7 (OBSOLETE)"
   14.70 +    depends on OBSOLETE
   14.71 +
   14.72 +config KERNEL_V_2_6_25_20
   14.73 +    bool
   14.74 +    prompt "2.6.25.20 (OBSOLETE)"
   14.75 +    depends on OBSOLETE
   14.76 +
   14.77 +config KERNEL_V_2_6_26_8
   14.78 +    bool
   14.79 +    prompt "2.6.26.8 (OBSOLETE)"
   14.80 +    depends on OBSOLETE
   14.81 +
   14.82 +config KERNEL_V_2_6_27_22
   14.83 +    bool
   14.84 +    prompt "2.6.27.22 (OBSOLETE)"
   14.85 +    depends on OBSOLETE
   14.86 +
   14.87 +config KERNEL_V_2_6_28
   14.88 +    bool
   14.89 +    prompt "2.6.28"
   14.90 +
   14.91 +config KERNEL_V_2_6_28_1
   14.92 +    bool
   14.93 +    prompt "2.6.28.1"
   14.94 +
   14.95 +config KERNEL_V_2_6_28_2
   14.96 +    bool
   14.97 +    prompt "2.6.28.2"
   14.98 +
   14.99 +config KERNEL_V_2_6_28_3
  14.100 +    bool
  14.101 +    prompt "2.6.28.3"
  14.102 +
  14.103 +config KERNEL_V_2_6_28_4
  14.104 +    bool
  14.105 +    prompt "2.6.28.4"
  14.106 +
  14.107 +config KERNEL_V_2_6_28_5
  14.108 +    bool
  14.109 +    prompt "2.6.28.5"
  14.110 +
  14.111 +config KERNEL_V_2_6_28_6
  14.112 +    bool
  14.113 +    prompt "2.6.28.6"
  14.114 +
  14.115 +config KERNEL_V_2_6_28_7
  14.116 +    bool
  14.117 +    prompt "2.6.28.7"
  14.118 +
  14.119 +config KERNEL_V_2_6_28_8
  14.120 +    bool
  14.121 +    prompt "2.6.28.8"
  14.122 +
  14.123 +config KERNEL_V_2_6_28_9
  14.124 +    bool
  14.125 +    prompt "2.6.28.9"
  14.126 +
  14.127 +config KERNEL_V_2_6_28_10
  14.128 +    bool
  14.129 +    prompt "2.6.28.10"
  14.130 +
  14.131 +config KERNEL_V_2_6_29
  14.132 +    bool
  14.133 +    prompt "2.6.29"
  14.134 +
  14.135 +config KERNEL_V_2_6_29_1
  14.136 +    bool
  14.137 +    prompt "2.6.29.1"
  14.138 +
  14.139 +config KERNEL_V_2_6_29_2
  14.140 +    bool
  14.141 +    prompt "2.6.29.2"
  14.142 +
  14.143 +# CT_INSERT_VERSION_ABOVE
  14.144 +# Don't remove above line!
  14.145 +
  14.146 +config KERNEL_V_select
  14.147 +    bool
  14.148 +    prompt "Other version (EXPERIMENTAL)"
  14.149 +    depends on EXPERIMENTAL
  14.150 +
  14.151 +endchoice
  14.152 +
  14.153 +config KERNEL_VERSION
  14.154 +    string
  14.155 +    prompt "Kernel version" if KERNEL_V_select
  14.156 +    default "2.6.18.8" if KERNEL_V_2_6_18_8
  14.157 +    default "2.6.19.7" if KERNEL_V_2_6_19_7
  14.158 +    default "2.6.20.21" if KERNEL_V_2_6_20_21
  14.159 +    default "2.6.21.7" if KERNEL_V_2_6_21_7
  14.160 +    default "2.6.22.19" if KERNEL_V_2_6_22_19
  14.161 +    default "2.6.23.17" if KERNEL_V_2_6_23_17
  14.162 +    default "2.6.24.7" if KERNEL_V_2_6_24_7
  14.163 +    default "2.6.25.20" if KERNEL_V_2_6_25_20
  14.164 +    default "2.6.26.8" if KERNEL_V_2_6_26_8
  14.165 +    default "2.6.27.22" if KERNEL_V_2_6_27_22
  14.166 +    default "2.6.28" if KERNEL_V_2_6_28
  14.167 +    default "2.6.28.1" if KERNEL_V_2_6_28_1
  14.168 +    default "2.6.28.2" if KERNEL_V_2_6_28_2
  14.169 +    default "2.6.28.3" if KERNEL_V_2_6_28_3
  14.170 +    default "2.6.28.4" if KERNEL_V_2_6_28_4
  14.171 +    default "2.6.28.5" if KERNEL_V_2_6_28_5
  14.172 +    default "2.6.28.6" if KERNEL_V_2_6_28_6
  14.173 +    default "2.6.28.7" if KERNEL_V_2_6_28_7
  14.174 +    default "2.6.28.8" if KERNEL_V_2_6_28_8
  14.175 +    default "2.6.28.9" if KERNEL_V_2_6_28_9
  14.176 +    default "2.6.28.10" if KERNEL_V_2_6_28_10
  14.177 +    default "2.6.29" if KERNEL_V_2_6_29
  14.178 +    default "2.6.29.1" if KERNEL_V_2_6_29_1
  14.179 +    default "2.6.29.2" if KERNEL_V_2_6_29_2
  14.180 +# CT_INSERT_VERSION_STRING_ABOVE
  14.181 +# Don't remove above line!
  14.182 +    help
  14.183 +      Enter here the kernel version you want to use, if it is
  14.184 +      not listed above. Something like V.P.S or V.P.S.E, where:
  14.185 +        V: VERSION
  14.186 +        P: PATCHLEVEL
  14.187 +        S: SUBLEVEL
  14.188 +        E: EXTRAVERSION
  14.189 +
  14.190 +choice
  14.191 +    bool
  14.192 +    prompt "Kernel verbosity:"
  14.193 +    default KERNEL_LINUX_VERBOSITY_0
  14.194 +
  14.195 +config KERNEL_LINUX_VERBOSITY_0
  14.196 +    bool
  14.197 +    prompt "Simplified"
  14.198 +    help
  14.199 +      Print simplified command lines.
  14.200 +
  14.201 +config KERNEL_LINUX_VERBOSITY_1
  14.202 +    bool
  14.203 +    prompt "Full commands"
  14.204 +    help
  14.205 +      Print full command lines.
  14.206 +
  14.207 +config KERNEL_LINUX_VERBOSITY_2
  14.208 +    bool
  14.209 +    prompt "Exec reasons"
  14.210 +    help
  14.211 +      Print the reasons why a make target is rebuild.
  14.212 +
  14.213 +endchoice
  14.214 +
  14.215 +config KERNEL_LINUX_VERBOSE_LEVEL
  14.216 +    int
  14.217 +    default 0 if KERNEL_LINUX_VERBOSITY_0
  14.218 +    default 1 if KERNEL_LINUX_VERBOSITY_1
  14.219 +    default 2 if KERNEL_LINUX_VERBOSITY_2
  14.220 +
  14.221 +endif
  14.222 +
  14.223 +config KERNEL_LINUX_USE_CUSTOM_HEADERS
  14.224 +    bool
  14.225 +    prompt "Use custom headers"
  14.226 +    help
  14.227 +      If you have some kernel headers lying around, you can enter the path
  14.228 +      below.
  14.229 +
  14.230 +if KERNEL_LINUX_USE_CUSTOM_HEADERS
  14.231 +
  14.232 +config KERNEL_LINUX_CUSTOM_IS_TARBALL
  14.233 +    bool
  14.234 +    prompt "This is a tarball"
  14.235 +    default n
  14.236 +    help
  14.237 +      If you say 'n' here, the path below is expected to point to a directory
  14.238 +      containing readily prepared headers
  14.239 +      
  14.240 +      If you say 'y' here, then the path below is expected to point to a
  14.241 +      tarball of such a directory.
  14.242 +      
  14.243 +      Eg., if your headers are available in: /foo/bar/buz/my_hdrs/include,
  14.244 +      say 'n' here, and enter: /foo/bar/buz/my_hdrs below.
  14.245 +      
  14.246 +      Now, passing a tarball around is easier than passing a directory, so
  14.247 +      if you want to, you can make a tarball of /foo/bar/buz/my_hdrs/include,
  14.248 +      say 'y' here, and enter the path to this tarball below.
  14.249 +
  14.250 +config KERNEL_LINUX_CUSTOM_PATH
  14.251 +    string
  14.252 +    prompt "Path to custom headers directory/tarball"
  14.253 +    help
  14.254 +      See KERNEL_LINUX_CUSTOM_IS_TARBALL, above.
  14.255 +
  14.256 +endif # KERNEL_LINUX_USE_CUSTOM_DIR
  14.257 +
  14.258 +endchoice
    15.1 --- a/config/kernel/linux.in-common	Tue May 19 16:05:36 2009 +0000
    15.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    15.3 @@ -1,252 +0,0 @@
    15.4 -# Linux kernel options
    15.5 -
    15.6 -if KERNEL_linux || KERNEL_uclinux
    15.7 -
    15.8 -choice
    15.9 -    bool
   15.10 -    prompt "Get kernel headers from:"
   15.11 -
   15.12 -config KERNEL_LINUX_INSTALL
   15.13 -    bool
   15.14 -    prompt "kernel's 'headers_install'"
   15.15 -    help
   15.16 -      This will make use of the new headers_install rule in recent kernels.
   15.17 -      This is most probably what you want to use.
   15.18 -
   15.19 -if KERNEL_LINUX_INSTALL
   15.20 -
   15.21 -config KERNEL_LINUX_INSTALL_CHECK
   15.22 -    bool
   15.23 -    prompt "Check installed headers"
   15.24 -    default y
   15.25 -    help
   15.26 -      If you are in doubt that installed headers are buggy, say 'Y'
   15.27 -      here to have an extra check passed onto the headers.
   15.28 -
   15.29 -choice
   15.30 -    bool
   15.31 -    prompt "Linux kernel version"
   15.32 -
   15.33 -config KERNEL_V_2_6_18_8
   15.34 -    bool
   15.35 -    prompt "2.6.18.8 (OBSOLETE)"
   15.36 -    depends on OBSOLETE
   15.37 -
   15.38 -config KERNEL_V_2_6_19_7
   15.39 -    bool
   15.40 -    prompt "2.6.19.7 (OBSOLETE)"
   15.41 -    depends on OBSOLETE
   15.42 -
   15.43 -config KERNEL_V_2_6_20_21
   15.44 -    bool
   15.45 -    prompt "2.6.20.21 (OBSOLETE)"
   15.46 -    depends on OBSOLETE
   15.47 -
   15.48 -config KERNEL_V_2_6_21_7
   15.49 -    bool
   15.50 -    prompt "2.6.21.7 (OBSOLETE)"
   15.51 -    depends on OBSOLETE
   15.52 -
   15.53 -config KERNEL_V_2_6_22_19
   15.54 -    bool
   15.55 -    prompt "2.6.22.19 (OBSOLETE)"
   15.56 -    depends on OBSOLETE
   15.57 -
   15.58 -config KERNEL_V_2_6_23_17
   15.59 -    bool
   15.60 -    prompt "2.6.23.17 (OBSOLETE)"
   15.61 -    depends on OBSOLETE
   15.62 -
   15.63 -config KERNEL_V_2_6_24_7
   15.64 -    bool
   15.65 -    prompt "2.6.24.7 (OBSOLETE)"
   15.66 -    depends on OBSOLETE
   15.67 -
   15.68 -config KERNEL_V_2_6_25_20
   15.69 -    bool
   15.70 -    prompt "2.6.25.20 (OBSOLETE)"
   15.71 -    depends on OBSOLETE
   15.72 -
   15.73 -config KERNEL_V_2_6_26_8
   15.74 -    bool
   15.75 -    prompt "2.6.26.8 (OBSOLETE)"
   15.76 -    depends on OBSOLETE
   15.77 -
   15.78 -config KERNEL_V_2_6_27_22
   15.79 -    bool
   15.80 -    prompt "2.6.27.22 (OBSOLETE)"
   15.81 -    depends on OBSOLETE
   15.82 -
   15.83 -config KERNEL_V_2_6_28
   15.84 -    bool
   15.85 -    prompt "2.6.28"
   15.86 -
   15.87 -config KERNEL_V_2_6_28_1
   15.88 -    bool
   15.89 -    prompt "2.6.28.1"
   15.90 -
   15.91 -config KERNEL_V_2_6_28_2
   15.92 -    bool
   15.93 -    prompt "2.6.28.2"
   15.94 -
   15.95 -config KERNEL_V_2_6_28_3
   15.96 -    bool
   15.97 -    prompt "2.6.28.3"
   15.98 -
   15.99 -config KERNEL_V_2_6_28_4
  15.100 -    bool
  15.101 -    prompt "2.6.28.4"
  15.102 -
  15.103 -config KERNEL_V_2_6_28_5
  15.104 -    bool
  15.105 -    prompt "2.6.28.5"
  15.106 -
  15.107 -config KERNEL_V_2_6_28_6
  15.108 -    bool
  15.109 -    prompt "2.6.28.6"
  15.110 -
  15.111 -config KERNEL_V_2_6_28_7
  15.112 -    bool
  15.113 -    prompt "2.6.28.7"
  15.114 -
  15.115 -config KERNEL_V_2_6_28_8
  15.116 -    bool
  15.117 -    prompt "2.6.28.8"
  15.118 -
  15.119 -config KERNEL_V_2_6_28_9
  15.120 -    bool
  15.121 -    prompt "2.6.28.9"
  15.122 -
  15.123 -config KERNEL_V_2_6_28_10
  15.124 -    bool
  15.125 -    prompt "2.6.28.10"
  15.126 -
  15.127 -config KERNEL_V_2_6_29
  15.128 -    bool
  15.129 -    prompt "2.6.29"
  15.130 -
  15.131 -config KERNEL_V_2_6_29_1
  15.132 -    bool
  15.133 -    prompt "2.6.29.1"
  15.134 -
  15.135 -config KERNEL_V_2_6_29_2
  15.136 -    bool
  15.137 -    prompt "2.6.29.2"
  15.138 -
  15.139 -# CT_INSERT_VERSION_ABOVE
  15.140 -# Don't remove above line!
  15.141 -
  15.142 -config KERNEL_V_select
  15.143 -    bool
  15.144 -    prompt "Other version (EXPERIMENTAL)"
  15.145 -    depends on EXPERIMENTAL
  15.146 -
  15.147 -endchoice
  15.148 -
  15.149 -config KERNEL_VERSION
  15.150 -    string
  15.151 -    prompt "Kernel version" if KERNEL_V_select
  15.152 -    default "2.6.18.8" if KERNEL_V_2_6_18_8
  15.153 -    default "2.6.19.7" if KERNEL_V_2_6_19_7
  15.154 -    default "2.6.20.21" if KERNEL_V_2_6_20_21
  15.155 -    default "2.6.21.7" if KERNEL_V_2_6_21_7
  15.156 -    default "2.6.22.19" if KERNEL_V_2_6_22_19
  15.157 -    default "2.6.23.17" if KERNEL_V_2_6_23_17
  15.158 -    default "2.6.24.7" if KERNEL_V_2_6_24_7
  15.159 -    default "2.6.25.20" if KERNEL_V_2_6_25_20
  15.160 -    default "2.6.26.8" if KERNEL_V_2_6_26_8
  15.161 -    default "2.6.27.22" if KERNEL_V_2_6_27_22
  15.162 -    default "2.6.28" if KERNEL_V_2_6_28
  15.163 -    default "2.6.28.1" if KERNEL_V_2_6_28_1
  15.164 -    default "2.6.28.2" if KERNEL_V_2_6_28_2
  15.165 -    default "2.6.28.3" if KERNEL_V_2_6_28_3
  15.166 -    default "2.6.28.4" if KERNEL_V_2_6_28_4
  15.167 -    default "2.6.28.5" if KERNEL_V_2_6_28_5
  15.168 -    default "2.6.28.6" if KERNEL_V_2_6_28_6
  15.169 -    default "2.6.28.7" if KERNEL_V_2_6_28_7
  15.170 -    default "2.6.28.8" if KERNEL_V_2_6_28_8
  15.171 -    default "2.6.28.9" if KERNEL_V_2_6_28_9
  15.172 -    default "2.6.28.10" if KERNEL_V_2_6_28_10
  15.173 -    default "2.6.29" if KERNEL_V_2_6_29
  15.174 -    default "2.6.29.1" if KERNEL_V_2_6_29_1
  15.175 -    default "2.6.29.2" if KERNEL_V_2_6_29_2
  15.176 -# CT_INSERT_VERSION_STRING_ABOVE
  15.177 -# Don't remove above line!
  15.178 -    help
  15.179 -      Enter here the kernel version you want to use, if it is
  15.180 -      not listed above. Something like V.P.S or V.P.S.E, where:
  15.181 -        V: VERSION
  15.182 -        P: PATCHLEVEL
  15.183 -        S: SUBLEVEL
  15.184 -        E: EXTRAVERSION
  15.185 -
  15.186 -choice
  15.187 -    bool
  15.188 -    prompt "Kernel verbosity:"
  15.189 -    default KERNEL_LINUX_VERBOSITY_0
  15.190 -
  15.191 -config KERNEL_LINUX_VERBOSITY_0
  15.192 -    bool
  15.193 -    prompt "Simplified"
  15.194 -    help
  15.195 -      Print simplified command lines.
  15.196 -
  15.197 -config KERNEL_LINUX_VERBOSITY_1
  15.198 -    bool
  15.199 -    prompt "Full commands"
  15.200 -    help
  15.201 -      Print full command lines.
  15.202 -
  15.203 -config KERNEL_LINUX_VERBOSITY_2
  15.204 -    bool
  15.205 -    prompt "Exec reasons"
  15.206 -    help
  15.207 -      Print the reasons why a make target is rebuild.
  15.208 -
  15.209 -endchoice
  15.210 -
  15.211 -config KERNEL_LINUX_VERBOSE_LEVEL
  15.212 -    int
  15.213 -    default 0 if KERNEL_LINUX_VERBOSITY_0
  15.214 -    default 1 if KERNEL_LINUX_VERBOSITY_1
  15.215 -    default 2 if KERNEL_LINUX_VERBOSITY_2
  15.216 -
  15.217 -endif
  15.218 -
  15.219 -config KERNEL_LINUX_USE_CUSTOM_HEADERS
  15.220 -    bool
  15.221 -    prompt "Use custom headers"
  15.222 -    help
  15.223 -      If you have some kernel headers lying around, you can enter the path
  15.224 -      below.
  15.225 -
  15.226 -if KERNEL_LINUX_USE_CUSTOM_HEADERS
  15.227 -
  15.228 -config KERNEL_LINUX_CUSTOM_IS_TARBALL
  15.229 -    bool
  15.230 -    prompt "This is a tarball"
  15.231 -    default n
  15.232 -    help
  15.233 -      If you say 'n' here, the path below is expected to point to a directory
  15.234 -      containing readily prepared headers
  15.235 -      
  15.236 -      If you say 'y' here, then the path below is expected to point to a
  15.237 -      tarball of such a directory.
  15.238 -      
  15.239 -      Eg., if your headers are available in: /foo/bar/buz/my_hdrs/include,
  15.240 -      say 'n' here, and enter: /foo/bar/buz/my_hdrs below.
  15.241 -      
  15.242 -      Now, passing a tarball around is easier than passing a directory, so
  15.243 -      if you want to, you can make a tarball of /foo/bar/buz/my_hdrs/include,
  15.244 -      say 'y' here, and enter the path to this tarball below.
  15.245 -
  15.246 -config KERNEL_LINUX_CUSTOM_PATH
  15.247 -    string
  15.248 -    prompt "Path to custom headers directory/tarball"
  15.249 -    help
  15.250 -      See KERNEL_LINUX_CUSTOM_IS_TARBALL, above.
  15.251 -
  15.252 -endif # KERNEL_LINUX_USE_CUSTOM_DIR
  15.253 -
  15.254 -endchoice
  15.255 -endif
    16.1 --- a/config/kernel/uclinux.in	Tue May 19 16:05:36 2009 +0000
    16.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    16.3 @@ -1,21 +0,0 @@
    16.4 -# uClinux kernel options
    16.5 -# depends on EXPERIMENTAL
    16.6 -
    16.7 -config KERNEL_uclinux
    16.8 -    help
    16.9 -      Build a toolchain targeting systems running uClinux as a kernel.
   16.10 -
   16.11 -choice
   16.12 -    bool
   16.13 -    depends on KERNEL_uclinux
   16.14 -    prompt "noMMU binary format"
   16.15 -
   16.16 -config KERNEL_UCLINUX_BINFMT_FLAT
   16.17 -    bool
   16.18 -    prompt "binfmt_flat"
   16.19 -    help
   16.20 -      This will build the elf2flt and flthdr utilities for your architecture
   16.21 -      into the toolchain
   16.22 -
   16.23 -endchoice
   16.24 -
    17.1 --- a/config/libc/eglibc.in	Tue May 19 16:05:36 2009 +0000
    17.2 +++ b/config/libc/eglibc.in	Wed May 20 20:13:13 2009 +0000
    17.3 @@ -1,5 +1,5 @@
    17.4  # eglibc options
    17.5 -# depends on ! BARE_METAL && ! KERNEL_uclinux
    17.6 +# depends on ! BARE_METAL && ARCH_USE_MMU
    17.7  
    17.8  config LIBC_eglibc
    17.9      select LIBC_SUPPORT_NPTL
    18.1 --- a/config/libc/glibc.in	Tue May 19 16:05:36 2009 +0000
    18.2 +++ b/config/libc/glibc.in	Wed May 20 20:13:13 2009 +0000
    18.3 @@ -1,5 +1,5 @@
    18.4  # glibc options
    18.5 -# depends on ! BARE_METAL && ! KERNEL_uclinux
    18.6 +# depends on ! BARE_METAL && ARCH_USE_MMU
    18.7  
    18.8  config LIBC_glibc
    18.9      select LIBC_SUPPORT_NPTL
    19.1 --- a/config/target.in	Tue May 19 16:05:36 2009 +0000
    19.2 +++ b/config/target.in	Wed May 20 20:13:13 2009 +0000
    19.3 @@ -10,14 +10,18 @@
    19.4      default n
    19.5  
    19.6  # Pre-declare target optimisation variables
    19.7 +config ARCH_SUPPORTS_BOTH_MMU
    19.8 +config ARCH_SUPPORTS_BOTH_ENDIAN
    19.9  config ARCH_SUPPORT_ARCH
   19.10  config ARCH_SUPPORT_ABI
   19.11  config ARCH_SUPPORT_CPU
   19.12  config ARCH_SUPPORT_TUNE
   19.13  config ARCH_SUPPORT_FPU
   19.14 -config ARCH_SUPPORTS_BOTH_ENDIAN
   19.15 +
   19.16 +config ARCH_DEFAULT_HAS_MMU
   19.17  config ARCH_DEFAULT_BE
   19.18  config ARCH_DEFAULT_LE
   19.19 +
   19.20  config ARCH_ARCH
   19.21  config ARCH_ABI
   19.22  config ARCH_CPU
   19.23 @@ -34,6 +38,22 @@
   19.24  
   19.25  source config.gen/arch.in
   19.26  
   19.27 +#--------------------------------------
   19.28 +config ARCH_SUPPORTS_BOTH_MMU
   19.29 +    bool
   19.30 +    default n
   19.31 +
   19.32 +config ARCH_DEFAULT_HAS_MMU
   19.33 +    bool
   19.34 +    default n
   19.35 +
   19.36 +config ARCH_USE_MMU
   19.37 +    bool
   19.38 +    prompt "Use the MMU" if ARCH_SUPPORTS_BOTH_MMU
   19.39 +    default n if ! ARCH_DEFAULT_HAS_MMU
   19.40 +    default y if ARCH_DEFAULT_HAS_MMU
   19.41 +
   19.42 +#--------------------------------------
   19.43  config ARCH_SUPPORTS_BOTH_ENDIAN
   19.44      bool
   19.45      default n
   19.46 @@ -63,6 +83,7 @@
   19.47  
   19.48  endchoice
   19.49  
   19.50 +#--------------------------------------
   19.51  comment "Target optimisations"
   19.52  
   19.53  config ARCH_SUPPORT_ARCH
    20.1 --- a/scripts/build/binutils.sh	Tue May 19 16:05:36 2009 +0000
    20.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    20.3 @@ -1,116 +0,0 @@
    20.4 -# This file adds functions to build binutils
    20.5 -# Copyright 2007 Yann E. MORIN
    20.6 -# Licensed under the GPL v2. See COPYING in the root of this package
    20.7 -
    20.8 -# Download binutils
    20.9 -do_binutils_get() {
   20.10 -    CT_GetFile "binutils-${CT_BINUTILS_VERSION}"                                        \
   20.11 -               {ftp,http}://{ftp.gnu.org/gnu,ftp.kernel.org/pub/linux/devel}/binutils   \
   20.12 -               ftp://gcc.gnu.org/pub/binutils/{releases,snapshots}
   20.13 -}
   20.14 -
   20.15 -# Extract binutils
   20.16 -do_binutils_extract() {
   20.17 -    CT_Extract "binutils-${CT_BINUTILS_VERSION}"
   20.18 -    CT_Patch "binutils-${CT_BINUTILS_VERSION}"
   20.19 -}
   20.20 -
   20.21 -# Build binutils
   20.22 -do_binutils() {
   20.23 -    mkdir -p "${CT_BUILD_DIR}/build-binutils"
   20.24 -    cd "${CT_BUILD_DIR}/build-binutils"
   20.25 -
   20.26 -    CT_DoStep INFO "Installing binutils"
   20.27 -
   20.28 -    binutils_opts=
   20.29 -    # If GMP and MPFR were configured, then use that,
   20.30 -    # otherwise let binutils find the system-wide libraries, if they exist.
   20.31 -    if [ "${CT_GMP_MPFR}" = "y" ]; then
   20.32 -        binutils_opts="--with-gmp=${CT_PREFIX_DIR} --with-mpfr=${CT_PREFIX_DIR}"
   20.33 -    fi
   20.34 -
   20.35 -    CT_DoLog EXTRA "Configuring binutils"
   20.36 -    CFLAGS="${CT_CFLAGS_FOR_HOST}"                              \
   20.37 -    CT_DoExecLog ALL                                            \
   20.38 -    "${CT_SRC_DIR}/binutils-${CT_BINUTILS_VERSION}/configure"   \
   20.39 -        --build=${CT_BUILD}                                     \
   20.40 -        --host=${CT_HOST}                                       \
   20.41 -        --target=${CT_TARGET}                                   \
   20.42 -        --prefix=${CT_PREFIX_DIR}                               \
   20.43 -        --disable-nls                                           \
   20.44 -        --disable-multilib                                      \
   20.45 -        --disable-werror                                        \
   20.46 -        ${binutils_opts}                                        \
   20.47 -        ${CT_ARCH_WITH_FLOAT}                                   \
   20.48 -        ${CT_BINUTILS_EXTRA_CONFIG}                             \
   20.49 -        ${BINUTILS_SYSROOT_ARG}
   20.50 -
   20.51 -    CT_DoLog EXTRA "Building binutils"
   20.52 -    CT_DoExecLog ALL make ${PARALLELMFLAGS}
   20.53 -
   20.54 -    CT_DoLog EXTRA "Installing binutils"
   20.55 -    CT_DoExecLog ALL make install
   20.56 -
   20.57 -    # Make those new tools available to the core C compilers to come.
   20.58 -    # Note: some components want the ${TARGET}-{ar,as,ld,strip} commands as
   20.59 -    # well. Create that.
   20.60 -    mkdir -p "${CT_CC_CORE_STATIC_PREFIX_DIR}/${CT_TARGET}/bin"
   20.61 -    mkdir -p "${CT_CC_CORE_STATIC_PREFIX_DIR}/bin"
   20.62 -    mkdir -p "${CT_CC_CORE_SHARED_PREFIX_DIR}/${CT_TARGET}/bin"
   20.63 -    mkdir -p "${CT_CC_CORE_SHARED_PREFIX_DIR}/bin"
   20.64 -    for t in ar as ld strip; do
   20.65 -        ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_STATIC_PREFIX_DIR}/${CT_TARGET}/bin/${t}"
   20.66 -        ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_STATIC_PREFIX_DIR}/bin/${CT_TARGET}-${t}"
   20.67 -        ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_SHARED_PREFIX_DIR}/${CT_TARGET}/bin/${t}"
   20.68 -        ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_SHARED_PREFIX_DIR}/bin/${CT_TARGET}-${t}"
   20.69 -    done 2>&1 |CT_DoLog ALL
   20.70 -
   20.71 -    CT_EndStep
   20.72 -}
   20.73 -
   20.74 -# Now on for the target libraries
   20.75 -do_binutils_target() {
   20.76 -    targets=
   20.77 -    [ "${CT_BINUTILS_FOR_TARGET_IBERTY}" = "y" ] && targets="${targets} libiberty"
   20.78 -    [ "${CT_BINUTILS_FOR_TARGET_BFD}"    = "y" ] && targets="${targets} bfd"
   20.79 -    targets="${targets# }"
   20.80 -
   20.81 -    binutils_opts=
   20.82 -    # If GMP and MPFR were configured, then use that
   20.83 -    if [ "${CT_GMP_MPFR_TARGET}" = "y" ]; then
   20.84 -        binutils_opts="--with-gmp=${CT_SYSROOT_DIR}/usr --with-mpfr=${CT_SYSROOT_DIR}/usr"
   20.85 -    fi
   20.86 -
   20.87 -    if [ -n "${targets}" ]; then
   20.88 -        CT_DoStep INFO "Installing binutils for target"
   20.89 -        mkdir -p "${CT_BUILD_DIR}/build-binutils-for-target"
   20.90 -        CT_Pushd "${CT_BUILD_DIR}/build-binutils-for-target"
   20.91 -
   20.92 -        CT_DoLog EXTRA "Configuring binutils for target"
   20.93 -        CT_DoExecLog ALL                                            \
   20.94 -        "${CT_SRC_DIR}/binutils-${CT_BINUTILS_VERSION}/configure"   \
   20.95 -            --build=${CT_BUILD}                                     \
   20.96 -            --host=${CT_TARGET}                                     \
   20.97 -            --target=${CT_TARGET}                                   \
   20.98 -            --prefix=/usr                                           \
   20.99 -            --disable-werror                                        \
  20.100 -            --enable-shared                                         \
  20.101 -            --enable-static                                         \
  20.102 -            --disable-nls                                           \
  20.103 -            --disable-multilib                                      \
  20.104 -            ${binutils_opts}                                        \
  20.105 -            ${CT_ARCH_WITH_FLOAT}                                   \
  20.106 -            ${CT_BINUTILS_EXTRA_CONFIG}
  20.107 -
  20.108 -        build_targets=$(echo "${targets}" |sed -r -e 's/(^| +)/\1all-/g;')
  20.109 -        install_targets=$(echo "${targets}" |sed -r -e 's/(^| +)/\1install-/g;')
  20.110 -
  20.111 -        CT_DoLog EXTRA "Building binutils' libraries (${targets}) for target"
  20.112 -        CT_DoExecLog ALL make ${PARALLELMFLAGS} ${build_targets}
  20.113 -        CT_DoLog EXTRA "Installing binutils' libraries (${targets}) for target"
  20.114 -        CT_DoExecLog ALL make DESTDIR="${CT_SYSROOT_DIR}" ${install_targets}
  20.115 -
  20.116 -        CT_Popd
  20.117 -        CT_EndStep
  20.118 -    fi
  20.119 -}
    21.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    21.2 +++ b/scripts/build/binutils/binutils.sh	Wed May 20 20:13:13 2009 +0000
    21.3 @@ -0,0 +1,116 @@
    21.4 +# This file adds functions to build binutils
    21.5 +# Copyright 2007 Yann E. MORIN
    21.6 +# Licensed under the GPL v2. See COPYING in the root of this package
    21.7 +
    21.8 +# Download binutils
    21.9 +do_binutils_get() {
   21.10 +    CT_GetFile "binutils-${CT_BINUTILS_VERSION}"                                        \
   21.11 +               {ftp,http}://{ftp.gnu.org/gnu,ftp.kernel.org/pub/linux/devel}/binutils   \
   21.12 +               ftp://gcc.gnu.org/pub/binutils/{releases,snapshots}
   21.13 +}
   21.14 +
   21.15 +# Extract binutils
   21.16 +do_binutils_extract() {
   21.17 +    CT_Extract "binutils-${CT_BINUTILS_VERSION}"
   21.18 +    CT_Patch "binutils-${CT_BINUTILS_VERSION}"
   21.19 +}
   21.20 +
   21.21 +# Build binutils
   21.22 +do_binutils() {
   21.23 +    mkdir -p "${CT_BUILD_DIR}/build-binutils"
   21.24 +    cd "${CT_BUILD_DIR}/build-binutils"
   21.25 +
   21.26 +    CT_DoStep INFO "Installing binutils"
   21.27 +
   21.28 +    binutils_opts=
   21.29 +    # If GMP and MPFR were configured, then use that,
   21.30 +    # otherwise let binutils find the system-wide libraries, if they exist.
   21.31 +    if [ "${CT_GMP_MPFR}" = "y" ]; then
   21.32 +        binutils_opts="--with-gmp=${CT_PREFIX_DIR} --with-mpfr=${CT_PREFIX_DIR}"
   21.33 +    fi
   21.34 +
   21.35 +    CT_DoLog EXTRA "Configuring binutils"
   21.36 +    CFLAGS="${CT_CFLAGS_FOR_HOST}"                              \
   21.37 +    CT_DoExecLog ALL                                            \
   21.38 +    "${CT_SRC_DIR}/binutils-${CT_BINUTILS_VERSION}/configure"   \
   21.39 +        --build=${CT_BUILD}                                     \
   21.40 +        --host=${CT_HOST}                                       \
   21.41 +        --target=${CT_TARGET}                                   \
   21.42 +        --prefix=${CT_PREFIX_DIR}                               \
   21.43 +        --disable-nls                                           \
   21.44 +        --disable-multilib                                      \
   21.45 +        --disable-werror                                        \
   21.46 +        ${binutils_opts}                                        \
   21.47 +        ${CT_ARCH_WITH_FLOAT}                                   \
   21.48 +        ${CT_BINUTILS_EXTRA_CONFIG}                             \
   21.49 +        ${BINUTILS_SYSROOT_ARG}
   21.50 +
   21.51 +    CT_DoLog EXTRA "Building binutils"
   21.52 +    CT_DoExecLog ALL make ${PARALLELMFLAGS}
   21.53 +
   21.54 +    CT_DoLog EXTRA "Installing binutils"
   21.55 +    CT_DoExecLog ALL make install
   21.56 +
   21.57 +    # Make those new tools available to the core C compilers to come.
   21.58 +    # Note: some components want the ${TARGET}-{ar,as,ld,strip} commands as
   21.59 +    # well. Create that.
   21.60 +    mkdir -p "${CT_CC_CORE_STATIC_PREFIX_DIR}/${CT_TARGET}/bin"
   21.61 +    mkdir -p "${CT_CC_CORE_STATIC_PREFIX_DIR}/bin"
   21.62 +    mkdir -p "${CT_CC_CORE_SHARED_PREFIX_DIR}/${CT_TARGET}/bin"
   21.63 +    mkdir -p "${CT_CC_CORE_SHARED_PREFIX_DIR}/bin"
   21.64 +    for t in ar as ld strip; do
   21.65 +        ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_STATIC_PREFIX_DIR}/${CT_TARGET}/bin/${t}"
   21.66 +        ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_STATIC_PREFIX_DIR}/bin/${CT_TARGET}-${t}"
   21.67 +        ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_SHARED_PREFIX_DIR}/${CT_TARGET}/bin/${t}"
   21.68 +        ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_SHARED_PREFIX_DIR}/bin/${CT_TARGET}-${t}"
   21.69 +    done 2>&1 |CT_DoLog ALL
   21.70 +
   21.71 +    CT_EndStep
   21.72 +}
   21.73 +
   21.74 +# Now on for the target libraries
   21.75 +do_binutils_target() {
   21.76 +    targets=
   21.77 +    [ "${CT_BINUTILS_FOR_TARGET_IBERTY}" = "y" ] && targets="${targets} libiberty"
   21.78 +    [ "${CT_BINUTILS_FOR_TARGET_BFD}"    = "y" ] && targets="${targets} bfd"
   21.79 +    targets="${targets# }"
   21.80 +
   21.81 +    binutils_opts=
   21.82 +    # If GMP and MPFR were configured, then use that
   21.83 +    if [ "${CT_GMP_MPFR_TARGET}" = "y" ]; then
   21.84 +        binutils_opts="--with-gmp=${CT_SYSROOT_DIR}/usr --with-mpfr=${CT_SYSROOT_DIR}/usr"
   21.85 +    fi
   21.86 +
   21.87 +    if [ -n "${targets}" ]; then
   21.88 +        CT_DoStep INFO "Installing binutils for target"
   21.89 +        mkdir -p "${CT_BUILD_DIR}/build-binutils-for-target"
   21.90 +        CT_Pushd "${CT_BUILD_DIR}/build-binutils-for-target"
   21.91 +
   21.92 +        CT_DoLog EXTRA "Configuring binutils for target"
   21.93 +        CT_DoExecLog ALL                                            \
   21.94 +        "${CT_SRC_DIR}/binutils-${CT_BINUTILS_VERSION}/configure"   \
   21.95 +            --build=${CT_BUILD}                                     \
   21.96 +            --host=${CT_TARGET}                                     \
   21.97 +            --target=${CT_TARGET}                                   \
   21.98 +            --prefix=/usr                                           \
   21.99 +            --disable-werror                                        \
  21.100 +            --enable-shared                                         \
  21.101 +            --enable-static                                         \
  21.102 +            --disable-nls                                           \
  21.103 +            --disable-multilib                                      \
  21.104 +            ${binutils_opts}                                        \
  21.105 +            ${CT_ARCH_WITH_FLOAT}                                   \
  21.106 +            ${CT_BINUTILS_EXTRA_CONFIG}
  21.107 +
  21.108 +        build_targets=$(echo "${targets}" |sed -r -e 's/(^| +)/\1all-/g;')
  21.109 +        install_targets=$(echo "${targets}" |sed -r -e 's/(^| +)/\1install-/g;')
  21.110 +
  21.111 +        CT_DoLog EXTRA "Building binutils' libraries (${targets}) for target"
  21.112 +        CT_DoExecLog ALL make ${PARALLELMFLAGS} ${build_targets}
  21.113 +        CT_DoLog EXTRA "Installing binutils' libraries (${targets}) for target"
  21.114 +        CT_DoExecLog ALL make DESTDIR="${CT_SYSROOT_DIR}" ${install_targets}
  21.115 +
  21.116 +        CT_Popd
  21.117 +        CT_EndStep
  21.118 +    fi
  21.119 +}
    22.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    22.2 +++ b/scripts/build/binutils/elf2flt.sh	Wed May 20 20:13:13 2009 +0000
    22.3 @@ -0,0 +1,69 @@
    22.4 +# This file adds functions to build elf2flt
    22.5 +# Copyright 2009 John Williams
    22.6 +# Copyright 2007 Yann E. MORIN
    22.7 +# Licensed under the GPL v2. See COPYING in the root of this package
    22.8 +
    22.9 +# Download elf2flt
   22.10 +do_elf2flt_get() {
   22.11 +    CT_GetCVS "elf2flt-cvs-${CT_ELF2FLT_VERSION}"           \
   22.12 +              ":pserver:anonymous@cvs.uclinux.org:/var/cvs" \
   22.13 +              "elf2flt"                                     \
   22.14 +              "" \
   22.15 +              "elf2flt-cvs-${CT_ELF2FLT_VERSION}"
   22.16 +}
   22.17 +
   22.18 +# Extract elf2flt
   22.19 +do_elf2flt_extract() {
   22.20 +    CT_Extract "elf2flt-cvs-${CT_ELF2FLT_VERSION}"
   22.21 +    CT_Patch "elf2flt-cvs-${CT_ELF2FLT_VERSION}"
   22.22 +}
   22.23 +
   22.24 +# Build elf2flt
   22.25 +do_elf2flt() {
   22.26 +    [ -z ${CT_KERNEL_UCLINUX_BINFMT_FLAT} ] && return 0
   22.27 +    mkdir -p "${CT_BUILD_DIR}/build-elf2flt"
   22.28 +    cd "${CT_BUILD_DIR}/build-elf2flt"
   22.29 +
   22.30 +    CT_DoStep INFO "Installing elf2flt"
   22.31 +
   22.32 +    elf2flt_opts=
   22.33 +    binutils_bld=${CT_BUILD_DIR}/build-binutils
   22.34 +    binutils_src=${CT_SRC_DIR}/binutils-${CT_BINUTILS_VERSION}
   22.35 +
   22.36 +    CT_DoLog EXTRA "Configuring elf2flt"
   22.37 +    CFLAGS="${CT_CFLAGS_FOR_HOST}"                              \
   22.38 +    CT_DoExecLog ALL                                            \
   22.39 +    "${CT_SRC_DIR}/elf2flt-cvs-${CT_ELF2FLT_VERSION}/configure" \
   22.40 +        --build=${CT_BUILD}                                     \
   22.41 +        --host=${CT_HOST}                                       \
   22.42 +        --target=${CT_TARGET}                                   \
   22.43 +        --prefix=${CT_PREFIX_DIR}                               \
   22.44 +        --with-bfd-include-dir=${binutils_bld}/bfd              \
   22.45 +        --with-binutils-include-dir=${binutils_src}/include     \
   22.46 +        --with-libbfd=${binutils_bld}/bfd/libbfd.a              \
   22.47 +        --with-libiberty=${binutils_bld}/libiberty/libiberty.a  \
   22.48 +        ${elf2flt_opts}                                         \
   22.49 +        ${CT_ELF2FLT_EXTRA_CONFIG}			
   22.50 +
   22.51 +    CT_DoLog EXTRA "Building elf2flt"
   22.52 +    CT_DoExecLog ALL make ${PARALLELMFLAGS}
   22.53 +
   22.54 +    CT_DoLog EXTRA "Installing elf2flt"
   22.55 +    CT_DoExecLog ALL make install
   22.56 +
   22.57 +    # Make those new tools available to the core C compilers to come.
   22.58 +    # Note: some components want the ${TARGET}-{ar,as,ld,strip} commands as
   22.59 +    # well. Create that.
   22.60 +    mkdir -p "${CT_CC_CORE_STATIC_PREFIX_DIR}/${CT_TARGET}/bin"
   22.61 +    mkdir -p "${CT_CC_CORE_STATIC_PREFIX_DIR}/bin"
   22.62 +    mkdir -p "${CT_CC_CORE_SHARED_PREFIX_DIR}/${CT_TARGET}/bin"
   22.63 +    mkdir -p "${CT_CC_CORE_SHARED_PREFIX_DIR}/bin"
   22.64 +    for t in elf2flt flthdr; do
   22.65 +        ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_STATIC_PREFIX_DIR}/${CT_TARGET}/bin/${t}"
   22.66 +        ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_STATIC_PREFIX_DIR}/bin/${CT_TARGET}-${t}"
   22.67 +        ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_SHARED_PREFIX_DIR}/${CT_TARGET}/bin/${t}"
   22.68 +        ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_SHARED_PREFIX_DIR}/bin/${CT_TARGET}-${t}"
   22.69 +    done 2>&1 |CT_DoLog ALL
   22.70 +
   22.71 +    CT_EndStep
   22.72 +}
    23.1 --- a/scripts/build/elf2flt.sh	Tue May 19 16:05:36 2009 +0000
    23.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    23.3 @@ -1,75 +0,0 @@
    23.4 -# This file adds functions to build elf2flt
    23.5 -# Copyright 2009 John Williams
    23.6 -# Copyright 2007 Yann E. MORIN
    23.7 -# Licensed under the GPL v2. See COPYING in the root of this package
    23.8 -
    23.9 -# Download elf2flt
   23.10 -do_elf2flt_get() {
   23.11 -    CT_GetCVS "elf2flt-cvs-${CT_ELF2FLT_VERSION}"           \
   23.12 -              ":pserver:anonymous@cvs.uclinux.org:/var/cvs" \
   23.13 -              "elf2flt"                                     \
   23.14 -              "" \
   23.15 -              "elf2flt-cvs-${CT_ELF2FLT_VERSION}"
   23.16 -}
   23.17 -
   23.18 -# Extract elf2flt
   23.19 -do_elf2flt_extract() {
   23.20 -    CT_Extract "elf2flt-cvs-${CT_ELF2FLT_VERSION}"
   23.21 -    CT_Patch "elf2flt-cvs-${CT_ELF2FLT_VERSION}"
   23.22 -}
   23.23 -
   23.24 -# Build elf2flt
   23.25 -do_elf2flt() {
   23.26 -    [ -z ${CT_KERNEL_UCLINUX_BINFMT_FLAT} ] && return 0
   23.27 -    mkdir -p "${CT_BUILD_DIR}/build-elf2flt"
   23.28 -    cd "${CT_BUILD_DIR}/build-elf2flt"
   23.29 -
   23.30 -    CT_DoStep INFO "Installing elf2flt"
   23.31 -
   23.32 -    elf2flt_opts=
   23.33 -    binutils_bld=${CT_BUILD_DIR}/build-binutils
   23.34 -    binutils_src=${CT_SRC_DIR}/binutils-${CT_BINUTILS_VERSION}
   23.35 -
   23.36 -    CT_DoLog EXTRA "Configuring elf2flt"
   23.37 -    CFLAGS="${CT_CFLAGS_FOR_HOST}"                              \
   23.38 -    CT_DoExecLog ALL                                            \
   23.39 -    "${CT_SRC_DIR}/elf2flt-cvs-${CT_ELF2FLT_VERSION}/configure" \
   23.40 -        --build=${CT_BUILD}                                     \
   23.41 -        --host=${CT_HOST}                                       \
   23.42 -        --target=${CT_TARGET}                                   \
   23.43 -        --prefix=${CT_PREFIX_DIR}                               \
   23.44 -        --with-bfd-include-dir=${binutils_bld}/bfd              \
   23.45 -        --with-binutils-include-dir=${binutils_src}/include     \
   23.46 -        --with-libbfd=${binutils_bld}/bfd/libbfd.a              \
   23.47 -        --with-libiberty=${binutils_bld}/libiberty/libiberty.a  \
   23.48 -        ${elf2flt_opts}                                         \
   23.49 -        ${CT_ELF2FLT_EXTRA_CONFIG}			
   23.50 -
   23.51 -    CT_DoLog EXTRA "Building elf2flt"
   23.52 -    CT_DoExecLog ALL make ${PARALLELMFLAGS}
   23.53 -
   23.54 -    CT_DoLog EXTRA "Installing elf2flt"
   23.55 -    CT_DoExecLog ALL make install
   23.56 -
   23.57 -    # Make those new tools available to the core C compilers to come.
   23.58 -    # Note: some components want the ${TARGET}-{ar,as,ld,strip} commands as
   23.59 -    # well. Create that.
   23.60 -    mkdir -p "${CT_CC_CORE_STATIC_PREFIX_DIR}/${CT_TARGET}/bin"
   23.61 -    mkdir -p "${CT_CC_CORE_STATIC_PREFIX_DIR}/bin"
   23.62 -    mkdir -p "${CT_CC_CORE_SHARED_PREFIX_DIR}/${CT_TARGET}/bin"
   23.63 -    mkdir -p "${CT_CC_CORE_SHARED_PREFIX_DIR}/bin"
   23.64 -    for t in elf2flt flthdr; do
   23.65 -        ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_STATIC_PREFIX_DIR}/${CT_TARGET}/bin/${t}"
   23.66 -        ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_STATIC_PREFIX_DIR}/bin/${CT_TARGET}-${t}"
   23.67 -        ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_SHARED_PREFIX_DIR}/${CT_TARGET}/bin/${t}"
   23.68 -        ln -sv "${CT_PREFIX_DIR}/bin/${CT_TARGET}-${t}" "${CT_CC_CORE_SHARED_PREFIX_DIR}/bin/${CT_TARGET}-${t}"
   23.69 -    done 2>&1 |CT_DoLog ALL
   23.70 -
   23.71 -    CT_EndStep
   23.72 -}
   23.73 -
   23.74 -# Now on for the target libraries
   23.75 -do_elf2flt_target() {
   23.76 -    exit -1
   23.77 -}
   23.78 -
    24.1 --- a/scripts/build/kernel/linux-common.sh	Tue May 19 16:05:36 2009 +0000
    24.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    24.3 @@ -1,99 +0,0 @@
    24.4 -# This file declares functions to install the kernel headers for linux
    24.5 -# Copyright 2007 Yann E. MORIN
    24.6 -# Licensed under the GPL v2. See COPYING in the root of this package
    24.7 -
    24.8 -CT_DoKernelTupleValues() {
    24.9 -    # Nothing to do, keep the default value
   24.10 -    :
   24.11 -}
   24.12 -
   24.13 -# Download the kernel
   24.14 -do_kernel_get() {
   24.15 -    if [ "${CT_KERNEL_LINUX_USE_CUSTOM_HEADERS}" != "y" ]; then
   24.16 -        CT_GetFile "linux-${CT_KERNEL_VERSION}" \
   24.17 -                   {ftp,http}://ftp.{de.,eu.,}kernel.org/pub/linux/kernel/v2.{6{,/testing},4,2}
   24.18 -    fi
   24.19 -    return 0
   24.20 -}
   24.21 -
   24.22 -# Extract kernel
   24.23 -do_kernel_extract() {
   24.24 -    if [ "${CT_KERNEL_LINUX_USE_CUSTOM_HEADERS}" != "y" ]; then
   24.25 -        CT_Extract "linux-${CT_KERNEL_VERSION}"
   24.26 -        CT_Patch "linux-${CT_KERNEL_VERSION}"
   24.27 -    fi
   24.28 -    return 0
   24.29 -}
   24.30 -
   24.31 -# Wrapper to the actual headers install method
   24.32 -do_kernel_headers() {
   24.33 -    CT_DoStep INFO "Installing kernel headers"
   24.34 -
   24.35 -    if [ "${CT_KERNEL_LINUX_USE_CUSTOM_HEADERS}" = "y" ]; then
   24.36 -        do_kernel_custom
   24.37 -    else
   24.38 -        do_kernel_install
   24.39 -    fi
   24.40 -
   24.41 -    CT_EndStep
   24.42 -}
   24.43 -
   24.44 -# Install kernel headers using headers_install from kernel sources.
   24.45 -do_kernel_install() {
   24.46 -    CT_DoLog DEBUG "Using kernel's headers_install"
   24.47 -
   24.48 -    mkdir -p "${CT_BUILD_DIR}/build-kernel-headers"
   24.49 -    cd "${CT_BUILD_DIR}/build-kernel-headers"
   24.50 -
   24.51 -    # Only starting with 2.6.18 does headers_install is usable. We only
   24.52 -    # have 2.6 version available, so only test for sublevel.
   24.53 -    k_sublevel=$(awk '/^SUBLEVEL =/ { print $3 }' "${CT_SRC_DIR}/linux-${CT_KERNEL_VERSION}/Makefile")
   24.54 -    [ ${k_sublevel} -ge 18 ] || CT_Abort "Kernel version >= 2.6.18 is needed to install kernel headers."
   24.55 -
   24.56 -    V_OPT="V=${CT_KERNEL_LINUX_VERBOSE_LEVEL}"
   24.57 -
   24.58 -    CT_DoLog EXTRA "Installing kernel headers"
   24.59 -    CT_DoExecLog ALL                                    \
   24.60 -    make -C "${CT_SRC_DIR}/linux-${CT_KERNEL_VERSION}"  \
   24.61 -         O=$(pwd)                                       \
   24.62 -         ARCH=${CT_KERNEL_ARCH}                         \
   24.63 -         INSTALL_HDR_PATH="${CT_SYSROOT_DIR}/usr"       \
   24.64 -         ${V_OPT}                                       \
   24.65 -         headers_install
   24.66 -
   24.67 -    if [ "${CT_KERNEL_LINUX_INSTALL_CHECK}" = "y" ]; then
   24.68 -        CT_DoLog EXTRA "Checking installed headers"
   24.69 -        CT_DoExecLog ALL                                    \
   24.70 -        make -C "${CT_SRC_DIR}/linux-${CT_KERNEL_VERSION}"  \
   24.71 -             O=$(pwd)                                       \
   24.72 -             ARCH=${CT_KERNEL_ARCH}                         \
   24.73 -             INSTALL_HDR_PATH="${CT_SYSROOT_DIR}/usr"       \
   24.74 -             ${V_OPT}                                       \
   24.75 -             headers_check
   24.76 -        find "${CT_SYSROOT_DIR}" -type f -name '.check*' -exec rm {} \;
   24.77 -    fi
   24.78 -}
   24.79 -
   24.80 -# Use custom headers (most probably by using make headers_install in a
   24.81 -# modified (read: customised) kernel tree, or using pre-2.6.18 headers, such
   24.82 -# as 2.4). In this case, simply copy the headers in place
   24.83 -do_kernel_custom() {
   24.84 -    local tar_opt
   24.85 -
   24.86 -    CT_DoLog EXTRA "Installing custom kernel headers"
   24.87 -
   24.88 -    mkdir -p "${CT_SYSROOT_DIR}/usr"
   24.89 -    cd "${CT_SYSROOT_DIR}/usr"
   24.90 -    if [ "${CT_KERNEL_LINUX_CUSTOM_IS_TARBALL}" = "y" ]; then
   24.91 -        case "${CT_KERNEL_LINUX_CUSTOM_PATH}" in
   24.92 -            *.tar)      ;;
   24.93 -            *.tgz)      tar_opt=--gzip;;
   24.94 -            *.tar.gz)   tar_opt=--gzip;;
   24.95 -            *.tar.bz2)  tar_opt=--bzip2;;
   24.96 -            *.tar.lzma) tar_opt=--lzma;;
   24.97 -        esac
   24.98 -        CT_DoExecLog ALL tar x ${tar_opt} -vf ${CT_KERNEL_LINUX_CUSTOM_PATH}
   24.99 -    else
  24.100 -        CT_DoExecLog ALL cp -rv "${CT_KERNEL_LINUX_CUSTOM_PATH}/include" .
  24.101 -    fi
  24.102 -}
    25.1 --- a/scripts/build/kernel/linux.sh	Tue May 19 16:05:36 2009 +0000
    25.2 +++ b/scripts/build/kernel/linux.sh	Wed May 20 20:13:13 2009 +0000
    25.3 @@ -1,1 +1,102 @@
    25.4 -. ${CT_LIB_DIR}/scripts/build/kernel/linux-common.sh
    25.5 +# This file declares functions to install the kernel headers for linux
    25.6 +# Copyright 2007 Yann E. MORIN
    25.7 +# Licensed under the GPL v2. See COPYING in the root of this package
    25.8 +
    25.9 +CT_DoKernelTupleValues() {
   25.10 +    if [ "${CT_ARCH_USE_MMU}" = "y" ]; then
   25.11 +        CT_TARGET_KERNEL="linux"
   25.12 +    else
   25.13 +        CT_TARGET_KERNEL="uclinux"
   25.14 +    fi
   25.15 +}
   25.16 +
   25.17 +# Download the kernel
   25.18 +do_kernel_get() {
   25.19 +    if [ "${CT_KERNEL_LINUX_USE_CUSTOM_HEADERS}" != "y" ]; then
   25.20 +        CT_GetFile "linux-${CT_KERNEL_VERSION}" \
   25.21 +                   {ftp,http}://ftp.{de.,eu.,}kernel.org/pub/linux/kernel/v2.{6{,/testing},4,2}
   25.22 +    fi
   25.23 +    return 0
   25.24 +}
   25.25 +
   25.26 +# Extract kernel
   25.27 +do_kernel_extract() {
   25.28 +    if [ "${CT_KERNEL_LINUX_USE_CUSTOM_HEADERS}" != "y" ]; then
   25.29 +        CT_Extract "linux-${CT_KERNEL_VERSION}"
   25.30 +        CT_Patch "linux-${CT_KERNEL_VERSION}"
   25.31 +    fi
   25.32 +    return 0
   25.33 +}
   25.34 +
   25.35 +# Wrapper to the actual headers install method
   25.36 +do_kernel_headers() {
   25.37 +    CT_DoStep INFO "Installing kernel headers"
   25.38 +
   25.39 +    if [ "${CT_KERNEL_LINUX_USE_CUSTOM_HEADERS}" = "y" ]; then
   25.40 +        do_kernel_custom
   25.41 +    else
   25.42 +        do_kernel_install
   25.43 +    fi
   25.44 +
   25.45 +    CT_EndStep
   25.46 +}
   25.47 +
   25.48 +# Install kernel headers using headers_install from kernel sources.
   25.49 +do_kernel_install() {
   25.50 +    CT_DoLog DEBUG "Using kernel's headers_install"
   25.51 +
   25.52 +    mkdir -p "${CT_BUILD_DIR}/build-kernel-headers"
   25.53 +    cd "${CT_BUILD_DIR}/build-kernel-headers"
   25.54 +
   25.55 +    # Only starting with 2.6.18 does headers_install is usable. We only
   25.56 +    # have 2.6 version available, so only test for sublevel.
   25.57 +    k_sublevel=$(awk '/^SUBLEVEL =/ { print $3 }' "${CT_SRC_DIR}/linux-${CT_KERNEL_VERSION}/Makefile")
   25.58 +    [ ${k_sublevel} -ge 18 ] || CT_Abort "Kernel version >= 2.6.18 is needed to install kernel headers."
   25.59 +
   25.60 +    V_OPT="V=${CT_KERNEL_LINUX_VERBOSE_LEVEL}"
   25.61 +
   25.62 +    CT_DoLog EXTRA "Installing kernel headers"
   25.63 +    CT_DoExecLog ALL                                    \
   25.64 +    make -C "${CT_SRC_DIR}/linux-${CT_KERNEL_VERSION}"  \
   25.65 +         O=$(pwd)                                       \
   25.66 +         ARCH=${CT_KERNEL_ARCH}                         \
   25.67 +         INSTALL_HDR_PATH="${CT_SYSROOT_DIR}/usr"       \
   25.68 +         ${V_OPT}                                       \
   25.69 +         headers_install
   25.70 +
   25.71 +    if [ "${CT_KERNEL_LINUX_INSTALL_CHECK}" = "y" ]; then
   25.72 +        CT_DoLog EXTRA "Checking installed headers"
   25.73 +        CT_DoExecLog ALL                                    \
   25.74 +        make -C "${CT_SRC_DIR}/linux-${CT_KERNEL_VERSION}"  \
   25.75 +             O=$(pwd)                                       \
   25.76 +             ARCH=${CT_KERNEL_ARCH}                         \
   25.77 +             INSTALL_HDR_PATH="${CT_SYSROOT_DIR}/usr"       \
   25.78 +             ${V_OPT}                                       \
   25.79 +             headers_check
   25.80 +        find "${CT_SYSROOT_DIR}" -type f -name '.check*' -exec rm {} \;
   25.81 +    fi
   25.82 +}
   25.83 +
   25.84 +# Use custom headers (most probably by using make headers_install in a
   25.85 +# modified (read: customised) kernel tree, or using pre-2.6.18 headers, such
   25.86 +# as 2.4). In this case, simply copy the headers in place
   25.87 +do_kernel_custom() {
   25.88 +    local tar_opt
   25.89 +
   25.90 +    CT_DoLog EXTRA "Installing custom kernel headers"
   25.91 +
   25.92 +    mkdir -p "${CT_SYSROOT_DIR}/usr"
   25.93 +    cd "${CT_SYSROOT_DIR}/usr"
   25.94 +    if [ "${CT_KERNEL_LINUX_CUSTOM_IS_TARBALL}" = "y" ]; then
   25.95 +        case "${CT_KERNEL_LINUX_CUSTOM_PATH}" in
   25.96 +            *.tar)      ;;
   25.97 +            *.tgz)      tar_opt=--gzip;;
   25.98 +            *.tar.gz)   tar_opt=--gzip;;
   25.99 +            *.tar.bz2)  tar_opt=--bzip2;;
  25.100 +            *.tar.lzma) tar_opt=--lzma;;
  25.101 +        esac
  25.102 +        CT_DoExecLog ALL tar x ${tar_opt} -vf ${CT_KERNEL_LINUX_CUSTOM_PATH}
  25.103 +    else
  25.104 +        CT_DoExecLog ALL cp -rv "${CT_KERNEL_LINUX_CUSTOM_PATH}/include" .
  25.105 +    fi
  25.106 +}
    26.1 --- a/scripts/build/kernel/uclinux.sh	Tue May 19 16:05:36 2009 +0000
    26.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    26.3 @@ -1,1 +0,0 @@
    26.4 -. ${CT_LIB_DIR}/scripts/build/kernel/linux-common.sh
    27.1 --- a/scripts/crosstool-NG.sh.in	Tue May 19 16:05:36 2009 +0000
    27.2 +++ b/scripts/crosstool-NG.sh.in	Wed May 20 20:13:13 2009 +0000
    27.3 @@ -91,7 +91,8 @@
    27.4  . "${CT_LIB_DIR}/scripts/build/companion_libs/gmp.sh"
    27.5  . "${CT_LIB_DIR}/scripts/build/companion_libs/mpfr.sh"
    27.6  . "${CT_LIB_DIR}/scripts/build/companion_libs/ppl.sh"
    27.7 -. "${CT_LIB_DIR}/scripts/build/binutils.sh"
    27.8 +. "${CT_LIB_DIR}/scripts/build/binutils/binutils.sh"
    27.9 +. "${CT_LIB_DIR}/scripts/build/binutils/elf2flt.sh"
   27.10  . "${CT_LIB_DIR}/scripts/build/libc/${CT_LIBC}.sh"
   27.11  . "${CT_LIB_DIR}/scripts/build/cc/${CT_CC}.sh"
   27.12  . "${CT_LIB_DIR}/scripts/build/tools.sh"