xserver_xorg-server: add ordering prefix to patches
[buildroot-gz.git] / Config.in
blob0799cb7e56627e7d8326e560fc7f0eb996574b43
3 mainmenu "Buildroot $BR2_VERSION Configuration"
5 config BR2_HAVE_DOT_CONFIG
6         bool
7         default y
9 config BR2_VERSION
10         string
11         option env="BR2_VERSION_FULL"
13 config BR2_HOSTARCH
14         string
15         option env="HOSTARCH"
17 config BR2_EXTERNAL
18         string
19         option env="BR2_EXTERNAL"
21 # Hidden boolean selected by packages in need of Java in order to build
22 # (example: xbmc)
23 config BR2_NEEDS_HOST_JAVA
24         bool
26 # Hidden boolean selected by pre-built packages for x86, when they
27 # need to run on x86-64 machines (example: pre-built external
28 # toolchains, binary tools like SAM-BA, etc.).
29 config BR2_HOSTARCH_NEEDS_IA32_LIBS
30         bool
32 # Hidden boolean selected by packages that need to build 32 bits
33 # binaries with the host compiler, even on 64 bits build machines (e.g
34 # bootloaders).
35 config BR2_HOSTARCH_NEEDS_IA32_COMPILER
36         bool
38 source "arch/Config.in"
40 menu "Build options"
42 menu "Commands"
44 config BR2_WGET
45         string "Wget command"
46         default "wget --passive-ftp -nd -t 3"
48 config BR2_SVN
49         string "Subversion (svn) command"
50         default "svn"
52 config BR2_BZR
53         string "Bazaar (bzr) command"
54         default "bzr"
56 config BR2_GIT
57         string "Git command"
58         default "git"
60 config BR2_CVS
61         string "CVS command"
62         default "cvs"
64 config BR2_LOCALFILES
65         string "Local files retrieval command"
66         default "cp"
68 config BR2_SCP
69         string "Secure copy (scp) command"
70         default "scp"
72 config BR2_SSH
73         string "Secure shell (ssh) command"
74         default "ssh"
76 config BR2_HG
77         string "Mercurial (hg) command"
78         default "hg"
80 config BR2_ZCAT
81         string "zcat command"
82         default "gzip -d -c"
83         help
84           Command to be used to extract a gzip'ed file to stdout.
85           zcat is identical to gunzip -c except that the former may
86           not be available on your system.
87           Default is "gzip -d -c"
88           Other possible values include "gunzip -c" or "zcat".
90 config BR2_BZCAT
91         string "bzcat command"
92         default "bzcat"
93         help
94           Command to be used to extract a bzip2'ed file to stdout.
95           bzcat is identical to bunzip2 -c except that the former may
96           not be available on your system.
97           Default is "bzcat"
98           Other possible values include "bunzip2 -c" or "bzip2 -d -c".
100 config BR2_XZCAT
101         string "xzcat command"
102         default "xzcat"
103         help
104           Command to be used to extract a xz'ed file to stdout.
105           Default is "xzcat"
107 config BR2_TAR_OPTIONS
108         string "Tar options"
109         default ""
110         help
111           Options to pass to tar when extracting the sources.
112           E.g. " -v --exclude='*.svn*'" to exclude all .svn internal files
113           and to be verbose.
115 endmenu
117 config BR2_DEFCONFIG_FROM_ENV
118         string
119         option env="BR2_DEFCONFIG"
121 config BR2_DEFCONFIG
122         string "Location to save buildroot config"
123         default BR2_DEFCONFIG_FROM_ENV if BR2_DEFCONFIG_FROM_ENV != ""
124         default "$(CONFIG_DIR)/defconfig"
125         help
126           When running 'make savedefconfig', the defconfig file will be saved
127           in this location.
129 config BR2_DL_DIR
130         string "Download dir"
131         default "$(TOPDIR)/dl"
132         help
133           Directory to store all the source files that we need to fetch.
134           If the Linux shell environment has defined the BR2_DL_DIR
135           environment variable, then this overrides this configuration item.
137           The default is $(TOPDIR)/dl
139 config BR2_HOST_DIR
140         string "Host dir"
141         default "$(BASE_DIR)/host"
142         help
143           Directory to store all the binary files that are built for the host.
144           This includes the cross compilation toolchain when building the
145           internal buildroot toolchain.
147           The default is $(BASE_DIR)/host
149 menu "Mirrors and Download locations"
151 config BR2_PRIMARY_SITE
152         string "Primary download site"
153         default ""
154         help
155           Primary site to download from. If this option is set then buildroot
156           will try to download package source first from this site and try the
157           default if the file is not found.
158           Valid URIs are URIs recognized by $(WGET) and scp URIs of the form
159           scp://[user@]host:path.
160           NOTE: This works for all packages using the central package
161           infrastructure (generic, autotools, cmake, ...)
163 config BR2_PRIMARY_SITE_ONLY
164         bool "Only allow downloads from primary download site"
165         depends on BR2_PRIMARY_SITE != ""
166         help
167           If this option is enabled, downloads will only be attempted
168           from the primary download site. Other locations, like the
169           package's official download location or the backup download
170           site, will not be considered. Therefore, if the package is
171           not present on the primary site, the download fails.
173           This is useful for project developers who want to ensure
174           that the project can be built even if the upstream tarball
175           locations disappear.
177 if !BR2_PRIMARY_SITE_ONLY
179 config BR2_BACKUP_SITE
180         string "Backup download site"
181         default "http://sources.buildroot.net"
182         help
183           Backup site to download from. If this option is set then buildroot
184           will fall back to download package sources from here if the
185           normal location fails.
187 config BR2_KERNEL_MIRROR
188         string "Kernel.org mirror"
189         default "https://www.kernel.org/pub"
190         help
191           kernel.org is mirrored on a number of servers around the world.
192           The following allows you to select your preferred mirror.
194           Have a look on the kernel.org site for a list of mirrors, then enter
195           the URL to the base directory.  Examples:
197              http://www.XX.kernel.org/pub (XX = country code)
198              http://mirror.aarnet.edu.au/pub/ftp.kernel.org
200 config BR2_GNU_MIRROR
201         string "GNU Software mirror"
202         default "http://ftp.gnu.org/pub/gnu"
203         help
204           GNU has multiple software mirrors scattered around the world.
205           The following allows you to select your preferred mirror.
207           Have a look on the gnu.org site for a list of mirrors, then enter
208           the URL to the base directory.  Examples:
210              http://ftp.gnu.org/pub/gnu
211              http://mirror.aarnet.edu.au/pub/gnu
213 config BR2_DEBIAN_MIRROR
214         string "Debian Software mirror"
215         default "http://ftp.debian.org"
216         help
217           Debian has multiple software mirrors scattered around the world.
218           The following allows you to select your preferred mirror.
220           Usually, just add your country code like XX here:
221           http://ftp.XX.debian.org
223 endif
225 config BR2_LUAROCKS_MIRROR
226         string "LuaRocks mirror"
227         default "http://luarocks.org/repositories/rocks"
228         help
229           LuaRocks repository.
231           See http://luarocks.org
233 config BR2_CPAN_MIRROR
234         string "CPAN mirror (Perl packages)"
235         default "http://search.cpan.org/CPAN"
236         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.
241           The list of mirrors is available at:
242           http://search.cpan.org/mirror
244 endmenu
246 config BR2_JLEVEL
247         int "Number of jobs to run simultaneously (0 for auto)"
248         default "0"
249         help
250           Number of jobs to run simultaneously.  If 0, determine
251           automatically according to number of CPUs on the host
252           system.
254 config 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
259           up future builds. The cache is stored in
260           $HOME/.buildroot-ccache.
262           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.
269 config BR2_CCACHE_DIR
270         string "Compiler cache location"
271         depends on BR2_CCACHE
272         default "$(HOME)/.buildroot-ccache"
273         help
274           Where ccache should store cached files.
276 config BR2_DEPRECATED
277         bool "Show packages that are deprecated or obsolete"
278         help
279           This option hides outdated/obsolete versions of packages.
281 if BR2_DEPRECATED
283 config BR2_DEPRECATED_SINCE_2013_08
284         bool
285         default y
287 config BR2_DEPRECATED_SINCE_2013_11
288         bool
289         default y
291 config BR2_DEPRECATED_SINCE_2014_02
292         bool
293         default y
295 config BR2_DEPRECATED_SINCE_2014_05
296         bool
297         default y
299 endif
301 config BR2_ENABLE_DEBUG
302         bool "build packages with debugging symbols"
303         help
304           Build packages with debugging symbols enabled. All libraries
305           and binaries in the 'staging' directory will have debugging
306           symbols, which allows remote debugging even if libraries and
307           binaries are stripped on the target. Whether libraries and
308           binaries are stripped on the target is controlled by the
309           BR2_STRIP_* options below.
311 if BR2_ENABLE_DEBUG
312 choice
313         prompt "gcc debug level"
314         default BR2_DEBUG_2
315         help
316           Set the debug level for gcc
318 config BR2_DEBUG_1
319         bool "debug level 1"
320         help
321           Debug level 1 produces minimal information, enough
322           for making backtraces in parts of the program that
323           you don't plan to debug. This includes descriptions
324           of functions and external variables, but no information
325           about local variables and no line numbers.
327 config BR2_DEBUG_2
328         bool "debug level 2"
329         help
330           The default gcc debug level is 2
332 config BR2_DEBUG_3
333         bool "debug level 3"
334         help
335           Level 3 includes extra information, such as all the
336           macro definitions present in the program. Some debuggers
337           support macro expansion when you use -g3.
338 endchoice
339 endif
341 choice
342         prompt "strip command for binaries on target"
343         default BR2_STRIP_strip
345 config BR2_STRIP_strip
346         bool "strip"
347         depends on !BR2_PACKAGE_HOST_ELF2FLT
348         help
349           Binaries and libraries in the target filesystem will be
350           stripped using the normal 'strip' command. This allows to
351           save space, mainly by removing debugging symbols. Debugging
352           symbols on the target are needed for native debugging, but
353           not when remote debugging is used.
355 config BR2_STRIP_sstrip
356         bool "sstrip"
357         select BR2_PACKAGE_SSTRIP_HOST
358         depends on !BR2_PACKAGE_HOST_ELF2FLT
359         depends on BR2_DEPRECATED_SINCE_2014_05
360         help
361           Binaries and libraries in the target filesystem will be
362           stripped using the 'sstrip' command, which strips a little
363           bit more than the traditional 'strip' command. This allows to
364           save space, mainly by removing debugging symbols. Debugging
365           symbols on the target are needed for native debugging, but
366           not when remote debugging is used.
368 config BR2_STRIP_none
369         bool "none"
370         help
371           Do not strip binaries and libraries in the target
372           filesystem.
373 endchoice
375 config BR2_STRIP_EXCLUDE_FILES
376         string "executables that should not be stripped"
377         depends on !BR2_STRIP_none
378         default ""
379         help
380           You may specify a space-separated list of binaries and libraries
381           here that should not be stripped on the target.
383 config BR2_STRIP_EXCLUDE_DIRS
384         string "directories that should be skipped when stripping"
385         depends on !BR2_STRIP_none
386         default ""
387         help
388           You may specify a space-separated list of directories that should
389           be skipped when stripping. Binaries and libraries in these
390           directories will not be touched.
391           The directories should be specified relative to the target directory,
392           without leading slash.
394 choice
395         prompt "gcc optimization level"
396         default BR2_OPTIMIZE_S
397         help
398           Set the optimization level for gcc
400 config BR2_OPTIMIZE_0
401         bool "optimization level 0"
402         help
403           Do not optimize. This is the default.
405 config BR2_OPTIMIZE_1
406         bool "optimization level 1"
407         help
408           Optimize. Optimizing compilation takes somewhat more time,
409           and a lot more memory for a large function. With -O, the
410           compiler tries to reduce code size and execution time,
411           without performing any optimizations that take a great deal
412           of compilation time. -O turns on the following optimization
413           flags: -fdefer-pop -fdelayed-branch -fguess-branch-probability
414           -fcprop-registers -floop-optimize -fif-conversion
415           -fif-conversion2 -ftree-ccp -ftree-dce -ftree-dominator-opts
416           -ftree-dse -ftree-ter -ftree-lrs -ftree-sra -ftree-copyrename
417           -ftree-fre -ftree-ch -funit-at-a-time -fmerge-constants
418           -O also turns on -fomit-frame-pointer on machines where doing
419           so does not interfere with debugging.
421 config BR2_OPTIMIZE_2
422         bool "optimization level 2"
423         help
424           Optimize even more. GCC performs nearly all supported optimizations
425           that do not involve a space-speed tradeoff. The compiler does not
426           perform loop unrolling or function inlining when you specify -O2.
427           As compared to -O, this option increases both compilation time and
428           the performance of the generated code. -O2 turns on all optimization
429           flags specified by -O. It also turns on the following optimization
430           flags: -fthread-jumps -fcrossjumping -foptimize-sibling-calls
431           -fcse-follow-jumps -fcse-skip-blocks -fgcse  -fgcse-lm
432           -fexpensive-optimizations -fstrength-reduce -frerun-cse-after-loop
433           -frerun-loop-opt -fcaller-saves -fpeephole2 -fschedule-insns
434           -fschedule-insns2 -fsched-interblock -fsched-spec -fregmove
435           -fstrict-aliasing -fdelete-null-pointer-checks -freorder-blocks
436           -freorder-functions -falign-functions -falign-jumps -falign-loops
437           -falign-labels -ftree-vrp -ftree-pre
438           Please note the warning under -fgcse about invoking -O2 on programs
439           that use computed gotos.
441 config BR2_OPTIMIZE_3
442         bool "optimization level 3"
443         help
444           Optimize yet more. -O3 turns on all optimizations specified by -O2
445           and also turns on the -finline-functions, -funswitch-loops and
446           -fgcse-after-reload options.
448 config BR2_OPTIMIZE_S
449         bool "optimize for size"
450         help
451           Optimize for size. -Os enables all -O2 optimizations that do not
452           typically increase code size. It also performs further optimizations
453           designed to reduce code size. -Os disables the following optimization
454           flags: -falign-functions -falign-jumps -falign-loops -falign-labels
455           -freorder-blocks -freorder-blocks-and-partition -fprefetch-loop-arrays
456           -ftree-vect-loop-version
458 endchoice
460 config BR2_ENABLE_SSP
461         bool "build code with Stack Smashing Protection"
462         depends on BR2_TOOLCHAIN_HAS_SSP
463         help
464           Enable stack smashing protection support using GCCs
465           -fstack-protector-all option.
467           See http://www.linuxfromscratch.org/hints/downloads/files/ssp.txt
468           for details.
470           Note that this requires the toolchain to have SSP
471           support. This is always the case for glibc and eglibc
472           toolchain, but is optional in uClibc toolchains.
474 comment "enabling Stack Smashing Protection requires support in the toolchain"
475         depends on !BR2_TOOLCHAIN_HAS_SSP
477 config BR2_PREFER_STATIC_LIB
478         bool "prefer static libraries"
479         help
480           Where possible, build and use static libraries for the target.
481           This potentially increases your code size and should only be
482           used if you know what you do.
483           The default is to build dynamic libraries and use those on
484           the target filesystem.
486           WARNING: This is highly experimental at the moment.
488 config BR2_PACKAGE_OVERRIDE_FILE
489         string "location of a package override file"
490         default "$(CONFIG_DIR)/local.mk"
491         help
492           A package override file is a short makefile that contains
493           variable definitions of the form <pkg>_OVERRIDE_SRCDIR,
494           which allows to tell Buildroot to use an existing directory
495           as the source directory for a particular package. See the
496           Buildroot documentation for more details on this feature.
498 config BR2_GLOBAL_PATCH_DIR
499         string "global patch directories"
500         help
501           You may specify a space separated list of one or more directories
502           containing global package patches. For a specific version
503           <packageversion> of a specific package <packagename>, patches are
504           applied as follows:
506           First, the default Buildroot patch set for the package is applied
507           from the package's directory in Buildroot.
509           Then for every directory - <global-patch-dir> - that exists in
510           BR2_GLOBAL_PATCH_DIR, if the directory
511           <global-patch-dir>/<packagename>/<packageversion>/ exists, then all
512           *.patch files in this directory will be applied.
514           Otherwise, if the directory <global-patch-dir>/<packagename> exists,
515           then all *.patch files in the directory will be applied.
517 endmenu
519 source "toolchain/Config.in"
521 source "system/Config.in"
523 source "linux/Config.in"
525 source "package/Config.in"
527 source "fs/Config.in"
529 source "boot/Config.in"
531 source "package/Config.in.host"
533 source "Config.in.legacy"
535 menu "User-provided options"
536         depends on BR2_EXTERNAL != "support/dummy-external"
538 source "$BR2_EXTERNAL/Config.in"
540 endmenu