summaryrefslogtreecommitdiff
path: root/config/global/build-behave.in
blob: 4af2f2605ab57f786528bf05aff09c3acf0043b3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
# Options related to how the build behaves

comment "Build behavior"

config PARALLEL_JOBS
    int
    prompt "Number of parallel jobs"
    default 0
    help
      Number of jobs make will be allowed to run concurently.
      Set this higher than the number of processors you have, but not too high.
      A good rule of thumb is twice the number of processors you have.
      
      Enter 1 to have only one job at a time.

      Enter 0 to set automatically based on how many processors the build
      machine has.

config LOAD
    string
    prompt "Maximum allowed load"
    default ""
    help
      Specifies that no new jobs should be started if there are others jobs
      running and the load average is at least this value.

      Leave to empty for no load limit.

      Note: any float value is allowed and will be passed to the '-l' option
            of make (for further details, refer to the make manpage).

config USE_PIPES
    bool
    prompt "Use -pipe"
    default y
    help
      Use gcc's option -pipe to use pipes rather than temp files when building
      the toolchain.

config EXTRA_CFLAGS_FOR_BUILD
    string
    prompt "Extra build compiler flags"
    default ""
    help
      Extra flags to pass to the build C and C++ compiler.

      May be used to change the default features of the build
      compiler such as turning off the stack protector or fortify.

config EXTRA_CXXFLAGS_FOR_BUILD
    string
    prompt "Extra build compiler flags"
    default ""
    help
      Extra flags to pass only to the build C++ compiler.

      May be used to change the default features of the C++ build
      compiler such as specifying the C++ standard to use.

config EXTRA_LDFLAGS_FOR_BUILD
    string
    prompt "Extra build linker flags"
    default ""
    help
      Extra flags to pass to the build linker.

      May be used to change the default features of the build
      linker.
      
config EXTRA_CFLAGS_FOR_HOST
    string
    prompt "Extra host compiler flags"
    default ""
    help
      Extra flags to pass to the host C and C++ compiler.

      May be used to change the default features of the host
      compiler such as turning off the stack protector or fortify.
      
config EXTRA_LDFLAGS_FOR_HOST
    string
    prompt "Extra host linker flags"
    default ""
    help
      Extra flags to pass to the host linker.

      May be used to change the default features of the host
      linker.

choice
    bool
    prompt "Shell to use as CONFIG_SHELL"
    default CONFIG_SHELL_BASH

config CONFIG_SHELL_SH
    bool
    prompt "sh (the system shell)"
    help
      Use 'sh' as CONFIG_SHELL.
      
      ./configure scripts and Makefiles make intensive use of calling
      sub-shells. This is usually done by calling /bin/sh. /bin/sh ought
      to be an at-least-POSIX-conformant shell (that is, able to interpret
      POSIX shell scripts).
      
      On many (most?) systems, /bin/sh is a symlink to bash. On some other
      systems (eg. Ubuntu, latest Debian), /bin/sh points to dash (or ash).
      bash is a full-featured shell, with many extension to POSIX, but is
      quite slow (see ection BUGS in the bash man page), while dash is
      faster, with very few extensions to POSIX.  On the other hand, some
      ./configure scripts, although written to use /bin/sh, may really
      require to be run by bash.
      
      The default is to use bash, as some components (eg. GMP) will fail
      to build with anything else than bash.
      
      Unless you have a very strong reason not to (eg. you are debugging
      the bashisms in a ./configure script), you should use the default,
      and use bash.

config CONFIG_SHELL_ASH
    bool
    prompt "ash (READ HELP!)"
    help
      Use 'ash' as CONFIG_SHELL.
      
      See help for CONFIG_SHELL_SH, above, for more explanations.
      
      NOTE: It is advised that you do NOT use ash as CONFIG_SHELL, as some
      components are broken. If you decide to use ash, and the build breaks,
      don't come moaning and set the CONFIG_SHELL to bash, below.

config CONFIG_SHELL_BASH
    bool
    prompt "bash"
    help
      Use 'bash' as CONFIG_SHELL.
      
      See help for CONFIG_SHELL_SH, above, for more explanations.

config CONFIG_SHELL_CUSTOM
    bool
    prompt "custom shell"
    help
      Enter full path to the custom shell below.
      
      See help for CONFIG_SHELL_SH, above, for more explanations.

endchoice

config CONFIG_SHELL_CUSTOM_PATH
    string
    prompt "Path to custom shell"
    depends on CONFIG_SHELL_CUSTOM
    default "/bin/sh"

# Ditto.
# And we must use the ./configured bash...
config CONFIG_SHELL
    string
    default "/bin/sh"                   if CONFIG_SHELL_SH
    default "/bin/ash"                  if CONFIG_SHELL_ASH
    default "${bash}"                   if CONFIG_SHELL_BASH
    default CONFIG_SHELL_CUSTOM_PATH    if CONFIG_SHELL_CUSTOM