blob: e2d3dfde65088dd6c4d057ab86f57a09b1d0915e [file] [log] [blame]
Eric Andersen2d523c22004-10-09 01:06:03 +00001#
2
Peter Korsgaard6a53b722011-02-02 14:53:23 +01003mainmenu "Buildroot $BR2_VERSION Configuration"
Eric Andersen2d523c22004-10-09 01:06:03 +00004
5config BR2_HAVE_DOT_CONFIG
6 bool
7 default y
8
Bernhard Reutner-Fischerf5b8cd42007-09-25 11:37:31 +00009config BR2_VERSION
10 string
Yann E. MORIN56c68bc2010-10-31 17:35:14 +010011 option env="BR2_VERSION_FULL"
Bernhard Reutner-Fischerf5b8cd42007-09-25 11:37:31 +000012
Francois Perrad1d4104f2012-07-18 15:59:09 +020013config BR2_HOSTARCH
14 string
15 option env="HOSTARCH"
16
Thomas Petazzonia4239f72013-12-05 20:11:10 +010017config BR2_EXTERNAL
18 string
19 option env="BR2_EXTERNAL"
20
Maxime Hadjinlianaac3d2b2014-02-18 00:37:12 +010021# Hidden boolean selected by packages in need of Java in order to build
22# (example: xbmc)
Maxime Hadjinlian0721c712014-02-19 16:33:50 +010023config BR2_NEEDS_HOST_JAVA
Maxime Hadjinlianaac3d2b2014-02-18 00:37:12 +010024 bool
25
Maxime Hadjinlian8f9da282014-05-04 00:45:44 +020026# Hidden boolean selected by packages in need of javac in order to build
27# (example: classpath)
28config BR2_NEEDS_HOST_JAVAC
29 bool
30
31# Hidden boolean selected by packages in need of jar in order to build
32# (example: classpath)
33config BR2_NEEDS_HOST_JAR
34 bool
35
Thomas Petazzoni70d60372012-12-29 06:14:49 +000036# Hidden boolean selected by pre-built packages for x86, when they
37# need to run on x86-64 machines (example: pre-built external
38# toolchains, binary tools like SAM-BA, etc.).
39config BR2_HOSTARCH_NEEDS_IA32_LIBS
40 bool
41
Thomas Petazzoni0e4bc502013-11-11 17:47:25 +010042# Hidden boolean selected by packages that need to build 32 bits
43# binaries with the host compiler, even on 64 bits build machines (e.g
44# bootloaders).
45config BR2_HOSTARCH_NEEDS_IA32_COMPILER
46 bool
47
Thomas Petazzoni79ee3c12012-11-03 08:27:59 +000048source "arch/Config.in"
Bernhard Reutner-Fischer7d8a59b2007-07-08 16:28:54 +000049
Eric Andersen8e5fb3f2004-12-11 13:01:10 +000050menu "Build options"
51
Thomas Petazzoni15929262010-04-10 22:55:01 +020052menu "Commands"
53
Eric Andersen2d523c22004-10-09 01:06:03 +000054config BR2_WGET
Eric Andersen8e5fb3f2004-12-11 13:01:10 +000055 string "Wget command"
Peter Korsgaard6871b162010-11-04 19:16:43 +010056 default "wget --passive-ftp -nd -t 3"
Eric Andersen2d523c22004-10-09 01:06:03 +000057
Maxime Petazzonicf711112010-09-02 12:09:45 +020058config BR2_SVN
59 string "Subversion (svn) command"
60 default "svn"
Eric Andersene30cf262005-01-23 11:20:30 +000061
Maxime Petazzonicf711112010-09-02 12:09:45 +020062config BR2_BZR
63 string "Bazaar (bzr) command"
64 default "bzr"
Sven Neumanndf03cda2009-08-07 11:57:54 +020065
Ulf Samuelsson85f54fb2007-08-24 05:31:07 +000066config BR2_GIT
Maxime Petazzonicf711112010-09-02 12:09:45 +020067 string "Git command"
68 default "git"
Ulf Samuelsson85f54fb2007-08-24 05:31:07 +000069
Gustavo Zacarias15eb1fa2013-09-11 09:12:04 -030070config BR2_CVS
71 string "CVS command"
72 default "cvs"
73
David Wagner2690e762011-09-29 21:57:46 +020074config BR2_LOCALFILES
75 string "Local files retrieval command"
76 default "cp"
77
Thomas De Schampheleirec61788f2011-10-19 09:25:40 +020078config BR2_SCP
79 string "Secure copy (scp) command"
80 default "scp"
81
82config BR2_SSH
83 string "Secure shell (ssh) command"
84 default "ssh"
85
Thomas De Schampheleiref694c072011-10-19 09:25:47 +020086config BR2_HG
87 string "Mercurial (hg) command"
88 default "hg"
89
Bernhard Reutner-Fischer859b9132006-10-01 15:07:45 +000090config BR2_ZCAT
91 string "zcat command"
Bernhard Reutner-Fischera9612bf2007-03-09 08:26:10 +000092 default "gzip -d -c"
Bernhard Reutner-Fischer859b9132006-10-01 15:07:45 +000093 help
94 Command to be used to extract a gzip'ed file to stdout.
95 zcat is identical to gunzip -c except that the former may
96 not be available on your system.
Bernhard Reutner-Fischera9612bf2007-03-09 08:26:10 +000097 Default is "gzip -d -c"
98 Other possible values include "gunzip -c" or "zcat".
Bernhard Reutner-Fischer6e2823c2006-11-17 15:43:51 +000099
100config BR2_BZCAT
101 string "bzcat command"
102 default "bzcat"
103 help
104 Command to be used to extract a bzip2'ed file to stdout.
105 bzcat is identical to bunzip2 -c except that the former may
106 not be available on your system.
107 Default is "bzcat"
108 Other possible values include "bunzip2 -c" or "bzip2 -d -c".
Bernhard Reutner-Fischer859b9132006-10-01 15:07:45 +0000109
Allan W. Nielsen177b4b42011-05-10 08:17:05 +0200110config BR2_XZCAT
111 string "xzcat command"
112 default "xzcat"
113 help
114 Command to be used to extract a xz'ed file to stdout.
115 Default is "xzcat"
116
Bernhard Reutner-Fischerce90aae2005-12-10 14:59:02 +0000117config BR2_TAR_OPTIONS
118 string "Tar options"
Bernhard Reutner-Fischer7df4de62005-12-10 15:36:43 +0000119 default ""
120 help
121 Options to pass to tar when extracting the sources.
122 E.g. " -v --exclude='*.svn*'" to exclude all .svn internal files
123 and to be verbose.
Bernhard Reutner-Fischerce90aae2005-12-10 14:59:02 +0000124
Thomas Petazzoni15929262010-04-10 22:55:01 +0200125endmenu
126
Arnout Vandecappelle (Essensium/Mind)4e0170d2013-02-06 21:50:57 +0000127config BR2_DEFCONFIG_FROM_ENV
128 string
129 option env="BR2_DEFCONFIG"
130
131config BR2_DEFCONFIG
132 string "Location to save buildroot config"
133 default BR2_DEFCONFIG_FROM_ENV if BR2_DEFCONFIG_FROM_ENV != ""
134 default "$(CONFIG_DIR)/defconfig"
135 help
136 When running 'make savedefconfig', the defconfig file will be saved
137 in this location.
138
Mike Frysinger59a63a92005-10-01 00:35:24 +0000139config BR2_DL_DIR
140 string "Download dir"
H Hartley Sweetenbe695dc2009-09-23 08:46:52 +0200141 default "$(TOPDIR)/dl"
Mike Frysinger59a63a92005-10-01 00:35:24 +0000142 help
143 Directory to store all the source files that we need to fetch.
Arnout Vandecappelle67680212014-02-04 16:18:51 +0100144 If the Linux shell environment has defined the BR2_DL_DIR
Ulf Samuelsson67050e12007-08-21 01:28:12 +0000145 environment variable, then this overrides this configuration item.
Mike Frysinger59a63a92005-10-01 00:35:24 +0000146
H Hartley Sweetenbe695dc2009-09-23 08:46:52 +0200147 The default is $(TOPDIR)/dl
Bernhard Reutner-Fischer4b0d5a82007-09-26 21:12:38 +0000148
Gustavo Zacariasa2b4f7f2011-02-02 10:05:56 -0300149config BR2_HOST_DIR
150 string "Host dir"
151 default "$(BASE_DIR)/host"
152 help
153 Directory to store all the binary files that are built for the host.
154 This includes the cross compilation toolchain when building the
155 internal buildroot toolchain.
156
157 The default is $(BASE_DIR)/host
158
Thomas Petazzoni80080072010-12-05 21:52:37 +0100159menu "Mirrors and Download locations"
160
161config BR2_PRIMARY_SITE
162 string "Primary download site"
163 default ""
164 help
165 Primary site to download from. If this option is set then buildroot
166 will try to download package source first from this site and try the
167 default if the file is not found.
Thomas De Schampheleirec61788f2011-10-19 09:25:40 +0200168 Valid URIs are URIs recognized by $(WGET) and scp URIs of the form
169 scp://[user@]host:path.
170 NOTE: This works for all packages using the central package
171 infrastructure (generic, autotools, cmake, ...)
Thomas Petazzoni80080072010-12-05 21:52:37 +0100172
Thomas De Schampheleire5a83e082012-06-22 07:37:03 +0200173config BR2_PRIMARY_SITE_ONLY
174 bool "Only allow downloads from primary download site"
175 depends on BR2_PRIMARY_SITE != ""
176 help
177 If this option is enabled, downloads will only be attempted
178 from the primary download site. Other locations, like the
179 package's official download location or the backup download
180 site, will not be considered. Therefore, if the package is
181 not present on the primary site, the download fails.
182
183 This is useful for project developers who want to ensure
184 that the project can be built even if the upstream tarball
185 locations disappear.
186
187if !BR2_PRIMARY_SITE_ONLY
188
Thomas Petazzoni80080072010-12-05 21:52:37 +0100189config BR2_BACKUP_SITE
190 string "Backup download site"
Peter Seiderer4a9eb202014-02-21 23:33:36 +0100191 default "http://sources.buildroot.net"
Thomas Petazzoni80080072010-12-05 21:52:37 +0100192 help
193 Backup site to download from. If this option is set then buildroot
194 will fall back to download package sources from here if the
195 normal location fails.
196
Thomas Petazzoni80080072010-12-05 21:52:37 +0100197config BR2_KERNEL_MIRROR
198 string "Kernel.org mirror"
Yann E. MORINba14dbe2014-05-23 19:20:12 +0200199 default "https://www.kernel.org/pub"
Thomas Petazzoni80080072010-12-05 21:52:37 +0100200 help
201 kernel.org is mirrored on a number of servers around the world.
202 The following allows you to select your preferred mirror.
203
204 Have a look on the kernel.org site for a list of mirrors, then enter
205 the URL to the base directory. Examples:
206
207 http://www.XX.kernel.org/pub (XX = country code)
208 http://mirror.aarnet.edu.au/pub/ftp.kernel.org
209
210config BR2_GNU_MIRROR
211 string "GNU Software mirror"
212 default "http://ftp.gnu.org/pub/gnu"
213 help
214 GNU has multiple software mirrors scattered around the world.
215 The following allows you to select your preferred mirror.
216
217 Have a look on the gnu.org site for a list of mirrors, then enter
218 the URL to the base directory. Examples:
219
220 http://ftp.gnu.org/pub/gnu
221 http://mirror.aarnet.edu.au/pub/gnu
222
Thomas De Schampheleire5a83e082012-06-22 07:37:03 +0200223endif
224
Francois Perrad72afb292014-01-11 16:42:07 +0100225config BR2_LUAROCKS_MIRROR
226 string "LuaRocks mirror"
Francois Perrad0b8411a2014-07-25 20:21:24 +0200227 default "http://rocks.moonscript.org"
Francois Perrad72afb292014-01-11 16:42:07 +0100228 help
229 LuaRocks repository.
230
231 See http://luarocks.org
232
Francois Perrad9fbb1692014-02-23 15:17:16 +0100233config BR2_CPAN_MIRROR
234 string "CPAN mirror (Perl packages)"
Yann E. MORIN32567d12014-07-19 12:09:19 +0200235 default "http://cpan.metacpan.org"
Francois Perrad9fbb1692014-02-23 15:17:16 +0100236 help
237 CPAN (Comprehensive Perl Archive Network) is a repository
238 of Perl packages. It has multiple software mirrors scattered
239 around the world. This option allows you to select a mirror.
240
241 The list of mirrors is available at:
242 http://search.cpan.org/mirror
243
Thomas Petazzoni80080072010-12-05 21:52:37 +0100244endmenu
Thomas Petazzoniaa41d372010-04-10 22:55:38 +0200245
Eric Andersen8e5fb3f2004-12-11 13:01:10 +0000246config BR2_JLEVEL
Nathan Lynch5016aa02012-06-16 09:37:17 +0000247 int "Number of jobs to run simultaneously (0 for auto)"
248 default "0"
Eric Andersen8e5fb3f2004-12-11 13:01:10 +0000249 help
Nathan Lynch5016aa02012-06-16 09:37:17 +0000250 Number of jobs to run simultaneously. If 0, determine
251 automatically according to number of CPUs on the host
252 system.
Bernhard Reutner-Fischer93ab6d32007-01-28 12:03:58 +0000253
Thomas Petazzoni17b66af2010-12-07 21:09:56 +0100254config BR2_CCACHE
255 bool "Enable compiler cache"
256 help
257 This option will enable the use of ccache, a compiler
258 cache. It will cache the result of previous builds to speed
Danomi Manchegodd79f2d2014-04-30 22:05:07 -0400259 up future builds. By default, the cache is stored in
Thomas Petazzoni17b66af2010-12-07 21:09:56 +0100260 $HOME/.buildroot-ccache.
261
Thomas Petazzonif044e032012-03-07 20:26:50 +0100262 Note that Buildroot does not try to invalidate the cache
263 contents when the compiler changes in an incompatible
264 way. Therefore, if you make a change to the compiler version
265 and/or configuration, you are responsible for purging the
266 ccache cache by removing the $HOME/.buildroot-ccache
267 directory.
268
Danomi Manchegodd79f2d2014-04-30 22:05:07 -0400269if BR2_CCACHE
270
Thomas De Schampheleire43329072012-05-16 21:39:28 +0200271config BR2_CCACHE_DIR
272 string "Compiler cache location"
Thomas De Schampheleire43329072012-05-16 21:39:28 +0200273 default "$(HOME)/.buildroot-ccache"
274 help
275 Where ccache should store cached files.
276
Danomi Manchegodd79f2d2014-04-30 22:05:07 -0400277config BR2_CCACHE_INITIAL_SETUP
278 string "Compiler cache initial setup"
279 help
280 Initial ccache settings to apply, such as --max-files or --max-size.
281
282 For example, if your project is known to require more space than the
283 default max cache size, then you might want to increase the cache size
284 to a suitable amount using the -M (--max-size) option.
285
286 The string you specify here is passed verbatim to ccache. Refer to
287 ccache documentation for more details.
288
289 These initial settings are applied after ccache has been compiled.
290
291endif
292
Bernhard Reutner-Fischer7779fd72007-02-09 13:31:55 +0000293config BR2_DEPRECATED
Gustavo Zacarias8515ef02014-09-19 10:41:09 -0300294 bool "Show options and packages that are deprecated or obsolete"
Bernhard Reutner-Fischer7779fd72007-02-09 13:31:55 +0000295 help
Gustavo Zacarias8515ef02014-09-19 10:41:09 -0300296 This option shows outdated/obsolete versions of packages and
297 options that are otherwise hidden.
Eric Andersenba7c48f2004-12-11 10:25:40 +0000298
Thomas De Schampheleireba4ad9d2014-01-03 17:02:50 +0100299if BR2_DEPRECATED
300
Thomas De Schampheleireba4ad9d2014-01-03 17:02:50 +0100301config BR2_DEPRECATED_SINCE_2013_11
302 bool
303 default y
304
305config BR2_DEPRECATED_SINCE_2014_02
306 bool
307 default y
308
Peter Korsgaarda920fdd2014-03-18 09:04:31 +0100309config BR2_DEPRECATED_SINCE_2014_05
310 bool
311 default y
312
Thomas Petazzoni8f3508a2014-06-29 18:02:10 +0200313config BR2_DEPRECATED_SINCE_2014_08
314 bool
315 default y
316
Gustavo Zacarias683eedd2014-12-01 11:16:56 -0300317config BR2_DEPRECATED_SINCE_2015_02
318 bool
319 default y
320
Thomas De Schampheleireba4ad9d2014-01-03 17:02:50 +0100321endif
322
John Voltz41f6b792008-03-12 13:07:10 +0000323config BR2_ENABLE_DEBUG
324 bool "build packages with debugging symbols"
John Voltz41f6b792008-03-12 13:07:10 +0000325 help
Thomas Petazzonia9a34672012-03-14 23:49:58 +0100326 Build packages with debugging symbols enabled. All libraries
327 and binaries in the 'staging' directory will have debugging
328 symbols, which allows remote debugging even if libraries and
329 binaries are stripped on the target. Whether libraries and
330 binaries are stripped on the target is controlled by the
331 BR2_STRIP_* options below.
John Voltz41f6b792008-03-12 13:07:10 +0000332
333if BR2_ENABLE_DEBUG
334choice
335 prompt "gcc debug level"
336 default BR2_DEBUG_2
337 help
338 Set the debug level for gcc
339
340config BR2_DEBUG_1
341 bool "debug level 1"
342 help
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000343 Debug level 1 produces minimal information, enough
344 for making backtraces in parts of the program that
345 you don't plan to debug. This includes descriptions
John Voltz41f6b792008-03-12 13:07:10 +0000346 of functions and external variables, but no information
347 about local variables and no line numbers.
348
349config BR2_DEBUG_2
350 bool "debug level 2"
351 help
352 The default gcc debug level is 2
353
354config BR2_DEBUG_3
355 bool "debug level 3"
356 help
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000357 Level 3 includes extra information, such as all the
John Voltz41f6b792008-03-12 13:07:10 +0000358 macro definitions present in the program. Some debuggers
359 support macro expansion when you use -g3.
360endchoice
361endif
362
Bernhard Reutner-Fischerbbd251a2007-07-31 18:06:50 +0000363choice
Thomas Petazzonia9a34672012-03-14 23:49:58 +0100364 prompt "strip command for binaries on target"
Bernhard Reutner-Fischerbbd251a2007-07-31 18:06:50 +0000365 default BR2_STRIP_strip
Bernhard Reutner-Fischerbbd251a2007-07-31 18:06:50 +0000366
367config BR2_STRIP_strip
368 bool "strip"
Axel Lin9f2bf302013-09-03 17:39:53 +0800369 depends on !BR2_PACKAGE_HOST_ELF2FLT
Bernhard Reutner-Fischerbbd251a2007-07-31 18:06:50 +0000370 help
Thomas Petazzonia9a34672012-03-14 23:49:58 +0100371 Binaries and libraries in the target filesystem will be
372 stripped using the normal 'strip' command. This allows to
373 save space, mainly by removing debugging symbols. Debugging
374 symbols on the target are needed for native debugging, but
375 not when remote debugging is used.
Ulf Samuelsson85f54fb2007-08-24 05:31:07 +0000376
Bernhard Reutner-Fischerbbd251a2007-07-31 18:06:50 +0000377config BR2_STRIP_sstrip
378 bool "sstrip"
379 select BR2_PACKAGE_SSTRIP_HOST
Axel Lin9f2bf302013-09-03 17:39:53 +0800380 depends on !BR2_PACKAGE_HOST_ELF2FLT
Yann E. MORIN6a6962f2014-05-20 23:54:02 +0200381 depends on BR2_DEPRECATED_SINCE_2014_05
Bernhard Reutner-Fischerbbd251a2007-07-31 18:06:50 +0000382 help
Thomas Petazzonia9a34672012-03-14 23:49:58 +0100383 Binaries and libraries in the target filesystem will be
384 stripped using the 'sstrip' command, which strips a little
385 bit more than the traditional 'strip' command. This allows to
386 save space, mainly by removing debugging symbols. Debugging
387 symbols on the target are needed for native debugging, but
388 not when remote debugging is used.
Ulf Samuelsson85f54fb2007-08-24 05:31:07 +0000389
Bernhard Reutner-Fischerbbd251a2007-07-31 18:06:50 +0000390config BR2_STRIP_none
391 bool "none"
392 help
Thomas Petazzonia9a34672012-03-14 23:49:58 +0100393 Do not strip binaries and libraries in the target
394 filesystem.
Bernhard Reutner-Fischerbbd251a2007-07-31 18:06:50 +0000395endchoice
396
Thomas De Schampheleire2a970452012-06-21 19:34:50 +0000397config BR2_STRIP_EXCLUDE_FILES
398 string "executables that should not be stripped"
399 depends on !BR2_STRIP_none
400 default ""
401 help
402 You may specify a space-separated list of binaries and libraries
403 here that should not be stripped on the target.
404
405config BR2_STRIP_EXCLUDE_DIRS
406 string "directories that should be skipped when stripping"
407 depends on !BR2_STRIP_none
408 default ""
409 help
410 You may specify a space-separated list of directories that should
411 be skipped when stripping. Binaries and libraries in these
412 directories will not be touched.
413 The directories should be specified relative to the target directory,
414 without leading slash.
415
John Voltz41f6b792008-03-12 13:07:10 +0000416choice
417 prompt "gcc optimization level"
John Voltz7eb796b2008-03-16 13:26:14 +0000418 default BR2_OPTIMIZE_S
John Voltz923f42a2008-03-12 11:23:11 +0000419 help
John Voltz41f6b792008-03-12 13:07:10 +0000420 Set the optimization level for gcc
421
422config BR2_OPTIMIZE_0
423 bool "optimization level 0"
424 help
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000425 Do not optimize. This is the default.
John Voltz41f6b792008-03-12 13:07:10 +0000426
427config BR2_OPTIMIZE_1
428 bool "optimization level 1"
429 help
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000430 Optimize. Optimizing compilation takes somewhat more time,
431 and a lot more memory for a large function. With -O, the
432 compiler tries to reduce code size and execution time,
433 without performing any optimizations that take a great deal
434 of compilation time. -O turns on the following optimization
435 flags: -fdefer-pop -fdelayed-branch -fguess-branch-probability
436 -fcprop-registers -floop-optimize -fif-conversion
437 -fif-conversion2 -ftree-ccp -ftree-dce -ftree-dominator-opts
438 -ftree-dse -ftree-ter -ftree-lrs -ftree-sra -ftree-copyrename
John Voltz41f6b792008-03-12 13:07:10 +0000439 -ftree-fre -ftree-ch -funit-at-a-time -fmerge-constants
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000440 -O also turns on -fomit-frame-pointer on machines where doing
John Voltz41f6b792008-03-12 13:07:10 +0000441 so does not interfere with debugging.
442
443config BR2_OPTIMIZE_2
444 bool "optimization level 2"
445 help
446 Optimize even more. GCC performs nearly all supported optimizations
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000447 that do not involve a space-speed tradeoff. The compiler does not
448 perform loop unrolling or function inlining when you specify -O2.
449 As compared to -O, this option increases both compilation time and
450 the performance of the generated code. -O2 turns on all optimization
451 flags specified by -O. It also turns on the following optimization
452 flags: -fthread-jumps -fcrossjumping -foptimize-sibling-calls
453 -fcse-follow-jumps -fcse-skip-blocks -fgcse -fgcse-lm
454 -fexpensive-optimizations -fstrength-reduce -frerun-cse-after-loop
455 -frerun-loop-opt -fcaller-saves -fpeephole2 -fschedule-insns
456 -fschedule-insns2 -fsched-interblock -fsched-spec -fregmove
457 -fstrict-aliasing -fdelete-null-pointer-checks -freorder-blocks
458 -freorder-functions -falign-functions -falign-jumps -falign-loops
John Voltz41f6b792008-03-12 13:07:10 +0000459 -falign-labels -ftree-vrp -ftree-pre
460 Please note the warning under -fgcse about invoking -O2 on programs
461 that use computed gotos.
462
463config BR2_OPTIMIZE_3
464 bool "optimization level 3"
465 help
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000466 Optimize yet more. -O3 turns on all optimizations specified by -O2
467 and also turns on the -finline-functions, -funswitch-loops and
John Voltz41f6b792008-03-12 13:07:10 +0000468 -fgcse-after-reload options.
469
470config BR2_OPTIMIZE_S
471 bool "optimize for size"
472 help
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000473 Optimize for size. -Os enables all -O2 optimizations that do not
John Voltz41f6b792008-03-12 13:07:10 +0000474 typically increase code size. It also performs further optimizations
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000475 designed to reduce code size. -Os disables the following optimization
476 flags: -falign-functions -falign-jumps -falign-loops -falign-labels
John Voltz41f6b792008-03-12 13:07:10 +0000477 -freorder-blocks -freorder-blocks-and-partition -fprefetch-loop-arrays
478 -ftree-vect-loop-version
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000479
John Voltz41f6b792008-03-12 13:07:10 +0000480endchoice
John Voltz923f42a2008-03-12 11:23:11 +0000481
Pascal Huerst09a1a102014-07-31 22:08:55 +0200482config BR2_GOOGLE_BREAKPAD_ENABLE
483 bool "Enable google-breakpad support"
484 select BR2_PACKAGE_GOOGLE_BREAKPAD
485 depends on BR2_INSTALL_LIBSTDCPP
486 depends on BR2_TOOLCHAIN_USES_GLIBC
487 depends on BR2_PACKAGE_GOOGLE_BREAKPAD_ARCH_SUPPORTS
488 help
489 This option will enable the use of google breakpad, a
490 library and tool suite that allows you to distribute an
491 application to users with compiler-provided debugging
492 information removed, record crashes in compact "minidump"
493 files, send them back to your server and produce C and C++
494 stack traces from these minidumps. Breakpad can also write
495 minidumps on request for programs that have not crashed.
496
497if BR2_GOOGLE_BREAKPAD_ENABLE
498
499config BR2_GOOGLE_BREAKPAD_INCLUDE_FILES
500 string "List of executables and libraries to extract symbols from"
501 default ""
502 help
503 You may specify a space-separated list of binaries and
504 libraries with full paths relative to $(TARGET_DIR) of which
505 debug symbols will be dumped for further use with google
506 breakpad.
507
508 A directory structure that can be used by minidump-stackwalk
509 will be created at:
510
511 $(STAGING_DIR)/usr/share/google-breakpad-symbols
512
513endif
514
Thomas Petazzonic5866be2013-09-02 18:06:36 +0200515config BR2_ENABLE_SSP
516 bool "build code with Stack Smashing Protection"
517 depends on BR2_TOOLCHAIN_HAS_SSP
518 help
519 Enable stack smashing protection support using GCCs
520 -fstack-protector-all option.
521
522 See http://www.linuxfromscratch.org/hints/downloads/files/ssp.txt
Thomas De Schampheleirebed4e272013-11-11 17:23:23 +0100523 for details.
Thomas Petazzonic5866be2013-09-02 18:06:36 +0200524
525 Note that this requires the toolchain to have SSP
526 support. This is always the case for glibc and eglibc
527 toolchain, but is optional in uClibc toolchains.
528
529comment "enabling Stack Smashing Protection requires support in the toolchain"
530 depends on !BR2_TOOLCHAIN_HAS_SSP
531
Bernhard Reutner-Fischer3096f342007-06-01 22:16:28 +0000532config BR2_PREFER_STATIC_LIB
Alexey Brodkin7d9c0df2014-10-12 18:34:44 +0200533 bool "build statically linked applications, no dynamic libraries"
Bernhard Reutner-Fischer3096f342007-06-01 22:16:28 +0000534 help
Alexey Brodkin7d9c0df2014-10-12 18:34:44 +0200535 Build all applications for the target statically linked.
536 This potentially increases your filesystem size and should only be
Bernhard Reutner-Fischerece6fe02007-06-02 16:36:43 +0000537 used if you know what you do.
Bernhard Reutner-Fischer3096f342007-06-01 22:16:28 +0000538
Alexey Brodkin7d9c0df2014-10-12 18:34:44 +0200539 Note that some applications cannot be build statically and so are
540 intentionally disabled.
541
542 The default (if this option is disabled) is to build dynamic
543 libraries and dynamically link applications to use those on the
544 target filesystem.
545
Bernhard Reutner-Fischer3096f342007-06-01 22:16:28 +0000546
Thomas Petazzoniee0246e2011-09-29 21:57:38 +0200547config BR2_PACKAGE_OVERRIDE_FILE
548 string "location of a package override file"
Yann E. MORINeda3d0e2014-01-29 22:48:24 +0100549 default "$(CONFIG_DIR)/local.mk"
Thomas Petazzoniee0246e2011-09-29 21:57:38 +0200550 help
551 A package override file is a short makefile that contains
552 variable definitions of the form <pkg>_OVERRIDE_SRCDIR,
553 which allows to tell Buildroot to use an existing directory
554 as the source directory for a particular package. See the
555 Buildroot documentation for more details on this feature.
556
Simon Dawson5538e472013-03-17 23:13:47 +0000557config BR2_GLOBAL_PATCH_DIR
Ryan Barnettbc4f79d2013-12-18 04:25:01 -0600558 string "global patch directories"
Simon Dawson5538e472013-03-17 23:13:47 +0000559 help
Ryan Barnettbc4f79d2013-12-18 04:25:01 -0600560 You may specify a space separated list of one or more directories
561 containing global package patches. For a specific version
562 <packageversion> of a specific package <packagename>, patches are
563 applied as follows:
Simon Dawson5538e472013-03-17 23:13:47 +0000564
Ryan Barnettbc4f79d2013-12-18 04:25:01 -0600565 First, the default Buildroot patch set for the package is applied
566 from the package's directory in Buildroot.
Simon Dawson5538e472013-03-17 23:13:47 +0000567
Ryan Barnettbc4f79d2013-12-18 04:25:01 -0600568 Then for every directory - <global-patch-dir> - that exists in
569 BR2_GLOBAL_PATCH_DIR, if the directory
570 <global-patch-dir>/<packagename>/<packageversion>/ exists, then all
571 *.patch files in this directory will be applied.
Simon Dawson5538e472013-03-17 23:13:47 +0000572
Ryan Barnettbc4f79d2013-12-18 04:25:01 -0600573 Otherwise, if the directory <global-patch-dir>/<packagename> exists,
Simon Dawson5538e472013-03-17 23:13:47 +0000574 then all *.patch files in the directory will be applied.
575
Eric Andersen8e5fb3f2004-12-11 13:01:10 +0000576endmenu
Eric Andersen2d523c22004-10-09 01:06:03 +0000577
Bernhard Reutner-Fischer50100392007-09-25 07:55:45 +0000578source "toolchain/Config.in"
579
Thomas Petazzoni6c3e3ad2012-11-03 08:27:58 +0000580source "system/Config.in"
Thomas Petazzonibeb43c72010-12-05 21:52:44 +0100581
Yann E. MORIN24403852013-08-17 22:35:37 +0200582source "linux/Config.in"
Bernhard Reutner-Fischer50100392007-09-25 07:55:45 +0000583
Yann E. MORIN24403852013-08-17 22:35:37 +0200584source "package/Config.in"
Thomas Petazzonid06e8022012-01-28 18:42:49 +0100585
Thomas Petazzoni05852412010-03-10 22:30:06 +0100586source "fs/Config.in"
587
Thomas Petazzoni649b5b92010-03-14 18:20:45 +0100588source "boot/Config.in"
589
Yann E. MORIN24403852013-08-17 22:35:37 +0200590source "package/Config.in.host"
Arnout Vandecappelle (Essensium/Mind)ebcfa982012-11-12 10:08:28 +0000591
592source "Config.in.legacy"
Thomas Petazzoni8eb8aaf2013-12-05 20:11:11 +0100593
Peter Korsgaardf4ea4b92013-12-08 23:21:50 +0100594menu "User-provided options"
595 depends on BR2_EXTERNAL != "support/dummy-external"
596
Thomas Petazzoni8eb8aaf2013-12-05 20:11:11 +0100597source "$BR2_EXTERNAL/Config.in"
Peter Korsgaardf4ea4b92013-12-08 23:21:50 +0100598
599endmenu