config/global.in
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Thu May 17 16:22:51 2007 +0000 (2007-05-17)
changeset 96 aa1a9fbd6eb8
parent 95 57694569322b
child 108 69407950a2a2
permissions -rw-r--r--
Debug facilities:
- add a framework to easily add new ones
- add gdb as a first debug facility
- add patches for gdb
After the kernel checked its installed headers, clean up the mess of .checked.* files.
Reorder scripts/crosstool.sh:
- dump the configuration early
- renice early
- get info about build system early, when setting up the environment
- when in cross or native, the host tools are those of the build system, and only in this case
- elapsed time calculations moved to scripts/functions
Remove handling of the color: it's gone once and for all.
Update tools/addToolVersion.sh:
- handle debug facilities
- commonalise some code
- remove dead tools (cygwin, tcc)
Point to my address for bug reports.
     1 # Overall toolchain configuration: paths, jobs, etc...
     2 
     3 menu "Paths and misc options"
     4 
     5 config EXPERIMENTAL
     6     bool
     7     prompt "Try features marked as EXPERIMENTAL"
     8     default n
     9     help
    10       If you set this to Y, then you will be able to try very experimental
    11       features.
    12       
    13       Experimental features can be one of:
    14         - working, in which case you should tell me it is!
    15         - buggy, in which case you could try patching and send me the result
    16         - unfinished, in which case you could try hacking it and send me the result
    17         - non-existant, in which case you could also try hacking it in and send the result
    18 
    19 config OBSOLETE
    20     bool
    21     prompt "Use obsolete features"
    22     default n
    23     help
    24       If you set this to Y, you will be able to select obsolete features.
    25       
    26       Such obsolete features are the use of old kernel headers, old
    27       gcc versions, etc...
    28 
    29 config PARALLEL_JOBS
    30     int
    31     prompt "Number of parallel jobs"
    32     default 1
    33     help
    34       Number of jobs make will be allowed to run concurently.
    35       Set this higher than the number of processors you have, but not too high.
    36       A good rule of thumb is twice the number of processors you have.
    37       
    38       Enter 1 (or 0) to have only one job at a time.
    39 
    40 config LOAD
    41     int
    42     prompt "Maximum allowed load"
    43     default 0
    44     help
    45       Specifies that no new jobs should be started if there are others jobs
    46       running and the load average is at least this value.
    47       
    48       Makes sense on SMP machines only.
    49       
    50       Enter 0 to have no limit on the load average.
    51       
    52       Note: only the integer part of the load is allowed here (you can't enter
    53             0.75 for example).
    54 
    55 config NICE
    56     int
    57     prompt "Nice level"
    58     default 0
    59     range 0 19
    60     help
    61       Renices the build process up.
    62 
    63 config USE_PIPES
    64     bool
    65     prompt "Use -pipe"
    66     default y
    67     help
    68       Use gcc's option -pipe to use pipes rather than temp files when building
    69       the toolchain.
    70 
    71 comment "Paths"
    72 
    73 config LOCAL_TARBALLS_DIR
    74     string
    75     prompt "Local tarballs directory"
    76     default ""
    77     help
    78       If you have previously downloaded the tarballs, enter the PATH where
    79       you stored them here.
    80 
    81 config PREFIX_DIR
    82     string
    83     prompt "Prefix directory"
    84     default "${HOME}/${CT_TARGET}"
    85     help
    86       This is the path the toolchain will run from.
    87 
    88 config INSTALL_DIR
    89     string
    90 #    prompt "Install directory"
    91     default "${CT_PREFIX_DIR}"
    92 #    help
    93 #      This is the path the target will be installed into.
    94 #      
    95 #      Normally, you would set this to ${CT_PREFIX_DIR}, but if for some reasons
    96 #      you can't write there, you can install somewhere else and have a third
    97 #      person do the install for you.
    98 #      The reason you might also want to install elsewhere is if you are going
    99 #      to package your shinny new toolchain for distribution.
   100 
   101 config CUSTOM_PATCH
   102     bool
   103     prompt "Use custom patch directory"
   104     default n
   105     help
   106       If you have custom patches that you want to be applied, say 'Y' here and
   107       enter the path directory below.
   108       
   109       Note that you must ensure that the patch directory is arranged the same
   110       way the official directory is.
   111 
   112 config CUSTOM_PATCH_ONLY
   113     bool
   114     prompt "Only use custom patches"
   115     default n
   116     depends on CUSTOM_PATCH
   117     help
   118       Don't apply patches coming with CT-NG, only those patches available in
   119       the directory below.
   120       
   121       If you say 'N' here, then the patches provided with CT-NG will be applied
   122       first, and then your patches.
   123 
   124 config CUSTOM_PATCH_DIR
   125     string
   126     prompt "Custom patch directory"
   127     default ""
   128     depends on CUSTOM_PATCH
   129     help
   130       Enter the custom patch directory here.
   131 
   132 config REMOVE_DOCS
   133     bool
   134     prompt "Remove documentation"
   135     default n
   136     help
   137       Remove the installed documentation (man and info pages).
   138       Gains around 8MiB for a uClibc-based, C and C++ compiler.
   139 
   140 comment "Downloading"
   141 
   142 config FORCE_DOWNLOAD
   143     bool
   144     prompt "Force downloads"
   145     default n
   146     help
   147       Force downloading tarballs, even if one already exists.
   148       
   149       Usefull if you suspect a tarball to be damaged.
   150 
   151 config ONLY_DOWNLOAD
   152     bool
   153     prompt "Stop after downloading tarballs"
   154     default n
   155     help
   156       Only download the tarballs. Exit once it done.
   157       
   158       Usefull to pre-retrieve the tarballs before going off-line.
   159 
   160 comment "Extracting"
   161     depends on ! ONLY_DOWNLOAD
   162 
   163 config FORCE_EXTRACT
   164     bool
   165     prompt "Force extractions"
   166     depends on ! ONLY_DOWNLOAD
   167     default n
   168     help
   169       Force extraction of already exctracted tarballs.
   170       
   171       Usefull if you suspect a previous extract did not complete (eg. broken
   172       tarball), or you added a new set of patches for this component.
   173 
   174 config ONLY_EXTRACT
   175     bool
   176     prompt "Stop after extracting tarballs"
   177     depends on ! ONLY_DOWNLOAD
   178     default n
   179     help
   180       Exit after unpacking and patching tarballs.
   181       
   182       Usefull to look at the code before doing the build itself.
   183 
   184 comment "Logging"
   185 
   186 choice
   187     bool
   188     prompt "Maximum log level to see:"
   189     default LOG_INFO
   190 
   191 config LOG_ERROR
   192     bool
   193     prompt "ERROR"
   194     help
   195       The build will be silent.
   196       Only if there is an error will you see a mesage.
   197 
   198 config LOG_WARN
   199     bool
   200     prompt "WARN"
   201     help
   202       The same as above, plus warnings.
   203 
   204 config LOG_INFO
   205     bool
   206     prompt "INFO"
   207     help
   208       The same as above, plus informational messages (main steps).
   209 
   210 config LOG_EXTRA
   211     bool
   212     prompt "EXTRA"
   213     help
   214       The same as above, plus extra messages (sub-steps).
   215 
   216 config LOG_DEBUG
   217     bool
   218     prompt "DEBUG"
   219     help
   220       The same as above, plus lots of crosstool-NG debug information.
   221 
   222 config LOG_ALL
   223     bool
   224     prompt "ALL"
   225     help
   226       The same as above, plus all components build messages (very noisy!).
   227 
   228 endchoice
   229 
   230 config LOG_LEVEL_MAX
   231     string
   232     default "ERROR"   if LOG_ERROR
   233     default "WARN"    if LOG_WARN
   234     default "INFO"    if LOG_INFO
   235     default "EXTRA"   if LOG_EXTRA
   236     default "DEBUG"   if LOG_DEBUG
   237     default "ALL"     if LOG_ALL
   238 
   239 config LOG_SEE_TOOLS_WARN
   240     bool
   241     prompt "See warnings from the tool builds"
   242     default n
   243     depends on ! LOG_ERROR
   244     help
   245       If you say Y here, then you will see the warning lines from the
   246       components builds.
   247 
   248       It should suffice to say N here, as those will anyway be visible
   249       in the log file (if you want one).
   250 
   251 config LOG_PROGRESS_BAR
   252     bool
   253     prompt "Progress bar"
   254     default n
   255     depends on ! LOG_ALL
   256     help
   257       This option will print a "rotating bar" (/-\|) below the last log line
   258       to show work is not stalled.
   259       
   260       Available when not in DEBUG log level.
   261       
   262       WARNING! Very CPU intensive! If you have spare CPU, then you can use it,
   263       otherwise, refrain from using it.
   264 
   265 config LOG_TO_FILE
   266     bool
   267     prompt "Log to a file"
   268     default y
   269     help
   270       Save *full* logs to a file. Even log levels you didn't specify above
   271       will be available in this file.
   272 
   273       As a bonus, there is a script in tools/extractConfig.sh that is able
   274       to extract the configuration of crosstool-NG from the log file.
   275 
   276       Definitely, say Y.
   277 
   278 config LOG_FILE
   279     string
   280     prompt "Log file"
   281     default "${CT_PREFIX_DIR}/${CT_TARGET}.log"
   282     depends on LOG_TO_FILE
   283     help
   284       File name into which to put logs.
   285 
   286 endmenu