Add the EXPERIMENTAL option to show options marked as such.
author"Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Apr 17 22:24:42 2007 +0000 (2007-04-17)
changeset 41fd6ad5721f77
parent 40 8601bce18905
child 42 aacc012db6c4
Add the EXPERIMENTAL option to show options marked as such.
Add the four types of toolchains ct-ng is able to build as EXPERIMENTAL, except for CROSS which *is* functional.
Reorder menus accordingly.
config/cc.in
config/config.in
config/global.in
config/target.in
config/toolchain.in
     1.1 --- a/config/cc.in	Tue Apr 17 22:22:46 2007 +0000
     1.2 +++ b/config/cc.in	Tue Apr 17 22:24:42 2007 +0000
     1.3 @@ -38,6 +38,7 @@
     1.4  #config CC_CORE_TCC
     1.5  #    bool
     1.6  #    prompt "tcc (EXPERIMENTAL)"
     1.7 +#    depends on EXPERIMENTAL
     1.8  
     1.9  endchoice
    1.10  
    1.11 @@ -78,6 +79,7 @@
    1.12  #    bool
    1.13  #    prompt "tcc (EXPERIMENTAL)"
    1.14  #    select CC_LANG_C
    1.15 +#    depends on EXPERIMENTAL
    1.16  
    1.17  endchoice
    1.18  
     2.1 --- a/config/config.in	Tue Apr 17 22:22:46 2007 +0000
     2.2 +++ b/config/config.in	Tue Apr 17 22:24:42 2007 +0000
     2.3 @@ -1,5 +1,6 @@
     2.4  source config/global.in
     2.5  source config/target.in
     2.6 +source config/toolchain.in
     2.7  source config/kernel.in
     2.8  source config/binutils.in
     2.9  source config/cc.in
     3.1 --- a/config/global.in	Tue Apr 17 22:22:46 2007 +0000
     3.2 +++ b/config/global.in	Tue Apr 17 22:24:42 2007 +0000
     3.3 @@ -2,6 +2,20 @@
     3.4  
     3.5  menu "Paths and misc options"
     3.6  
     3.7 +config EXPERIMENTAL
     3.8 +    bool
     3.9 +    prompt "Try features marked as EXPERIMENTAL"
    3.10 +    default n
    3.11 +    help
    3.12 +      If you set this to Y, then you will be able to try very experimental
    3.13 +      features.
    3.14 +      
    3.15 +      Experimental features can be one of:
    3.16 +        - working, in which case you should tell me it is!
    3.17 +        - buggy, in which case you could try patching and send me the result
    3.18 +        - unfinished, in which case you could try hacking it and send me the result
    3.19 +        - non-existant, in which case you could also try hacking it in and send the result
    3.20 +
    3.21  config PARALLEL_JOBS
    3.22      int
    3.23      prompt "Number of parallel jobs"
     4.1 --- a/config/target.in	Tue Apr 17 22:22:46 2007 +0000
     4.2 +++ b/config/target.in	Tue Apr 17 22:24:42 2007 +0000
     4.3 @@ -172,7 +172,7 @@
     4.4  
     4.5  config TARGET_CFLAGS
     4.6      string
     4.7 -    prompt "Default target CFLAGS"
     4.8 +    prompt "Target CFLAGS"
     4.9      default ""
    4.10      help
    4.11        Used to add specific options when compiling libraries of the toolchain,
    4.12 @@ -183,134 +183,4 @@
    4.13        
    4.14        Leave blank if you don't know better.
    4.15  
    4.16 -comment "Toolchain options"
    4.17 -
    4.18 -config USE_SYSROOT
    4.19 -    bool
    4.20 -    prompt "Use sysroot'ed toolchain"
    4.21 -    default y
    4.22 -    help
    4.23 -      Use the 'shinny new' sysroot feature of gcc: libraries split between
    4.24 -      prefix/target/sys-root/lib and prefix/target/sys-root/usr/lib
    4.25 -      
    4.26 -      You definitely want to say 'Y' here. Yes you do. I know you do. Say 'Y'.
    4.27 -
    4.28 -config SHARED_LIBS
    4.29 -    bool
    4.30 -    prompt "Build shared libraries"
    4.31 -    default y
    4.32 -    help
    4.33 -      Say 'y' here, unless you don't want shared libraries.
    4.34 -      
    4.35 -      You might not want shared librries if you're building for a target that
    4.36 -      don't support it (maybe some nommu targets, for example, or bare metal).
    4.37 -
    4.38 -config TARGET_MULTILIB
    4.39 -    bool
    4.40 -#    prompt "Enable 'multilib' support (EXPERIMENTAL)"
    4.41 -    default n
    4.42 -    help
    4.43 -      Enable the so-called 'multilib' support.
    4.44 -      
    4.45 -      With the same toolchain, and on some architectures, you will be able to
    4.46 -      build big and little endian binaries, soft- and hard-float, etc...
    4.47 -      
    4.48 -      See the gcc configure manual at http://gcc.gnu.org/install/configure.html
    4.49 -      to see what multilib your target supports.
    4.50 -      
    4.51 -      It's preferable for now to build two (or more) toolchains, one for each
    4.52 -      configuration you need to support (eg. one for thumb and one for ARM,
    4.53 -      etc...). You can use the vendor string to diferentiate those toolchains.
    4.54 -
    4.55 -config TARGET_VENDOR
    4.56 -    string
    4.57 -    prompt "Vendor string"
    4.58 -    default "unknown"
    4.59 -    help
    4.60 -      Vendor part of the machine triplet.
    4.61 -      
    4.62 -      A triplet is of the form arch-vendor-kernel-system.
    4.63 -      You can set the second part, vendor, to whatever you see fit.
    4.64 -      Use a single word, or use underscores "_" to separate words.
    4.65 -      
    4.66 -      Keep the default (unkown) if you don't know better.
    4.67 -
    4.68 -config TARGET_ALIAS
    4.69 -    string
    4.70 -    prompt "Target alias"
    4.71 -    default ""
    4.72 -    help
    4.73 -      Normaly, you'd call your toolchain component (especially gcc) by
    4.74 -      prefixing the target triplet followed by a dash and the component name
    4.75 -      (eg. armeb-unknown-linux-uclibc-gcc).
    4.76 -      
    4.77 -      You can enter a shortcut here. This string will be used to create
    4.78 -      symbolic links to the toolchain tools (eg. if you enter "foo-bar" here,
    4.79 -      then gcc for your toolchain will also be available as "foo-bar-gcc" along
    4.80 -      with the original name).
    4.81 -      
    4.82 -      You shouldn't need to enter anything here, unless you plan to manually
    4.83 -      call the tools (autotools-based ./configure will use the standard name).
    4.84 -
    4.85 -config ARCH
    4.86 -    string
    4.87 -    default "arm"     if ARCH_ARM
    4.88 -    default "mips"    if ARCH_MIPS
    4.89 -    default "x86"     if ARCH_x86
    4.90 -    default "x86_64"  if ARCH_x86_64
    4.91 -
    4.92 -config BUILD 
    4.93 -    string
    4.94 -    prompt "Build system triplet"
    4.95 -    default ""
    4.96 -    help
    4.97 -      Canonical name of the machine building the toolchain.
    4.98 -      You should leave empty, unless you really now what you're doing.
    4.99 -
   4.100 -config CC_NATIVE
   4.101 -    string
   4.102 -    prompt "Native gcc"
   4.103 -    default "gcc"
   4.104 -    help
   4.105 -      The native C compiler.
   4.106 -      
   4.107 -      You can set this to an alternative compiler if you have more than one
   4.108 -      installed (eg. gcc is gcc-4.1.1 and you want to use gcc-3.4.6).
   4.109 -      
   4.110 -      You can leave this empty as well, in which case gcc will be used.
   4.111 -
   4.112 -config CANADIAN
   4.113 -    bool
   4.114 -    prompt "Canadian build (EXPERIMENTAL)"
   4.115 -    default n
   4.116 -    help
   4.117 -      A canadian build allows to build a compiler on a first machine
   4.118 -      (build system), that will run on second machine (host system),
   4.119 -      targetting a third machine (target system).
   4.120 -      
   4.121 -      An example where you'd want a candian cross-compiler is to create
   4.122 -      a native compiler for your target. In this case host and target
   4.123 -      are the same.
   4.124 -
   4.125 -config HOST
   4.126 -    string
   4.127 -    prompt "Host system triplet"
   4.128 -    default ""
   4.129 -    depends on CANADIAN
   4.130 -    help
   4.131 -      Canonical name of the machine serving as host.
   4.132 -
   4.133 -config HOST_CC
   4.134 -    string
   4.135 -    prompt "Host system compiler"
   4.136 -    default "${CT_HOST}-"
   4.137 -    depends on CANADIAN
   4.138 -    help
   4.139 -      C compiler targeting the host system.
   4.140 -      If HOST_CC ends with a dash (-), then it is considered to be the
   4.141 -      prefix to gcc (eg. x86-pc-linuc-gnu-).
   4.142 -      If it is empty, it is formed by appending '-gcc' to HOST.
   4.143 -      Else it is considered to be the complete name of the compiler, with
   4.144 -      full path, or without path (provided that it can be found in PATH).
   4.145 -
   4.146  endmenu
     5.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     5.2 +++ b/config/toolchain.in	Tue Apr 17 22:24:42 2007 +0000
     5.3 @@ -0,0 +1,164 @@
     5.4 +menu "Toolchain options"
     5.5 +
     5.6 +comment "General toolchain options"
     5.7 +
     5.8 +config USE_SYSROOT
     5.9 +    bool
    5.10 +    prompt "Use sysroot'ed toolchain"
    5.11 +    default y
    5.12 +    help
    5.13 +      Use the 'shinny new' sysroot feature of gcc: libraries split between
    5.14 +      prefix/target/sys-root/lib and prefix/target/sys-root/usr/lib
    5.15 +      
    5.16 +      You definitely want to say 'Y' here. Yes you do. I know you do. Say 'Y'.
    5.17 +
    5.18 +config SHARED_LIBS
    5.19 +    bool
    5.20 +    prompt "Build shared libraries"
    5.21 +    default y
    5.22 +    help
    5.23 +      Say 'y' here, unless you don't want shared libraries.
    5.24 +      
    5.25 +      You might not want shared librries if you're building for a target that
    5.26 +      don't support it (maybe some nommu targets, for example, or bare metal).
    5.27 +
    5.28 +config TARGET_MULTILIB
    5.29 +    bool
    5.30 +#    prompt "Enable 'multilib' support (EXPERIMENTAL)"
    5.31 +    default n
    5.32 +    help
    5.33 +      Enable the so-called 'multilib' support.
    5.34 +      
    5.35 +      With the same toolchain, and on some architectures, you will be able to
    5.36 +      build big and little endian binaries, soft- and hard-float, etc...
    5.37 +      
    5.38 +      See the gcc configure manual at http://gcc.gnu.org/install/configure.html
    5.39 +      to see what multilib your target supports.
    5.40 +      
    5.41 +      It's preferable for now to build two (or more) toolchains, one for each
    5.42 +      configuration you need to support (eg. one for thumb and one for ARM,
    5.43 +      etc...). You can use the vendor string to diferentiate those toolchains.
    5.44 +
    5.45 +config TARGET_VENDOR
    5.46 +    string
    5.47 +    prompt "Vendor string"
    5.48 +    default "unknown"
    5.49 +    help
    5.50 +      Vendor part of the machine triplet.
    5.51 +      
    5.52 +      A triplet is of the form arch-vendor-kernel-system.
    5.53 +      You can set the second part, vendor, to whatever you see fit.
    5.54 +      Use a single word, or use underscores "_" to separate words.
    5.55 +      
    5.56 +      Keep the default (unkown) if you don't know better.
    5.57 +
    5.58 +config TARGET_ALIAS
    5.59 +    string
    5.60 +    prompt "Target alias"
    5.61 +    default ""
    5.62 +    help
    5.63 +      Normaly, you'd call your toolchain component (especially gcc) by
    5.64 +      prefixing the target triplet followed by a dash and the component name
    5.65 +      (eg. armeb-unknown-linux-uclibc-gcc).
    5.66 +      
    5.67 +      You can enter a shortcut here. This string will be used to create
    5.68 +      symbolic links to the toolchain tools (eg. if you enter "foo-bar" here,
    5.69 +      then gcc for your toolchain will also be available as "foo-bar-gcc" along
    5.70 +      with the original name).
    5.71 +      
    5.72 +      You shouldn't need to enter anything here, unless you plan to manually
    5.73 +      call the tools (autotools-based ./configure will use the standard name).
    5.74 +
    5.75 +config ARCH
    5.76 +    string
    5.77 +    default "arm"     if ARCH_ARM
    5.78 +    default "mips"    if ARCH_MIPS
    5.79 +    default "x86"     if ARCH_x86
    5.80 +    default "x86_64"  if ARCH_x86_64
    5.81 +
    5.82 +comment "Toolchain type"
    5.83 +
    5.84 +choice
    5.85 +    bool
    5.86 +    prompt "Type"
    5.87 +    default CROSS
    5.88 +
    5.89 +config NATIVE
    5.90 +    bool
    5.91 +    prompt "Native (EXPERIMENTAL)"
    5.92 +    depends on EXPERIMENTAL
    5.93 +    help
    5.94 +      Build a native toolchain.
    5.95 +      See docs/overview.txt
    5.96 +
    5.97 +config CROSS
    5.98 +    bool
    5.99 +    prompt "Cross"
   5.100 +    help
   5.101 +      Build a cross-toolchain.
   5.102 +      See docs/overview.txt
   5.103 +
   5.104 +config CROSS_NATIVE
   5.105 +    bool
   5.106 +    prompt "Croos-native (EXPERIMENTAL)"
   5.107 +    depends on EXPERIMENTAL
   5.108 +    help
   5.109 +      Build a cross-native toolchain.
   5.110 +      See docs/overview.txt
   5.111 +
   5.112 +config CANADIAN
   5.113 +    bool
   5.114 +    prompt "Canadian (EXPERIMENTAL)"
   5.115 +    depends on EXPERIMENTAL
   5.116 +    default n
   5.117 +    help
   5.118 +      Build a canadian-toolchain.
   5.119 +      See docs/overview.txt
   5.120 +
   5.121 +endchoice
   5.122 +
   5.123 +config BUILD 
   5.124 +    string
   5.125 +    prompt "Build system triplet"
   5.126 +    default ""
   5.127 +    help
   5.128 +      Canonical name of the machine building the toolchain.
   5.129 +      You should leave empty, unless you really now what you're doing.
   5.130 +
   5.131 +config CC_NATIVE
   5.132 +    string
   5.133 +    prompt "Native gcc"
   5.134 +    default "gcc"
   5.135 +    help
   5.136 +      The native C compiler.
   5.137 +      
   5.138 +      You can set this to an alternative compiler if you have more than one
   5.139 +      installed (eg. gcc is gcc-4.1.1 and you want to use gcc-3.4.6).
   5.140 +      
   5.141 +      You can leave this empty as well, in which case gcc will be used.
   5.142 +
   5.143 +config HOST
   5.144 +    string
   5.145 +    prompt "Host system triplet"
   5.146 +    default ""
   5.147 +    depends on NATIVE || CANADIAN
   5.148 +    help
   5.149 +      Canonical name of the machine running the toolchain.
   5.150 +
   5.151 +config HOST_CC
   5.152 +    string
   5.153 +    prompt "Cross-compiler prefix for host system"
   5.154 +    default "${CT_HOST}-"
   5.155 +    depends on NATIVE || CANADIAN
   5.156 +    help
   5.157 +      C compiler targeting the host system.
   5.158 +
   5.159 +config TARGET_CC
   5.160 +    string
   5.161 +    prompt "Cross-compiler prefix for target system"
   5.162 +    default "${CT_TARGET}-"
   5.163 +    depends on CANADIAN
   5.164 +    help
   5.165 +      C compiler targeting the target system.
   5.166 +
   5.167 +endmenu