]> rtime.felk.cvut.cz Git - coffee/buildroot.git/blob - Config.in
ccache: allow dynamic selection of cache directory
[coffee/buildroot.git] / Config.in
1 #
2
3 mainmenu "Buildroot $BR2_VERSION Configuration"
4
5 config BR2_HAVE_DOT_CONFIG
6         bool
7         default y
8
9 config BR2_VERSION
10         string
11         option env="BR2_VERSION_FULL"
12
13 source "target/Config.in.arch"
14
15 menu "Build options"
16
17 menu "Commands"
18
19 config BR2_WGET
20         string "Wget command"
21         default "wget --passive-ftp -nd -t 3"
22
23 config BR2_SVN
24         string "Subversion (svn) command"
25         default "svn"
26
27 config BR2_BZR
28         string "Bazaar (bzr) command"
29         default "bzr"
30
31 config BR2_GIT
32         string "Git command"
33         default "git"
34
35 config BR2_LOCALFILES
36         string "Local files retrieval command"
37         default "cp"
38
39 config BR2_SCP
40         string "Secure copy (scp) command"
41         default "scp"
42
43 config BR2_SSH
44         string "Secure shell (ssh) command"
45         default "ssh"
46
47 config BR2_HG
48         string "Mercurial (hg) command"
49         default "hg"
50
51 config BR2_ZCAT
52         string "zcat command"
53         default "gzip -d -c"
54         help
55           Command to be used to extract a gzip'ed file to stdout.
56           zcat is identical to gunzip -c except that the former may
57           not be available on your system.
58           Default is "gzip -d -c"
59           Other possible values include "gunzip -c" or "zcat".
60
61 config BR2_BZCAT
62         string "bzcat command"
63         default "bzcat"
64         help
65           Command to be used to extract a bzip2'ed file to stdout.
66           bzcat is identical to bunzip2 -c except that the former may
67           not be available on your system.
68           Default is "bzcat"
69           Other possible values include "bunzip2 -c" or "bzip2 -d -c".
70
71 config BR2_XZCAT
72         string "xzcat command"
73         default "xzcat"
74         help
75           Command to be used to extract a xz'ed file to stdout.
76           Default is "xzcat"
77
78 config BR2_TAR_OPTIONS
79         string "Tar options"
80         default ""
81         help
82           Options to pass to tar when extracting the sources.
83           E.g. " -v --exclude='*.svn*'" to exclude all .svn internal files
84           and to be verbose.
85
86 endmenu
87
88 config BR2_DL_DIR
89         string "Download dir"
90         default "$(TOPDIR)/dl"
91         help
92           Directory to store all the source files that we need to fetch.
93           If the Linux shell environment has defined the BUILDROOT_DL_DIR
94           environment variable, then this overrides this configuration item.
95
96           The default is $(TOPDIR)/dl
97
98 config BR2_HOST_DIR
99         string "Host dir"
100         default "$(BASE_DIR)/host"
101         help
102           Directory to store all the binary files that are built for the host.
103           This includes the cross compilation toolchain when building the
104           internal buildroot toolchain.
105
106           The default is $(BASE_DIR)/host
107
108 menu "Mirrors and Download locations"
109
110 config BR2_PRIMARY_SITE
111         string "Primary download site"
112         default ""
113         help
114           Primary site to download from. If this option is set then buildroot
115           will try to download package source first from this site and try the
116           default if the file is not found.
117           Valid URIs are URIs recognized by $(WGET) and scp URIs of the form
118           scp://[user@]host:path.
119           NOTE: This works for all packages using the central package
120           infrastructure (generic, autotools, cmake, ...)
121
122 config BR2_BACKUP_SITE
123         string "Backup download site"
124         default "http://sources.buildroot.net/"
125         help
126           Backup site to download from. If this option is set then buildroot
127           will fall back to download package sources from here if the
128           normal location fails.
129
130 config BR2_SOURCEFORGE_MIRROR
131         string "Sourceforge mirror site"
132         default "kent"
133         help
134           Sourceforge has a system of mirror sites.  Some sites may be
135           closer to your location, and sometimes mirror sites go down
136           and are no longer available.  This option allows you to select
137           your preferred Sourceforge mirror site.
138
139           The list of mirrors is available here:
140           http://sourceforge.net/apps/trac/sourceforge/wiki/Mirrors
141
142 config BR2_KERNEL_MIRROR
143         string "Kernel.org mirror"
144         default "http://www.kernel.org/pub/"
145         help
146           kernel.org is mirrored on a number of servers around the world.
147           The following allows you to select your preferred mirror.
148
149           Have a look on the kernel.org site for a list of mirrors, then enter
150           the URL to the base directory.  Examples:
151
152              http://www.XX.kernel.org/pub (XX = country code)
153              http://mirror.aarnet.edu.au/pub/ftp.kernel.org
154
155 config BR2_GNU_MIRROR
156         string "GNU Software mirror"
157         default "http://ftp.gnu.org/pub/gnu"
158         help
159           GNU has multiple software mirrors scattered around the world.
160           The following allows you to select your preferred mirror.
161
162           Have a look on the gnu.org site for a list of mirrors, then enter
163           the URL to the base directory.  Examples:
164
165              http://ftp.gnu.org/pub/gnu
166              http://mirror.aarnet.edu.au/pub/gnu
167
168 config BR2_DEBIAN_MIRROR
169         string "Debian Software mirror"
170         default "http://ftp.debian.org"
171         help
172           Debian has multiple software mirrors scattered around the world.
173           The following allows you to select your preferred mirror.
174
175           Usually, just add your country code like XX here:
176           http://ftp.XX.debian.org
177
178 endmenu
179
180 config BR2_JLEVEL
181         int "Number of jobs to run simultaneously"
182         default "2"
183         help
184           Number of jobs to run simultaneously
185
186 config BR2_CCACHE
187         bool "Enable compiler cache"
188         help
189           This option will enable the use of ccache, a compiler
190           cache. It will cache the result of previous builds to speed
191           up future builds. The cache is stored in
192           $HOME/.buildroot-ccache.
193
194           Note that Buildroot does not try to invalidate the cache
195           contents when the compiler changes in an incompatible
196           way. Therefore, if you make a change to the compiler version
197           and/or configuration, you are responsible for purging the
198           ccache cache by removing the $HOME/.buildroot-ccache
199           directory.
200
201 config BR2_CCACHE_DIR
202         string "Compiler cache location"
203         depends on BR2_CCACHE
204         default "$(HOME)/.buildroot-ccache"
205         help
206           Where ccache should store cached files.
207
208 config BR2_DEPRECATED
209         bool "Show packages that are deprecated or obsolete"
210         help
211           This option hides outdated/obsolete versions of packages.
212
213 config BR2_ENABLE_DEBUG
214         bool "build packages with debugging symbols"
215         help
216           Build packages with debugging symbols enabled. All libraries
217           and binaries in the 'staging' directory will have debugging
218           symbols, which allows remote debugging even if libraries and
219           binaries are stripped on the target. Whether libraries and
220           binaries are stripped on the target is controlled by the
221           BR2_STRIP_* options below.
222
223 if BR2_ENABLE_DEBUG
224 choice
225         prompt "gcc debug level"
226         default BR2_DEBUG_2
227         help
228           Set the debug level for gcc
229
230 config BR2_DEBUG_1
231         bool "debug level 1"
232         help
233           Debug level 1 produces minimal information, enough
234           for making backtraces in parts of the program that
235           you don't plan to debug. This includes descriptions
236           of functions and external variables, but no information
237           about local variables and no line numbers.
238
239 config BR2_DEBUG_2
240         bool "debug level 2"
241         help
242           The default gcc debug level is 2
243
244 config BR2_DEBUG_3
245         bool "debug level 3"
246         help
247           Level 3 includes extra information, such as all the
248           macro definitions present in the program. Some debuggers
249           support macro expansion when you use -g3.
250 endchoice
251 endif
252
253 choice
254         prompt "strip command for binaries on target"
255         default BR2_STRIP_strip
256
257 config BR2_STRIP_strip
258         bool "strip"
259         depends on !BR2_ELF2FLT
260         help
261           Binaries and libraries in the target filesystem will be
262           stripped using the normal 'strip' command. This allows to
263           save space, mainly by removing debugging symbols. Debugging
264           symbols on the target are needed for native debugging, but
265           not when remote debugging is used.
266
267 config BR2_STRIP_sstrip
268         bool "sstrip"
269         select BR2_PACKAGE_SSTRIP_HOST
270         depends on !BR2_ELF2FLT
271         help
272           Binaries and libraries in the target filesystem will be
273           stripped using the 'sstrip' command, which strips a little
274           bit more than the traditional 'strip' command. This allows to
275           save space, mainly by removing debugging symbols. Debugging
276           symbols on the target are needed for native debugging, but
277           not when remote debugging is used.
278
279 config BR2_STRIP_none
280         bool "none"
281         help
282           Do not strip binaries and libraries in the target
283           filesystem.
284 endchoice
285
286 choice
287         prompt "gcc optimization level"
288         default BR2_OPTIMIZE_S
289         help
290           Set the optimization level for gcc
291
292 config BR2_OPTIMIZE_0
293         bool "optimization level 0"
294         help
295           Do not optimize. This is the default.
296
297 config BR2_OPTIMIZE_1
298         bool "optimization level 1"
299         help
300           Optimize. Optimizing compilation takes somewhat more time,
301           and a lot more memory for a large function. With -O, the
302           compiler tries to reduce code size and execution time,
303           without performing any optimizations that take a great deal
304           of compilation time. -O turns on the following optimization
305           flags: -fdefer-pop -fdelayed-branch -fguess-branch-probability
306           -fcprop-registers -floop-optimize -fif-conversion
307           -fif-conversion2 -ftree-ccp -ftree-dce -ftree-dominator-opts
308           -ftree-dse -ftree-ter -ftree-lrs -ftree-sra -ftree-copyrename
309           -ftree-fre -ftree-ch -funit-at-a-time -fmerge-constants
310           -O also turns on -fomit-frame-pointer on machines where doing
311           so does not interfere with debugging.
312
313 config BR2_OPTIMIZE_2
314         bool "optimization level 2"
315         help
316           Optimize even more. GCC performs nearly all supported optimizations
317           that do not involve a space-speed tradeoff. The compiler does not
318           perform loop unrolling or function inlining when you specify -O2.
319           As compared to -O, this option increases both compilation time and
320           the performance of the generated code. -O2 turns on all optimization
321           flags specified by -O. It also turns on the following optimization
322           flags: -fthread-jumps -fcrossjumping -foptimize-sibling-calls
323           -fcse-follow-jumps -fcse-skip-blocks -fgcse  -fgcse-lm
324           -fexpensive-optimizations -fstrength-reduce -frerun-cse-after-loop
325           -frerun-loop-opt -fcaller-saves -fpeephole2 -fschedule-insns
326           -fschedule-insns2 -fsched-interblock -fsched-spec -fregmove
327           -fstrict-aliasing -fdelete-null-pointer-checks -freorder-blocks
328           -freorder-functions -falign-functions -falign-jumps -falign-loops
329           -falign-labels -ftree-vrp -ftree-pre
330           Please note the warning under -fgcse about invoking -O2 on programs
331           that use computed gotos.
332
333 config BR2_OPTIMIZE_3
334         bool "optimization level 3"
335         help
336           Optimize yet more. -O3 turns on all optimizations specified by -O2
337           and also turns on the -finline-functions, -funswitch-loops and
338           -fgcse-after-reload options.
339
340 config BR2_OPTIMIZE_S
341         bool "optimize for size"
342         help
343           Optimize for size. -Os enables all -O2 optimizations that do not
344           typically increase code size. It also performs further optimizations
345           designed to reduce code size. -Os disables the following optimization
346           flags: -falign-functions -falign-jumps -falign-loops -falign-labels
347           -freorder-blocks -freorder-blocks-and-partition -fprefetch-loop-arrays
348           -ftree-vect-loop-version
349
350 endchoice
351
352 config BR2_PREFER_STATIC_LIB
353         bool "prefer static libraries"
354         help
355           Where possible, build and use static libraries for the target.
356           This potentially increases your code size and should only be
357           used if you know what you do.
358           The default is to build dynamic libraries and use those on
359           the target filesystem.
360
361           WARNING: This is highly experimental at the moment.
362
363 config BR2_HAVE_DOCUMENTATION
364         bool "documentation on the target"
365         help
366           Install the documentation, including manual pages and info
367           pages, on the target.
368           If you say n here, your target will not contain any
369           documentation.
370
371 config BR2_HAVE_DEVFILES
372         bool "development files in target filesystem"
373         help
374           Install headers and static libraries in the
375           target filesystem
376
377 config BR2_PACKAGE_OVERRIDE_FILE
378         string "location of a package override file"
379         default "$(TOPDIR)/local.mk"
380         help
381           A package override file is a short makefile that contains
382           variable definitions of the form <pkg>_OVERRIDE_SRCDIR,
383           which allows to tell Buildroot to use an existing directory
384           as the source directory for a particular package. See the
385           Buildroot documentation for more details on this feature.
386
387 endmenu
388
389 source "toolchain/Config.in"
390
391 source "target/generic/Config.in"
392
393 source "package/Config.in"
394
395 source "package/Config.in.host"
396
397 source "fs/Config.in"
398
399 source "boot/Config.in"
400
401 source "linux/Config.in"