3 mainmenu "Buildroot $BR2_VERSION Configuration"
5 config BR2_HAVE_DOT_CONFIG
11 option env="BR2_VERSION_FULL"
17 # Hidden boolean selected by pre-built packages for x86, when they
18 # need to run on x86-64 machines (example: pre-built external
19 # toolchains, binary tools like SAM-BA, etc.).
20 config BR2_HOSTARCH_NEEDS_IA32_LIBS
23 source "arch/Config.in"
31 default "wget --passive-ftp -nd -t 3"
34 string "Subversion (svn) command"
38 string "Bazaar (bzr) command"
46 string "Local files retrieval command"
50 string "Secure copy (scp) command"
54 string "Secure shell (ssh) command"
58 string "Mercurial (hg) command"
65 Command to be used to extract a gzip'ed file to stdout.
66 zcat is identical to gunzip -c except that the former may
67 not be available on your system.
68 Default is "gzip -d -c"
69 Other possible values include "gunzip -c" or "zcat".
72 string "bzcat command"
75 Command to be used to extract a bzip2'ed file to stdout.
76 bzcat is identical to bunzip2 -c except that the former may
77 not be available on your system.
79 Other possible values include "bunzip2 -c" or "bzip2 -d -c".
82 string "xzcat command"
85 Command to be used to extract a xz'ed file to stdout.
88 config BR2_TAR_OPTIONS
92 Options to pass to tar when extracting the sources.
93 E.g. " -v --exclude='*.svn*'" to exclude all .svn internal files
100 default "$(TOPDIR)/dl"
102 Directory to store all the source files that we need to fetch.
103 If the Linux shell environment has defined the BUILDROOT_DL_DIR
104 environment variable, then this overrides this configuration item.
106 The default is $(TOPDIR)/dl
110 default "$(BASE_DIR)/host"
112 Directory to store all the binary files that are built for the host.
113 This includes the cross compilation toolchain when building the
114 internal buildroot toolchain.
116 The default is $(BASE_DIR)/host
118 menu "Mirrors and Download locations"
120 config BR2_PRIMARY_SITE
121 string "Primary download site"
124 Primary site to download from. If this option is set then buildroot
125 will try to download package source first from this site and try the
126 default if the file is not found.
127 Valid URIs are URIs recognized by $(WGET) and scp URIs of the form
128 scp://[user@]host:path.
129 NOTE: This works for all packages using the central package
130 infrastructure (generic, autotools, cmake, ...)
132 config BR2_PRIMARY_SITE_ONLY
133 bool "Only allow downloads from primary download site"
134 depends on BR2_PRIMARY_SITE != ""
136 If this option is enabled, downloads will only be attempted
137 from the primary download site. Other locations, like the
138 package's official download location or the backup download
139 site, will not be considered. Therefore, if the package is
140 not present on the primary site, the download fails.
142 This is useful for project developers who want to ensure
143 that the project can be built even if the upstream tarball
146 if !BR2_PRIMARY_SITE_ONLY
148 config BR2_BACKUP_SITE
149 string "Backup download site"
150 default "http://sources.buildroot.net/"
152 Backup site to download from. If this option is set then buildroot
153 will fall back to download package sources from here if the
154 normal location fails.
156 config BR2_KERNEL_MIRROR
157 string "Kernel.org mirror"
158 default "http://www.kernel.org/pub/"
160 kernel.org is mirrored on a number of servers around the world.
161 The following allows you to select your preferred mirror.
163 Have a look on the kernel.org site for a list of mirrors, then enter
164 the URL to the base directory. Examples:
166 http://www.XX.kernel.org/pub (XX = country code)
167 http://mirror.aarnet.edu.au/pub/ftp.kernel.org
169 config BR2_GNU_MIRROR
170 string "GNU Software mirror"
171 default "http://ftp.gnu.org/pub/gnu"
173 GNU has multiple software mirrors scattered around the world.
174 The following allows you to select your preferred mirror.
176 Have a look on the gnu.org site for a list of mirrors, then enter
177 the URL to the base directory. Examples:
179 http://ftp.gnu.org/pub/gnu
180 http://mirror.aarnet.edu.au/pub/gnu
182 config BR2_DEBIAN_MIRROR
183 string "Debian Software mirror"
184 default "http://ftp.debian.org"
186 Debian has multiple software mirrors scattered around the world.
187 The following allows you to select your preferred mirror.
189 Usually, just add your country code like XX here:
190 http://ftp.XX.debian.org
197 int "Number of jobs to run simultaneously (0 for auto)"
200 Number of jobs to run simultaneously. If 0, determine
201 automatically according to number of CPUs on the host
205 bool "Enable compiler cache"
207 This option will enable the use of ccache, a compiler
208 cache. It will cache the result of previous builds to speed
209 up future builds. The cache is stored in
210 $HOME/.buildroot-ccache.
212 Note that Buildroot does not try to invalidate the cache
213 contents when the compiler changes in an incompatible
214 way. Therefore, if you make a change to the compiler version
215 and/or configuration, you are responsible for purging the
216 ccache cache by removing the $HOME/.buildroot-ccache
219 config BR2_CCACHE_DIR
220 string "Compiler cache location"
221 depends on BR2_CCACHE
222 default "$(HOME)/.buildroot-ccache"
224 Where ccache should store cached files.
226 config BR2_DEPRECATED
227 bool "Show packages that are deprecated or obsolete"
229 This option hides outdated/obsolete versions of packages.
231 config BR2_ENABLE_DEBUG
232 bool "build packages with debugging symbols"
234 Build packages with debugging symbols enabled. All libraries
235 and binaries in the 'staging' directory will have debugging
236 symbols, which allows remote debugging even if libraries and
237 binaries are stripped on the target. Whether libraries and
238 binaries are stripped on the target is controlled by the
239 BR2_STRIP_* options below.
243 prompt "gcc debug level"
246 Set the debug level for gcc
251 Debug level 1 produces minimal information, enough
252 for making backtraces in parts of the program that
253 you don't plan to debug. This includes descriptions
254 of functions and external variables, but no information
255 about local variables and no line numbers.
260 The default gcc debug level is 2
265 Level 3 includes extra information, such as all the
266 macro definitions present in the program. Some debuggers
267 support macro expansion when you use -g3.
272 prompt "strip command for binaries on target"
273 default BR2_STRIP_strip
275 config BR2_STRIP_strip
277 depends on !BR2_ELF2FLT
279 Binaries and libraries in the target filesystem will be
280 stripped using the normal 'strip' command. This allows to
281 save space, mainly by removing debugging symbols. Debugging
282 symbols on the target are needed for native debugging, but
283 not when remote debugging is used.
285 config BR2_STRIP_sstrip
287 select BR2_PACKAGE_SSTRIP_HOST
288 depends on !BR2_ELF2FLT
290 Binaries and libraries in the target filesystem will be
291 stripped using the 'sstrip' command, which strips a little
292 bit more than the traditional 'strip' command. This allows to
293 save space, mainly by removing debugging symbols. Debugging
294 symbols on the target are needed for native debugging, but
295 not when remote debugging is used.
297 config BR2_STRIP_none
300 Do not strip binaries and libraries in the target
304 config BR2_STRIP_EXCLUDE_FILES
305 string "executables that should not be stripped"
306 depends on !BR2_STRIP_none
309 You may specify a space-separated list of binaries and libraries
310 here that should not be stripped on the target.
312 config BR2_STRIP_EXCLUDE_DIRS
313 string "directories that should be skipped when stripping"
314 depends on !BR2_STRIP_none
317 You may specify a space-separated list of directories that should
318 be skipped when stripping. Binaries and libraries in these
319 directories will not be touched.
320 The directories should be specified relative to the target directory,
321 without leading slash.
324 prompt "gcc optimization level"
325 default BR2_OPTIMIZE_S
327 Set the optimization level for gcc
329 config BR2_OPTIMIZE_0
330 bool "optimization level 0"
332 Do not optimize. This is the default.
334 config BR2_OPTIMIZE_1
335 bool "optimization level 1"
337 Optimize. Optimizing compilation takes somewhat more time,
338 and a lot more memory for a large function. With -O, the
339 compiler tries to reduce code size and execution time,
340 without performing any optimizations that take a great deal
341 of compilation time. -O turns on the following optimization
342 flags: -fdefer-pop -fdelayed-branch -fguess-branch-probability
343 -fcprop-registers -floop-optimize -fif-conversion
344 -fif-conversion2 -ftree-ccp -ftree-dce -ftree-dominator-opts
345 -ftree-dse -ftree-ter -ftree-lrs -ftree-sra -ftree-copyrename
346 -ftree-fre -ftree-ch -funit-at-a-time -fmerge-constants
347 -O also turns on -fomit-frame-pointer on machines where doing
348 so does not interfere with debugging.
350 config BR2_OPTIMIZE_2
351 bool "optimization level 2"
353 Optimize even more. GCC performs nearly all supported optimizations
354 that do not involve a space-speed tradeoff. The compiler does not
355 perform loop unrolling or function inlining when you specify -O2.
356 As compared to -O, this option increases both compilation time and
357 the performance of the generated code. -O2 turns on all optimization
358 flags specified by -O. It also turns on the following optimization
359 flags: -fthread-jumps -fcrossjumping -foptimize-sibling-calls
360 -fcse-follow-jumps -fcse-skip-blocks -fgcse -fgcse-lm
361 -fexpensive-optimizations -fstrength-reduce -frerun-cse-after-loop
362 -frerun-loop-opt -fcaller-saves -fpeephole2 -fschedule-insns
363 -fschedule-insns2 -fsched-interblock -fsched-spec -fregmove
364 -fstrict-aliasing -fdelete-null-pointer-checks -freorder-blocks
365 -freorder-functions -falign-functions -falign-jumps -falign-loops
366 -falign-labels -ftree-vrp -ftree-pre
367 Please note the warning under -fgcse about invoking -O2 on programs
368 that use computed gotos.
370 config BR2_OPTIMIZE_3
371 bool "optimization level 3"
373 Optimize yet more. -O3 turns on all optimizations specified by -O2
374 and also turns on the -finline-functions, -funswitch-loops and
375 -fgcse-after-reload options.
377 config BR2_OPTIMIZE_S
378 bool "optimize for size"
380 Optimize for size. -Os enables all -O2 optimizations that do not
381 typically increase code size. It also performs further optimizations
382 designed to reduce code size. -Os disables the following optimization
383 flags: -falign-functions -falign-jumps -falign-loops -falign-labels
384 -freorder-blocks -freorder-blocks-and-partition -fprefetch-loop-arrays
385 -ftree-vect-loop-version
389 config BR2_PREFER_STATIC_LIB
390 bool "prefer static libraries"
392 Where possible, build and use static libraries for the target.
393 This potentially increases your code size and should only be
394 used if you know what you do.
395 The default is to build dynamic libraries and use those on
396 the target filesystem.
398 WARNING: This is highly experimental at the moment.
400 config BR2_HAVE_DOCUMENTATION
401 bool "documentation on the target"
402 # We no longer want to support a toolchain on the target
403 depends on BR2_DEPRECATED
405 Install the documentation, including manual pages and info
406 pages, on the target.
407 If you say n here, your target will not contain any
410 config BR2_HAVE_DEVFILES
411 bool "development files in target filesystem"
412 # We no longer want to support a toolchain on the target
413 depends on BR2_DEPRECATED
415 Install headers and static libraries in the
418 config BR2_PACKAGE_OVERRIDE_FILE
419 string "location of a package override file"
420 default "$(TOPDIR)/local.mk"
422 A package override file is a short makefile that contains
423 variable definitions of the form <pkg>_OVERRIDE_SRCDIR,
424 which allows to tell Buildroot to use an existing directory
425 as the source directory for a particular package. See the
426 Buildroot documentation for more details on this feature.
430 source "toolchain/Config.in"
432 source "system/Config.in"
434 source "package/Config.in"
436 source "package/Config.in.host"
438 source "fs/Config.in"
440 source "boot/Config.in"
442 source "linux/Config.in"
444 source "Config.in.legacy"