blob: 9897a1754ce9aaa12e654f78b515537e4bdebe95 [file] [log] [blame]
Eric Andersen2d523c22004-10-09 01:06:03 +00001#
2
3mainmenu "Buildroot2 Configuration"
4
5config BR2_HAVE_DOT_CONFIG
6 bool
7 default y
8
Bernhard Reutner-Fischerf5b8cd42007-09-25 11:37:31 +00009config BR2_VERSION
10 string
Peter Korsgaardee609f22009-09-02 10:01:08 +020011 default "2009.11-git"
Bernhard Reutner-Fischerf5b8cd42007-09-25 11:37:31 +000012
Bernhard Reutner-Fischerbb9e6a72007-09-28 21:54:36 +000013source "target/Config.in.arch"
Bernhard Reutner-Fischer4b0d5a82007-09-26 21:12:38 +000014source "target/device/Config.in"
Bernhard Reutner-Fischer7d8a59b2007-07-08 16:28:54 +000015
Eric Andersen8e5fb3f2004-12-11 13:01:10 +000016menu "Build options"
17
Eric Andersen2d523c22004-10-09 01:06:03 +000018config BR2_WGET
Eric Andersen8e5fb3f2004-12-11 13:01:10 +000019 string "Wget command"
Eric Andersenfb1c67c2004-10-15 07:11:54 +000020 default "wget --passive-ftp -nd"
Eric Andersen2d523c22004-10-09 01:06:03 +000021
Bernhard Reutner-Fischerc76e2a92007-09-19 20:22:58 +000022config BR2_SVN_CO
Ulf Samuelsson85f54fb2007-08-24 05:31:07 +000023 string "Subversion (svn) command to download source tree"
Eric Andersen229a7782005-06-09 09:50:11 +000024 default "svn co"
Eric Andersene30cf262005-01-23 11:20:30 +000025
Bernhard Reutner-Fischerc76e2a92007-09-19 20:22:58 +000026config BR2_SVN_UP
27 string "Subversion (svn) command to update source tree"
28 default "svn up"
29
Sven Neumanndf03cda2009-08-07 11:57:54 +020030config BR2_BZR_CO
31 string "Bazaar (bzr) command to download source tree"
32 default "bzr co"
33
34config BR2_BZR_UP
35 string "Bazaar (bzr) command to update source tree"
36 default "bzr up"
37
Ulf Samuelsson85f54fb2007-08-24 05:31:07 +000038config BR2_GIT
39 string "Git command to download source tree"
40 default "git clone"
41
Bernhard Reutner-Fischer859b9132006-10-01 15:07:45 +000042config BR2_ZCAT
43 string "zcat command"
Bernhard Reutner-Fischera9612bf2007-03-09 08:26:10 +000044 default "gzip -d -c"
Bernhard Reutner-Fischer859b9132006-10-01 15:07:45 +000045 help
46 Command to be used to extract a gzip'ed file to stdout.
47 zcat is identical to gunzip -c except that the former may
48 not be available on your system.
Bernhard Reutner-Fischera9612bf2007-03-09 08:26:10 +000049 Default is "gzip -d -c"
50 Other possible values include "gunzip -c" or "zcat".
Bernhard Reutner-Fischer6e2823c2006-11-17 15:43:51 +000051
52config BR2_BZCAT
53 string "bzcat command"
54 default "bzcat"
55 help
56 Command to be used to extract a bzip2'ed file to stdout.
57 bzcat is identical to bunzip2 -c except that the former may
58 not be available on your system.
59 Default is "bzcat"
60 Other possible values include "bunzip2 -c" or "bzip2 -d -c".
Bernhard Reutner-Fischer859b9132006-10-01 15:07:45 +000061
Bernhard Reutner-Fischerce90aae2005-12-10 14:59:02 +000062config BR2_TAR_OPTIONS
63 string "Tar options"
Bernhard Reutner-Fischer7df4de62005-12-10 15:36:43 +000064 default ""
65 help
66 Options to pass to tar when extracting the sources.
67 E.g. " -v --exclude='*.svn*'" to exclude all .svn internal files
68 and to be verbose.
Bernhard Reutner-Fischerce90aae2005-12-10 14:59:02 +000069
Mike Frysinger59a63a92005-10-01 00:35:24 +000070config BR2_DL_DIR
71 string "Download dir"
72 default "$(BASE_DIR)/dl"
73 help
74 Directory to store all the source files that we need to fetch.
Ulf Samuelsson67050e12007-08-21 01:28:12 +000075 If the Linux shell environment has defined the BUILDROOT_DL_DIR
76 environment variable, then this overrides this configuration item.
Mike Frysinger59a63a92005-10-01 00:35:24 +000077
Bernhard Reutner-Fischer4b0d5a82007-09-26 21:12:38 +000078 The default is $(BASE_DIR)/dl
79
Ulf Samuelsson0dbf9dd2009-01-26 23:52:31 +000080config BR2_COPYTO
81 string "Copy result to..."
82 default ""
83 help
84 Setting this variable will (eventually) override
85 any other copyto configurations in buildroot.
86
Bernhard Reutner-Fischerbb9e6a72007-09-28 21:54:36 +000087source "target/device/Config.in.mirrors"
Bernhard Reutner-Fischer98a7a4c2007-08-28 21:42:44 +000088
Eric Andersenba7c48f2004-12-11 10:25:40 +000089config BR2_STAGING_DIR
90 string "Toolchain and header file location?"
Thomas Petazzoni3b2a8032009-07-31 10:31:39 +020091 default "$(BASE_DIR)/staging"
Eric Andersenba7c48f2004-12-11 10:25:40 +000092 help
Bernhard Reutner-Fischer93ab6d32007-01-28 12:03:58 +000093 This is the location where the toolchain will be installed. The
94 toolchain will not work if it is moved from this location.
95 Therefore, if you wish to package up a uClibc toolchain, it is
96 important that is is set to the final location where the toolchain
97 will be used.
Eric Andersenba7c48f2004-12-11 10:25:40 +000098
Bernhard Reutner-Fischer93ab6d32007-01-28 12:03:58 +000099 Most people will leave this set to the default value of
Thomas Petazzoni3b2a8032009-07-31 10:31:39 +0200100 "$(BASE_DIR)/staging".
Eric Andersenba7c48f2004-12-11 10:25:40 +0000101
Ulf Samuelsson3c273912007-10-18 12:38:26 +0000102config BR2_FPU_SUFFIX
103 bool "Add '_nofpu' suffix for softfloat toolchains"
Ulf Samuelsson3c273912007-10-18 12:38:26 +0000104 help
105 If the toolchain is configured to use softfloat, then
106 the "_nofpu" suffix will be added to the toolchain build
107 directory name and to any rootfs image name
108
Mike Frysinger70ea98e2005-12-27 08:42:13 +0000109config BR2_GNU_BUILD_SUFFIX
110 string "GNU build hostname suffix"
111 default "pc-linux-gnu"
112 help
Bernhard Reutner-Fischer93ab6d32007-01-28 12:03:58 +0000113 The string used to pass to configure scripts via the
114 --build= option. Just specify the suffix here, the leading
115 arch will be filled in automatically.
Mike Frysinger70ea98e2005-12-27 08:42:13 +0000116
Bernhard Reutner-Fischer93ab6d32007-01-28 12:03:58 +0000117 Here's some copy and paste build host options for you:
Mike Frysinger70ea98e2005-12-27 08:42:13 +0000118 linux: pc-linux-gnu
119 cygwin: pc-cygwin
120 os x: apple-darwin7 / apple-darwin8
121
Paul Mundtd56e2b32006-06-05 21:49:44 +0000122config BR2_GNU_TARGET_SUFFIX
123 string "GNU target suffix"
Paul Mundt61aa8052006-06-05 22:11:01 +0000124 default "linux-uclibcgnueabi" if BR2_ARM_EABI
Paul Mundtd56e2b32006-06-05 21:49:44 +0000125 default "linux-uclibc"
126 help
Bernhard Reutner-Fischer93ab6d32007-01-28 12:03:58 +0000127 The string used to pass to configure scripts via the
128 --target= option. Just specify the suffix here, the leading
129 arch will be filled in automatically.
Paul Mundtd56e2b32006-06-05 21:49:44 +0000130
Bernhard Reutner-Fischer93ab6d32007-01-28 12:03:58 +0000131 Most users will want to stick with the default setting, though
132 other users (most notably ARM EABI) like to add on to this in
133 order to stay in line with gcc conventions.
Paul Mundtd56e2b32006-06-05 21:49:44 +0000134
Bernhard Reutner-Fischer93ab6d32007-01-28 12:03:58 +0000135 Default options are:
Bernhard Reutner-Fischerc3c100b2006-07-04 11:44:32 +0000136 linux-uclibcgnueabi for ARM EABI
137 linux-uclibc for the rest
Bernhard Reutner-Fischer0c16c172007-10-05 11:06:56 +0000138 gnuhurd-uclibc for the hurd
Bernhard Reutner-Fischerc3c100b2006-07-04 11:44:32 +0000139
Eric Andersen8e5fb3f2004-12-11 13:01:10 +0000140config BR2_JLEVEL
141 int "Number of jobs to run simultaneously"
142 default "1"
143 help
Bernhard Reutner-Fischer93ab6d32007-01-28 12:03:58 +0000144 Number of jobs to run simultaneously
145
146config BR2_PREFER_IMA
147 bool "prefer IMA compiles"
Bernhard Reutner-Fischer93ab6d32007-01-28 12:03:58 +0000148 help
149 Where possible, compile package with Inter Module Analysis.
150 This potentially uses alot of system resources on your compile
151 host with the benefit of creating smaller binaries for the target.
152
153 If unsure, say No.
154
155 WARNING: This is highly experimental at the moment.
156
Bernhard Reutner-Fischer7779fd72007-02-09 13:31:55 +0000157config BR2_DEPRECATED
Bernhard Reutner-Fischer5e1f0342007-02-09 13:35:41 +0000158 bool "Show packages that are deprecated or obsolete"
Bernhard Reutner-Fischer7779fd72007-02-09 13:31:55 +0000159 help
Bernhard Reutner-Fischer5e1f0342007-02-09 13:35:41 +0000160 This option hides outdated/obsolete versions of packages.
Eric Andersenba7c48f2004-12-11 10:25:40 +0000161
Ulf Samuelssoncfeb86e2007-10-07 18:29:17 +0000162config BR2_RECENT
163 bool "Show packages that are of the latest major version"
164 default y
165 help
166 This option show recent versions of packages.
167
Daniel Laird5432f262008-11-28 14:20:47 +0000168config BR2_CONFIG_CACHE
169 bool "Use a central configure cache file"
Daniel Laird5432f262008-11-28 14:20:47 +0000170 help
171 This determines if a central config cache is used by
172 packages, reducing the configure time for packages as each
173 one caches its findings.
174
John Voltz41f6b792008-03-12 13:07:10 +0000175config BR2_ENABLE_DEBUG
176 bool "build packages with debugging symbols"
John Voltz809fa272008-03-12 13:11:29 +0000177 select BR2_PACKAGE_GDB_SERVER
John Voltz41f6b792008-03-12 13:07:10 +0000178 help
179 Build packages with debugging symbols
180 enabled
181
182if BR2_ENABLE_DEBUG
183choice
184 prompt "gcc debug level"
185 default BR2_DEBUG_2
186 help
187 Set the debug level for gcc
188
189config BR2_DEBUG_1
190 bool "debug level 1"
191 help
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000192 Debug level 1 produces minimal information, enough
193 for making backtraces in parts of the program that
194 you don't plan to debug. This includes descriptions
John Voltz41f6b792008-03-12 13:07:10 +0000195 of functions and external variables, but no information
196 about local variables and no line numbers.
197
198config BR2_DEBUG_2
199 bool "debug level 2"
200 help
201 The default gcc debug level is 2
202
203config BR2_DEBUG_3
204 bool "debug level 3"
205 help
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000206 Level 3 includes extra information, such as all the
John Voltz41f6b792008-03-12 13:07:10 +0000207 macro definitions present in the program. Some debuggers
208 support macro expansion when you use -g3.
209endchoice
210endif
211
Bernhard Reutner-Fischerbbd251a2007-07-31 18:06:50 +0000212choice
213 prompt "strip"
214 default BR2_STRIP_strip
215 help
216 Select whether to strip binaries and libraries for the target
217 or not.
218 strip is the normal strip command
219 sstrip is a strip that discards more than the normal strip
220 none do not strip (only for debugging!)
221
222config BR2_STRIP_strip
223 bool "strip"
Peter Korsgaardb99fffd2009-01-28 07:59:48 +0000224 depends on !BR2_ENABLE_DEBUG && !BR2_ELF2FLT
Bernhard Reutner-Fischerbbd251a2007-07-31 18:06:50 +0000225 help
226 strip is the normal strip command
Ulf Samuelsson85f54fb2007-08-24 05:31:07 +0000227
Bernhard Reutner-Fischerbbd251a2007-07-31 18:06:50 +0000228config BR2_STRIP_sstrip
229 bool "sstrip"
230 select BR2_PACKAGE_SSTRIP_HOST
Peter Korsgaard378f8992009-01-28 06:32:39 +0000231 depends on !BR2_ENABLE_DEBUG && !BR2_ELF2FLT
Bernhard Reutner-Fischerbbd251a2007-07-31 18:06:50 +0000232 help
233 sstrip is a strip that discards more than the normal strip
Ulf Samuelsson85f54fb2007-08-24 05:31:07 +0000234
Bernhard Reutner-Fischerbbd251a2007-07-31 18:06:50 +0000235config BR2_STRIP_none
236 bool "none"
237 help
238 none do not strip (only for debugging!)
239endchoice
240
John Voltz41f6b792008-03-12 13:07:10 +0000241choice
242 prompt "gcc optimization level"
John Voltz7eb796b2008-03-16 13:26:14 +0000243 default BR2_OPTIMIZE_S
John Voltz923f42a2008-03-12 11:23:11 +0000244 help
John Voltz41f6b792008-03-12 13:07:10 +0000245 Set the optimization level for gcc
246
247config BR2_OPTIMIZE_0
248 bool "optimization level 0"
Ulf Samuelsson0bd3ec22008-03-30 21:49:16 +0000249 depends on !BR2_PACKAGE_LINUX
John Voltz41f6b792008-03-12 13:07:10 +0000250 help
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000251 Do not optimize. This is the default.
John Voltz41f6b792008-03-12 13:07:10 +0000252
253config BR2_OPTIMIZE_1
254 bool "optimization level 1"
Ulf Samuelsson0bd3ec22008-03-30 21:49:16 +0000255 depends on !BR2_PACKAGE_LINUX
John Voltz41f6b792008-03-12 13:07:10 +0000256 help
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000257 Optimize. Optimizing compilation takes somewhat more time,
258 and a lot more memory for a large function. With -O, the
259 compiler tries to reduce code size and execution time,
260 without performing any optimizations that take a great deal
261 of compilation time. -O turns on the following optimization
262 flags: -fdefer-pop -fdelayed-branch -fguess-branch-probability
263 -fcprop-registers -floop-optimize -fif-conversion
264 -fif-conversion2 -ftree-ccp -ftree-dce -ftree-dominator-opts
265 -ftree-dse -ftree-ter -ftree-lrs -ftree-sra -ftree-copyrename
John Voltz41f6b792008-03-12 13:07:10 +0000266 -ftree-fre -ftree-ch -funit-at-a-time -fmerge-constants
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000267 -O also turns on -fomit-frame-pointer on machines where doing
John Voltz41f6b792008-03-12 13:07:10 +0000268 so does not interfere with debugging.
269
270config BR2_OPTIMIZE_2
271 bool "optimization level 2"
272 help
273 Optimize even more. GCC performs nearly all supported optimizations
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000274 that do not involve a space-speed tradeoff. The compiler does not
275 perform loop unrolling or function inlining when you specify -O2.
276 As compared to -O, this option increases both compilation time and
277 the performance of the generated code. -O2 turns on all optimization
278 flags specified by -O. It also turns on the following optimization
279 flags: -fthread-jumps -fcrossjumping -foptimize-sibling-calls
280 -fcse-follow-jumps -fcse-skip-blocks -fgcse -fgcse-lm
281 -fexpensive-optimizations -fstrength-reduce -frerun-cse-after-loop
282 -frerun-loop-opt -fcaller-saves -fpeephole2 -fschedule-insns
283 -fschedule-insns2 -fsched-interblock -fsched-spec -fregmove
284 -fstrict-aliasing -fdelete-null-pointer-checks -freorder-blocks
285 -freorder-functions -falign-functions -falign-jumps -falign-loops
John Voltz41f6b792008-03-12 13:07:10 +0000286 -falign-labels -ftree-vrp -ftree-pre
287 Please note the warning under -fgcse about invoking -O2 on programs
288 that use computed gotos.
289
290config BR2_OPTIMIZE_3
291 bool "optimization level 3"
292 help
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000293 Optimize yet more. -O3 turns on all optimizations specified by -O2
294 and also turns on the -finline-functions, -funswitch-loops and
John Voltz41f6b792008-03-12 13:07:10 +0000295 -fgcse-after-reload options.
296
297config BR2_OPTIMIZE_S
298 bool "optimize for size"
299 help
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000300 Optimize for size. -Os enables all -O2 optimizations that do not
John Voltz41f6b792008-03-12 13:07:10 +0000301 typically increase code size. It also performs further optimizations
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000302 designed to reduce code size. -Os disables the following optimization
303 flags: -falign-functions -falign-jumps -falign-loops -falign-labels
John Voltz41f6b792008-03-12 13:07:10 +0000304 -freorder-blocks -freorder-blocks-and-partition -fprefetch-loop-arrays
305 -ftree-vect-loop-version
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000306
John Voltz41f6b792008-03-12 13:07:10 +0000307endchoice
John Voltz923f42a2008-03-12 11:23:11 +0000308
Bernhard Reutner-Fischer3096f342007-06-01 22:16:28 +0000309config BR2_PREFER_STATIC_LIB
310 bool "prefer static libraries"
Bernhard Reutner-Fischer3096f342007-06-01 22:16:28 +0000311 help
Bernhard Reutner-Fischerece6fe02007-06-02 16:36:43 +0000312 Where possible, build and use static libraries for the target.
313 This potentially increases your code size and should only be
314 used if you know what you do.
315 The default is to build dynamic libraries and use those on
316 the target filesystem.
Bernhard Reutner-Fischer3096f342007-06-01 22:16:28 +0000317
318 WARNING: This is highly experimental at the moment.
319
Bernhard Reutner-Fischer57959312007-08-21 14:20:59 +0000320config BR2_HAVE_MANPAGES
321 bool "manpages on the target"
Bernhard Reutner-Fischer57959312007-08-21 14:20:59 +0000322 help
323 Leave the manpages on the target.
324 If you say n here, your target will not contain any
325 manpage.
326
327config BR2_HAVE_INFOPAGES
328 bool "infopages on the target"
Bernhard Reutner-Fischer57959312007-08-21 14:20:59 +0000329 help
330 Leave the infopages on the target.
331 If you say n here, your target will not contain any
332 infopage.
333
Peter Korsgaard886b2742008-10-20 11:32:25 +0000334config BR2_HAVE_DOCUMENTATION
335 bool "documentation on the target"
336 help
337 Leave the documentation on the target.
338 If you say n here, your target will not contain any
339 documentation.
340
John Voltzf5b96fc2008-03-10 16:34:19 +0000341config BR2_HAVE_DEVFILES
342 bool "development files in target filesystem"
John Voltzbc67ca22008-03-10 15:22:43 +0000343 help
344 Install headers and static libraries in the
345 target filesystem
346
Bernhard Reutner-Fischer57959312007-08-21 14:20:59 +0000347source package/gnuconfig/Config.in
348
Eric Andersen8e5fb3f2004-12-11 13:01:10 +0000349endmenu
Eric Andersen2d523c22004-10-09 01:06:03 +0000350
Bernhard Reutner-Fischer50100392007-09-25 07:55:45 +0000351source "toolchain/Config.in"
352
353source "package/Config.in"
354
355source "target/Config.in"