blob: 8b1bd8d9aa88a75601ec4d0f0b974a81023b9c9c [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.
Thomas Petazzoni80080072010-12-05 21:52:37 +0100170
Thomas De Schampheleire5a83e082012-06-22 07:37:03 +0200171config BR2_PRIMARY_SITE_ONLY
172 bool "Only allow downloads from primary download site"
173 depends on BR2_PRIMARY_SITE != ""
174 help
175 If this option is enabled, downloads will only be attempted
176 from the primary download site. Other locations, like the
177 package's official download location or the backup download
178 site, will not be considered. Therefore, if the package is
179 not present on the primary site, the download fails.
180
181 This is useful for project developers who want to ensure
182 that the project can be built even if the upstream tarball
183 locations disappear.
184
185if !BR2_PRIMARY_SITE_ONLY
186
Thomas Petazzoni80080072010-12-05 21:52:37 +0100187config BR2_BACKUP_SITE
188 string "Backup download site"
Peter Seiderer4a9eb202014-02-21 23:33:36 +0100189 default "http://sources.buildroot.net"
Thomas Petazzoni80080072010-12-05 21:52:37 +0100190 help
191 Backup site to download from. If this option is set then buildroot
192 will fall back to download package sources from here if the
193 normal location fails.
194
Thomas Petazzoni80080072010-12-05 21:52:37 +0100195config BR2_KERNEL_MIRROR
196 string "Kernel.org mirror"
Yann E. MORINba14dbe2014-05-23 19:20:12 +0200197 default "https://www.kernel.org/pub"
Thomas Petazzoni80080072010-12-05 21:52:37 +0100198 help
199 kernel.org is mirrored on a number of servers around the world.
200 The following allows you to select your preferred mirror.
201
202 Have a look on the kernel.org site for a list of mirrors, then enter
203 the URL to the base directory. Examples:
204
205 http://www.XX.kernel.org/pub (XX = country code)
206 http://mirror.aarnet.edu.au/pub/ftp.kernel.org
207
208config BR2_GNU_MIRROR
209 string "GNU Software mirror"
210 default "http://ftp.gnu.org/pub/gnu"
211 help
212 GNU has multiple software mirrors scattered around the world.
213 The following allows you to select your preferred mirror.
214
215 Have a look on the gnu.org site for a list of mirrors, then enter
216 the URL to the base directory. Examples:
217
218 http://ftp.gnu.org/pub/gnu
219 http://mirror.aarnet.edu.au/pub/gnu
220
Francois Perrad72afb292014-01-11 16:42:07 +0100221config BR2_LUAROCKS_MIRROR
222 string "LuaRocks mirror"
Francois Perrad0b8411a2014-07-25 20:21:24 +0200223 default "http://rocks.moonscript.org"
Francois Perrad72afb292014-01-11 16:42:07 +0100224 help
225 LuaRocks repository.
226
227 See http://luarocks.org
228
Francois Perrad9fbb1692014-02-23 15:17:16 +0100229config BR2_CPAN_MIRROR
230 string "CPAN mirror (Perl packages)"
Yann E. MORIN32567d12014-07-19 12:09:19 +0200231 default "http://cpan.metacpan.org"
Francois Perrad9fbb1692014-02-23 15:17:16 +0100232 help
233 CPAN (Comprehensive Perl Archive Network) is a repository
234 of Perl packages. It has multiple software mirrors scattered
235 around the world. This option allows you to select a mirror.
236
237 The list of mirrors is available at:
238 http://search.cpan.org/mirror
239
Yann E. MORIN3318a5a2015-07-14 09:42:40 +0200240endif
241
Thomas Petazzoni80080072010-12-05 21:52:37 +0100242endmenu
Thomas Petazzoniaa41d372010-04-10 22:55:38 +0200243
Eric Andersen8e5fb3f2004-12-11 13:01:10 +0000244config BR2_JLEVEL
Nathan Lynch5016aa02012-06-16 09:37:17 +0000245 int "Number of jobs to run simultaneously (0 for auto)"
246 default "0"
Eric Andersen8e5fb3f2004-12-11 13:01:10 +0000247 help
Nathan Lynch5016aa02012-06-16 09:37:17 +0000248 Number of jobs to run simultaneously. If 0, determine
249 automatically according to number of CPUs on the host
250 system.
Bernhard Reutner-Fischer93ab6d32007-01-28 12:03:58 +0000251
Thomas Petazzoni17b66af2010-12-07 21:09:56 +0100252config BR2_CCACHE
253 bool "Enable compiler cache"
254 help
255 This option will enable the use of ccache, a compiler
256 cache. It will cache the result of previous builds to speed
Danomi Manchegodd79f2d2014-04-30 22:05:07 -0400257 up future builds. By default, the cache is stored in
Thomas Petazzoni17b66af2010-12-07 21:09:56 +0100258 $HOME/.buildroot-ccache.
259
Thomas Petazzonif044e032012-03-07 20:26:50 +0100260 Note that Buildroot does not try to invalidate the cache
261 contents when the compiler changes in an incompatible
262 way. Therefore, if you make a change to the compiler version
263 and/or configuration, you are responsible for purging the
264 ccache cache by removing the $HOME/.buildroot-ccache
265 directory.
266
Danomi Manchegodd79f2d2014-04-30 22:05:07 -0400267if BR2_CCACHE
268
Thomas De Schampheleire43329072012-05-16 21:39:28 +0200269config BR2_CCACHE_DIR
270 string "Compiler cache location"
Thomas De Schampheleire43329072012-05-16 21:39:28 +0200271 default "$(HOME)/.buildroot-ccache"
272 help
273 Where ccache should store cached files.
274
Danomi Manchegodd79f2d2014-04-30 22:05:07 -0400275config BR2_CCACHE_INITIAL_SETUP
276 string "Compiler cache initial setup"
277 help
278 Initial ccache settings to apply, such as --max-files or --max-size.
279
280 For example, if your project is known to require more space than the
281 default max cache size, then you might want to increase the cache size
282 to a suitable amount using the -M (--max-size) option.
283
284 The string you specify here is passed verbatim to ccache. Refer to
285 ccache documentation for more details.
286
287 These initial settings are applied after ccache has been compiled.
288
289endif
290
Bernhard Reutner-Fischer7779fd72007-02-09 13:31:55 +0000291config BR2_DEPRECATED
Gustavo Zacarias8515ef02014-09-19 10:41:09 -0300292 bool "Show options and packages that are deprecated or obsolete"
Bernhard Reutner-Fischer7779fd72007-02-09 13:31:55 +0000293 help
Gustavo Zacarias8515ef02014-09-19 10:41:09 -0300294 This option shows outdated/obsolete versions of packages and
295 options that are otherwise hidden.
Eric Andersenba7c48f2004-12-11 10:25:40 +0000296
Thomas De Schampheleireba4ad9d2014-01-03 17:02:50 +0100297if BR2_DEPRECATED
298
Thomas Petazzoni8f3508a2014-06-29 18:02:10 +0200299config BR2_DEPRECATED_SINCE_2014_08
300 bool
301 default y
302
Gustavo Zacarias683eedd2014-12-01 11:16:56 -0300303config BR2_DEPRECATED_SINCE_2015_02
304 bool
305 default y
306
Gustavo Zacarias0f1556e2015-03-03 12:52:24 -0300307config BR2_DEPRECATED_SINCE_2015_05
308 bool
309 default y
310
Gustavo Zacarias602692a2015-06-02 14:34:34 -0300311config BR2_DEPRECATED_SINCE_2015_08
312 bool
313 default y
314
Thomas De Schampheleireba4ad9d2014-01-03 17:02:50 +0100315endif
316
John Voltz41f6b792008-03-12 13:07:10 +0000317config BR2_ENABLE_DEBUG
318 bool "build packages with debugging symbols"
John Voltz41f6b792008-03-12 13:07:10 +0000319 help
Thomas Petazzonia9a34672012-03-14 23:49:58 +0100320 Build packages with debugging symbols enabled. All libraries
321 and binaries in the 'staging' directory will have debugging
322 symbols, which allows remote debugging even if libraries and
323 binaries are stripped on the target. Whether libraries and
324 binaries are stripped on the target is controlled by the
325 BR2_STRIP_* options below.
John Voltz41f6b792008-03-12 13:07:10 +0000326
327if BR2_ENABLE_DEBUG
328choice
329 prompt "gcc debug level"
330 default BR2_DEBUG_2
331 help
332 Set the debug level for gcc
333
334config BR2_DEBUG_1
335 bool "debug level 1"
336 help
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000337 Debug level 1 produces minimal information, enough
338 for making backtraces in parts of the program that
339 you don't plan to debug. This includes descriptions
John Voltz41f6b792008-03-12 13:07:10 +0000340 of functions and external variables, but no information
341 about local variables and no line numbers.
342
343config BR2_DEBUG_2
344 bool "debug level 2"
345 help
346 The default gcc debug level is 2
347
348config BR2_DEBUG_3
349 bool "debug level 3"
350 help
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000351 Level 3 includes extra information, such as all the
John Voltz41f6b792008-03-12 13:07:10 +0000352 macro definitions present in the program. Some debuggers
353 support macro expansion when you use -g3.
354endchoice
355endif
356
Bernhard Reutner-Fischerbbd251a2007-07-31 18:06:50 +0000357choice
Thomas Petazzonia9a34672012-03-14 23:49:58 +0100358 prompt "strip command for binaries on target"
Bernhard Reutner-Fischerbbd251a2007-07-31 18:06:50 +0000359 default BR2_STRIP_strip
Bernhard Reutner-Fischerbbd251a2007-07-31 18:06:50 +0000360
361config BR2_STRIP_strip
362 bool "strip"
Axel Lin9f2bf302013-09-03 17:39:53 +0800363 depends on !BR2_PACKAGE_HOST_ELF2FLT
Bernhard Reutner-Fischerbbd251a2007-07-31 18:06:50 +0000364 help
Thomas Petazzonia9a34672012-03-14 23:49:58 +0100365 Binaries and libraries in the target filesystem will be
366 stripped using the normal 'strip' command. This allows to
367 save space, mainly by removing debugging symbols. Debugging
368 symbols on the target are needed for native debugging, but
369 not when remote debugging is used.
Ulf Samuelsson85f54fb2007-08-24 05:31:07 +0000370
Bernhard Reutner-Fischerbbd251a2007-07-31 18:06:50 +0000371config BR2_STRIP_none
372 bool "none"
373 help
Thomas Petazzonia9a34672012-03-14 23:49:58 +0100374 Do not strip binaries and libraries in the target
375 filesystem.
Bernhard Reutner-Fischerbbd251a2007-07-31 18:06:50 +0000376endchoice
377
Thomas De Schampheleire2a970452012-06-21 19:34:50 +0000378config BR2_STRIP_EXCLUDE_FILES
379 string "executables that should not be stripped"
380 depends on !BR2_STRIP_none
381 default ""
382 help
383 You may specify a space-separated list of binaries and libraries
384 here that should not be stripped on the target.
385
386config BR2_STRIP_EXCLUDE_DIRS
387 string "directories that should be skipped when stripping"
388 depends on !BR2_STRIP_none
389 default ""
390 help
391 You may specify a space-separated list of directories that should
392 be skipped when stripping. Binaries and libraries in these
393 directories will not be touched.
394 The directories should be specified relative to the target directory,
395 without leading slash.
396
John Voltz41f6b792008-03-12 13:07:10 +0000397choice
398 prompt "gcc optimization level"
John Voltz7eb796b2008-03-16 13:26:14 +0000399 default BR2_OPTIMIZE_S
John Voltz923f42a2008-03-12 11:23:11 +0000400 help
John Voltz41f6b792008-03-12 13:07:10 +0000401 Set the optimization level for gcc
402
403config BR2_OPTIMIZE_0
404 bool "optimization level 0"
405 help
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000406 Do not optimize. This is the default.
John Voltz41f6b792008-03-12 13:07:10 +0000407
408config BR2_OPTIMIZE_1
409 bool "optimization level 1"
410 help
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000411 Optimize. Optimizing compilation takes somewhat more time,
412 and a lot more memory for a large function. With -O, the
413 compiler tries to reduce code size and execution time,
414 without performing any optimizations that take a great deal
415 of compilation time. -O turns on the following optimization
416 flags: -fdefer-pop -fdelayed-branch -fguess-branch-probability
417 -fcprop-registers -floop-optimize -fif-conversion
418 -fif-conversion2 -ftree-ccp -ftree-dce -ftree-dominator-opts
419 -ftree-dse -ftree-ter -ftree-lrs -ftree-sra -ftree-copyrename
John Voltz41f6b792008-03-12 13:07:10 +0000420 -ftree-fre -ftree-ch -funit-at-a-time -fmerge-constants
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000421 -O also turns on -fomit-frame-pointer on machines where doing
John Voltz41f6b792008-03-12 13:07:10 +0000422 so does not interfere with debugging.
423
424config BR2_OPTIMIZE_2
425 bool "optimization level 2"
426 help
427 Optimize even more. GCC performs nearly all supported optimizations
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000428 that do not involve a space-speed tradeoff. The compiler does not
429 perform loop unrolling or function inlining when you specify -O2.
430 As compared to -O, this option increases both compilation time and
431 the performance of the generated code. -O2 turns on all optimization
432 flags specified by -O. It also turns on the following optimization
433 flags: -fthread-jumps -fcrossjumping -foptimize-sibling-calls
434 -fcse-follow-jumps -fcse-skip-blocks -fgcse -fgcse-lm
435 -fexpensive-optimizations -fstrength-reduce -frerun-cse-after-loop
436 -frerun-loop-opt -fcaller-saves -fpeephole2 -fschedule-insns
437 -fschedule-insns2 -fsched-interblock -fsched-spec -fregmove
438 -fstrict-aliasing -fdelete-null-pointer-checks -freorder-blocks
439 -freorder-functions -falign-functions -falign-jumps -falign-loops
John Voltz41f6b792008-03-12 13:07:10 +0000440 -falign-labels -ftree-vrp -ftree-pre
441 Please note the warning under -fgcse about invoking -O2 on programs
442 that use computed gotos.
443
444config BR2_OPTIMIZE_3
445 bool "optimization level 3"
446 help
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000447 Optimize yet more. -O3 turns on all optimizations specified by -O2
448 and also turns on the -finline-functions, -funswitch-loops and
John Voltz41f6b792008-03-12 13:07:10 +0000449 -fgcse-after-reload options.
450
451config BR2_OPTIMIZE_S
452 bool "optimize for size"
453 help
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000454 Optimize for size. -Os enables all -O2 optimizations that do not
John Voltz41f6b792008-03-12 13:07:10 +0000455 typically increase code size. It also performs further optimizations
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000456 designed to reduce code size. -Os disables the following optimization
457 flags: -falign-functions -falign-jumps -falign-loops -falign-labels
John Voltz41f6b792008-03-12 13:07:10 +0000458 -freorder-blocks -freorder-blocks-and-partition -fprefetch-loop-arrays
459 -ftree-vect-loop-version
Peter Korsgaard02a623d2008-08-04 19:07:05 +0000460
John Voltz41f6b792008-03-12 13:07:10 +0000461endchoice
John Voltz923f42a2008-03-12 11:23:11 +0000462
Pascal Huerst09a1a102014-07-31 22:08:55 +0200463config BR2_GOOGLE_BREAKPAD_ENABLE
464 bool "Enable google-breakpad support"
465 select BR2_PACKAGE_GOOGLE_BREAKPAD
466 depends on BR2_INSTALL_LIBSTDCPP
467 depends on BR2_TOOLCHAIN_USES_GLIBC
468 depends on BR2_PACKAGE_GOOGLE_BREAKPAD_ARCH_SUPPORTS
469 help
470 This option will enable the use of google breakpad, a
471 library and tool suite that allows you to distribute an
472 application to users with compiler-provided debugging
473 information removed, record crashes in compact "minidump"
474 files, send them back to your server and produce C and C++
475 stack traces from these minidumps. Breakpad can also write
476 minidumps on request for programs that have not crashed.
477
478if BR2_GOOGLE_BREAKPAD_ENABLE
479
480config BR2_GOOGLE_BREAKPAD_INCLUDE_FILES
481 string "List of executables and libraries to extract symbols from"
482 default ""
483 help
484 You may specify a space-separated list of binaries and
485 libraries with full paths relative to $(TARGET_DIR) of which
486 debug symbols will be dumped for further use with google
487 breakpad.
488
489 A directory structure that can be used by minidump-stackwalk
490 will be created at:
491
492 $(STAGING_DIR)/usr/share/google-breakpad-symbols
493
494endif
495
Thomas Petazzonic5866be2013-09-02 18:06:36 +0200496config BR2_ENABLE_SSP
497 bool "build code with Stack Smashing Protection"
498 depends on BR2_TOOLCHAIN_HAS_SSP
499 help
500 Enable stack smashing protection support using GCCs
501 -fstack-protector-all option.
502
503 See http://www.linuxfromscratch.org/hints/downloads/files/ssp.txt
Thomas De Schampheleirebed4e272013-11-11 17:23:23 +0100504 for details.
Thomas Petazzonic5866be2013-09-02 18:06:36 +0200505
506 Note that this requires the toolchain to have SSP
507 support. This is always the case for glibc and eglibc
508 toolchain, but is optional in uClibc toolchains.
509
510comment "enabling Stack Smashing Protection requires support in the toolchain"
511 depends on !BR2_TOOLCHAIN_HAS_SSP
512
Thomas Petazzoni158001f2014-12-11 23:50:09 +0100513choice
514 bool "libraries"
Thomas Petazzonif1d3e092014-12-11 23:50:11 +0100515 default BR2_SHARED_LIBS if BR2_BINFMT_SUPPORTS_SHARED
Thomas Petazzoni158001f2014-12-11 23:50:09 +0100516 default BR2_STATIC_LIBS if !BR2_BINFMT_SUPPORTS_SHARED
Bernhard Reutner-Fischer3096f342007-06-01 22:16:28 +0000517 help
Thomas Petazzoni158001f2014-12-11 23:50:09 +0100518 Select the type of libraries you want to use on the target.
Bernhard Reutner-Fischer3096f342007-06-01 22:16:28 +0000519
Thomas Petazzoni158001f2014-12-11 23:50:09 +0100520 The default is to build dynamic libraries and use those on
521 the target filesystem, except when the architecture and/or
522 the selected binary format does not support shared
523 libraries.
Alexey Brodkin7d9c0df2014-10-12 18:34:44 +0200524
Thomas Petazzoni158001f2014-12-11 23:50:09 +0100525config BR2_STATIC_LIBS
526 bool "static only"
527 help
528 Build and use only static libraries. No shared libraries
529 will be instaled on the target. This potentially increases
530 your code size and should only be used if you know what you
531 are doing. Note that some packages may not be available when
532 this option is enabled, due to their need for dynamic
533 library support.
534
535config BR2_SHARED_LIBS
536 bool "shared only"
537 depends on BR2_BINFMT_SUPPORTS_SHARED
538 help
539 Build and use only shared libraries. This is the recommended
540 solution as it saves space and build time.
541
542config BR2_SHARED_STATIC_LIBS
543 bool "both static and shared"
544 depends on BR2_BINFMT_SUPPORTS_SHARED
545 help
546 Build both shared and static libraries, but link executables
547 dynamically. While building both shared and static libraries
548 take more time and more disk space, having static libraries
549 may be useful to link some of the applications statically.
550
551endchoice
Alexey Brodkin7d9c0df2014-10-12 18:34:44 +0200552
Bernhard Reutner-Fischer3096f342007-06-01 22:16:28 +0000553
Thomas Petazzoniee0246e2011-09-29 21:57:38 +0200554config BR2_PACKAGE_OVERRIDE_FILE
555 string "location of a package override file"
Yann E. MORINeda3d0e2014-01-29 22:48:24 +0100556 default "$(CONFIG_DIR)/local.mk"
Thomas Petazzoniee0246e2011-09-29 21:57:38 +0200557 help
558 A package override file is a short makefile that contains
559 variable definitions of the form <pkg>_OVERRIDE_SRCDIR,
560 which allows to tell Buildroot to use an existing directory
561 as the source directory for a particular package. See the
562 Buildroot documentation for more details on this feature.
563
Simon Dawson5538e472013-03-17 23:13:47 +0000564config BR2_GLOBAL_PATCH_DIR
Ryan Barnettbc4f79d2013-12-18 04:25:01 -0600565 string "global patch directories"
Simon Dawson5538e472013-03-17 23:13:47 +0000566 help
Ryan Barnettbc4f79d2013-12-18 04:25:01 -0600567 You may specify a space separated list of one or more directories
568 containing global package patches. For a specific version
569 <packageversion> of a specific package <packagename>, patches are
570 applied as follows:
Simon Dawson5538e472013-03-17 23:13:47 +0000571
Ryan Barnettbc4f79d2013-12-18 04:25:01 -0600572 First, the default Buildroot patch set for the package is applied
573 from the package's directory in Buildroot.
Simon Dawson5538e472013-03-17 23:13:47 +0000574
Ryan Barnettbc4f79d2013-12-18 04:25:01 -0600575 Then for every directory - <global-patch-dir> - that exists in
576 BR2_GLOBAL_PATCH_DIR, if the directory
577 <global-patch-dir>/<packagename>/<packageversion>/ exists, then all
578 *.patch files in this directory will be applied.
Simon Dawson5538e472013-03-17 23:13:47 +0000579
Ryan Barnettbc4f79d2013-12-18 04:25:01 -0600580 Otherwise, if the directory <global-patch-dir>/<packagename> exists,
Simon Dawson5538e472013-03-17 23:13:47 +0000581 then all *.patch files in the directory will be applied.
582
Thomas Petazzoni4ac8f782014-12-10 23:53:57 +0100583menu "Advanced"
584
585config BR2_COMPILER_PARANOID_UNSAFE_PATH
586 bool "paranoid check of library/header paths"
587 help
588 By default, when this option is disabled, when the Buildroot
589 cross-compiler will encounter an unsafe library or header
590 path (such as /usr/include, or /usr/lib), the compiler will
591 display a warning.
592
593 By enabling this option, this warning is turned into an
594 error, which will completely abort the build when such
595 unsafe paths are encountered.
596
597 Note that this mechanism is available for both the internal
598 toolchain (through gcc and binutils patches) and external
599 toolchain backends (through the external toolchain wrapper).
600
601endmenu
602
Eric Andersen8e5fb3f2004-12-11 13:01:10 +0000603endmenu
Eric Andersen2d523c22004-10-09 01:06:03 +0000604
Bernhard Reutner-Fischer50100392007-09-25 07:55:45 +0000605source "toolchain/Config.in"
606
Thomas Petazzoni6c3e3ad2012-11-03 08:27:58 +0000607source "system/Config.in"
Thomas Petazzonibeb43c72010-12-05 21:52:44 +0100608
Yann E. MORIN24403852013-08-17 22:35:37 +0200609source "linux/Config.in"
Bernhard Reutner-Fischer50100392007-09-25 07:55:45 +0000610
Yann E. MORIN24403852013-08-17 22:35:37 +0200611source "package/Config.in"
Thomas Petazzonid06e8022012-01-28 18:42:49 +0100612
Thomas Petazzoni05852412010-03-10 22:30:06 +0100613source "fs/Config.in"
614
Thomas Petazzoni649b5b92010-03-14 18:20:45 +0100615source "boot/Config.in"
616
Yann E. MORIN24403852013-08-17 22:35:37 +0200617source "package/Config.in.host"
Arnout Vandecappelle (Essensium/Mind)ebcfa982012-11-12 10:08:28 +0000618
619source "Config.in.legacy"
Thomas Petazzoni8eb8aaf2013-12-05 20:11:11 +0100620
Peter Korsgaardf4ea4b92013-12-08 23:21:50 +0100621menu "User-provided options"
622 depends on BR2_EXTERNAL != "support/dummy-external"
623
Thomas Petazzoni8eb8aaf2013-12-05 20:11:11 +0100624source "$BR2_EXTERNAL/Config.in"
Peter Korsgaardf4ea4b92013-12-08 23:21:50 +0100625
626endmenu