config/global/build-behave.in
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Aug 02 20:06:44 2009 +0200 (2009-08-02)
changeset 1446 0a44fc4d6bd0
parent 1445 9f7946c892da
child 1447 8ef937cc57ba
permissions -rw-r--r--
[config] Allow user to specify custom CONFIG_SHELL

In case the shell the user wants to use as CONFIG_SHELL is located in a
weird place (eg. /opt/bash/bin/bash), or is weirdly named (eg. bash-4),
let the user enter the patch to the shell.
yann@445
     1
# Options related to how the build behaves
yann@121
     2
yann@121
     3
comment "Build behavior"
yann@121
     4
yann@1
     5
config PARALLEL_JOBS
yann@1
     6
    int
yann@1
     7
    prompt "Number of parallel jobs"
yann@1
     8
    default 1
yann@1
     9
    help
yann@1
    10
      Number of jobs make will be allowed to run concurently.
yann@1
    11
      Set this higher than the number of processors you have, but not too high.
yann@1
    12
      A good rule of thumb is twice the number of processors you have.
yann@1
    13
      
yann@1
    14
      Enter 1 (or 0) to have only one job at a time.
yann@1
    15
yann@1
    16
config LOAD
yann@1
    17
    int
yann@1
    18
    prompt "Maximum allowed load"
yann@1
    19
    default 0
yann@1
    20
    help
yann@1
    21
      Specifies that no new jobs should be started if there are others jobs
yann@1
    22
      running and the load average is at least this value.
yann@1
    23
      
yann@1
    24
      Makes sense on SMP machines only.
yann@1
    25
      
yann@1
    26
      Enter 0 to have no limit on the load average.
yann@1
    27
      
yann@1
    28
      Note: only the integer part of the load is allowed here (you can't enter
yann@1
    29
            0.75 for example).
yann@1
    30
yann@1
    31
config NICE
yann@1
    32
    int
yann@1
    33
    prompt "Nice level"
yann@1
    34
    default 0
yann@1
    35
    range 0 19
yann@1
    36
    help
yann@1
    37
      Renices the build process up.
yann@1
    38
yann@1
    39
config USE_PIPES
yann@1
    40
    bool
yann@1
    41
    prompt "Use -pipe"
yann@1
    42
    default y
yann@1
    43
    help
yann@1
    44
      Use gcc's option -pipe to use pipes rather than temp files when building
yann@1
    45
      the toolchain.
yann@805
    46
yann@1444
    47
choice
yann@1444
    48
    bool
yann@1444
    49
    prompt "Shell to use as CONFIG_SHELL"
yann@1444
    50
    default CONFIG_SHELL_SYSTEM
yann@1444
    51
yann@1444
    52
config CONFIG_SHELL_SH
yann@1444
    53
    bool
yann@1444
    54
    prompt "sh (the system shell)"
yann@1444
    55
    help
yann@1444
    56
      Use 'sh' as CONFIG_SHELL.
yann@1444
    57
      
yann@1444
    58
      ./configure scripts and Makefiles make intensive use of calling
yann@1444
    59
      sub-shells. This is usually done by calling /bin/sh. /bin/sh ought
yann@1444
    60
      to be an at-least-POSIX-conformant shell (that is, able to interpret
yann@1444
    61
      POSIX shell scripts).
yann@1444
    62
      
yann@1444
    63
      On many (most?) systems, /bin/sh is a symlink to bash. On some other
yann@1444
    64
      systems (eg. Ubuntu, latest Debian), /bin/sh points to dash (or ash).
yann@1444
    65
      bash is a full-featured shell, with many extension to POSIX, but is
yann@1444
    66
      quite slow (see ection BUGS in the bash man page), while dash is
yann@1444
    67
      faster, with very few extensions to POSIX.  On the other hand, some
yann@1444
    68
      ./configure scripts, although written to use /bin/sh, may really
yann@1444
    69
      require to be run by bash.
yann@1444
    70
      
yann@1444
    71
      The default is to use your system's /bin/sh shell. If you want to
yann@1444
    72
      run faster, you can select to use dash. If you have problems with
yann@1444
    73
      either the system shell or when using dash, then you can force to
yann@1444
    74
      use bash.
yann@1444
    75
      
yann@805
    76
config CONFIG_SHELL_ASH
yann@805
    77
    bool
yann@1444
    78
    prompt "ash"
yann@805
    79
    help
yann@1444
    80
      Use 'ash' as CONFIG_SHELL.
yann@805
    81
      
yann@1444
    82
      See help for CONFIG_SHELL_SH, above, for more explanations.
yann@1444
    83
yann@1445
    84
config CONFIG_SHELL_BASH
yann@1445
    85
    bool
yann@1445
    86
    prompt "bash"
yann@1445
    87
    help
yann@1445
    88
      Use 'bash' as CONFIG_SHELL.
yann@1445
    89
      
yann@1445
    90
      See help for CONFIG_SHELL_SH, above, for more explanations.
yann@1445
    91
yann@1446
    92
config CONFIG_SHELL_CUSTOM
yann@1446
    93
    bool
yann@1446
    94
    prompt "custom shell"
yann@1446
    95
    help
yann@1446
    96
      Enter full path to the custom shell below.
yann@1446
    97
      
yann@1446
    98
      See help for CONFIG_SHELL_SH, above, for more explanations.
yann@1446
    99
yann@1446
   100
config CONFIG_SHELL_CUSTOM_PATH
yann@1446
   101
    string
yann@1446
   102
    prompt "Path to custom shell"
yann@1446
   103
    depends on CONFIG_SHELL_CUSTOM
yann@1446
   104
    default "/bin/sh"
yann@1446
   105
yann@1444
   106
endchoice
yann@1444
   107
yann@1444
   108
config CONFIG_SHELL
yann@1444
   109
    string
yann@1446
   110
    default "sh"        if CONFIG_SHELL_SH
yann@1446
   111
    default "ash"       if CONFIG_SHELL_ASH
yann@1446
   112
    default "bash"      if CONFIG_SHELL_BASH
yann@1446
   113
    default "custom"    if CONFIG_SHELL_CUSTOM