| # |
| |
| mainmenu "Buildroot $BR2_VERSION Configuration" |
| |
| config BR2_HAVE_DOT_CONFIG |
| bool |
| default y |
| |
| config BR2_VERSION |
| string |
| option env="BR2_VERSION_FULL" |
| |
| config BR2_HOSTARCH |
| string |
| option env="HOSTARCH" |
| |
| config BR2_EXTERNAL |
| string |
| option env="BR2_EXTERNAL" |
| |
| # Hidden boolean selected by packages in need of Java in order to build |
| # (example: xbmc) |
| config BR2_NEEDS_HOST_JAVA |
| bool |
| |
| # Hidden boolean selected by packages in need of javac in order to build |
| # (example: classpath) |
| config BR2_NEEDS_HOST_JAVAC |
| bool |
| |
| # Hidden boolean selected by packages in need of jar in order to build |
| # (example: classpath) |
| config BR2_NEEDS_HOST_JAR |
| bool |
| |
| # Hidden boolean selected by pre-built packages for x86, when they |
| # need to run on x86-64 machines (example: pre-built external |
| # toolchains, binary tools like SAM-BA, etc.). |
| config BR2_HOSTARCH_NEEDS_IA32_LIBS |
| bool |
| |
| # Hidden boolean selected by packages that need to build 32 bits |
| # binaries with the host compiler, even on 64 bits build machines (e.g |
| # bootloaders). |
| config BR2_HOSTARCH_NEEDS_IA32_COMPILER |
| bool |
| |
| source "arch/Config.in" |
| |
| menu "Build options" |
| |
| menu "Commands" |
| |
| config BR2_WGET |
| string "Wget command" |
| default "wget --passive-ftp -nd -t 3" |
| |
| config BR2_SVN |
| string "Subversion (svn) command" |
| default "svn" |
| |
| config BR2_BZR |
| string "Bazaar (bzr) command" |
| default "bzr" |
| |
| config BR2_GIT |
| string "Git command" |
| default "git" |
| |
| config BR2_CVS |
| string "CVS command" |
| default "cvs" |
| |
| config BR2_LOCALFILES |
| string "Local files retrieval command" |
| default "cp" |
| |
| config BR2_SCP |
| string "Secure copy (scp) command" |
| default "scp" |
| |
| config BR2_SSH |
| string "Secure shell (ssh) command" |
| default "ssh" |
| |
| config BR2_HG |
| string "Mercurial (hg) command" |
| default "hg" |
| |
| config BR2_ZCAT |
| string "zcat command" |
| default "gzip -d -c" |
| help |
| Command to be used to extract a gzip'ed file to stdout. |
| zcat is identical to gunzip -c except that the former may |
| not be available on your system. |
| Default is "gzip -d -c" |
| Other possible values include "gunzip -c" or "zcat". |
| |
| config BR2_BZCAT |
| string "bzcat command" |
| default "bzcat" |
| help |
| Command to be used to extract a bzip2'ed file to stdout. |
| bzcat is identical to bunzip2 -c except that the former may |
| not be available on your system. |
| Default is "bzcat" |
| Other possible values include "bunzip2 -c" or "bzip2 -d -c". |
| |
| config BR2_XZCAT |
| string "xzcat command" |
| default "xzcat" |
| help |
| Command to be used to extract a xz'ed file to stdout. |
| Default is "xzcat" |
| |
| config BR2_TAR_OPTIONS |
| string "Tar options" |
| default "" |
| help |
| Options to pass to tar when extracting the sources. |
| E.g. " -v --exclude='*.svn*'" to exclude all .svn internal files |
| and to be verbose. |
| |
| endmenu |
| |
| config BR2_DEFCONFIG_FROM_ENV |
| string |
| option env="BR2_DEFCONFIG" |
| |
| config BR2_DEFCONFIG |
| string "Location to save buildroot config" |
| default BR2_DEFCONFIG_FROM_ENV if BR2_DEFCONFIG_FROM_ENV != "" |
| default "$(CONFIG_DIR)/defconfig" |
| help |
| When running 'make savedefconfig', the defconfig file will be saved |
| in this location. |
| |
| config BR2_DL_DIR |
| string "Download dir" |
| default "$(TOPDIR)/dl" |
| help |
| Directory to store all the source files that we need to fetch. |
| If the Linux shell environment has defined the BR2_DL_DIR |
| environment variable, then this overrides this configuration item. |
| |
| The default is $(TOPDIR)/dl |
| |
| config BR2_HOST_DIR |
| string "Host dir" |
| default "$(BASE_DIR)/host" |
| help |
| Directory to store all the binary files that are built for the host. |
| This includes the cross compilation toolchain when building the |
| internal buildroot toolchain. |
| |
| The default is $(BASE_DIR)/host |
| |
| menu "Mirrors and Download locations" |
| |
| config BR2_PRIMARY_SITE |
| string "Primary download site" |
| default "" |
| help |
| Primary site to download from. If this option is set then buildroot |
| will try to download package source first from this site and try the |
| default if the file is not found. |
| Valid URIs are URIs recognized by $(WGET) and scp URIs of the form |
| scp://[user@]host:path. |
| NOTE: This works for all packages using the central package |
| infrastructure (generic, autotools, cmake, ...) |
| |
| config BR2_PRIMARY_SITE_ONLY |
| bool "Only allow downloads from primary download site" |
| depends on BR2_PRIMARY_SITE != "" |
| help |
| If this option is enabled, downloads will only be attempted |
| from the primary download site. Other locations, like the |
| package's official download location or the backup download |
| site, will not be considered. Therefore, if the package is |
| not present on the primary site, the download fails. |
| |
| This is useful for project developers who want to ensure |
| that the project can be built even if the upstream tarball |
| locations disappear. |
| |
| if !BR2_PRIMARY_SITE_ONLY |
| |
| config BR2_BACKUP_SITE |
| string "Backup download site" |
| default "http://sources.buildroot.net" |
| help |
| Backup site to download from. If this option is set then buildroot |
| will fall back to download package sources from here if the |
| normal location fails. |
| |
| config BR2_KERNEL_MIRROR |
| string "Kernel.org mirror" |
| default "https://www.kernel.org/pub" |
| help |
| kernel.org is mirrored on a number of servers around the world. |
| The following allows you to select your preferred mirror. |
| |
| Have a look on the kernel.org site for a list of mirrors, then enter |
| the URL to the base directory. Examples: |
| |
| http://www.XX.kernel.org/pub (XX = country code) |
| http://mirror.aarnet.edu.au/pub/ftp.kernel.org |
| |
| config BR2_GNU_MIRROR |
| string "GNU Software mirror" |
| default "http://ftp.gnu.org/pub/gnu" |
| help |
| GNU has multiple software mirrors scattered around the world. |
| The following allows you to select your preferred mirror. |
| |
| Have a look on the gnu.org site for a list of mirrors, then enter |
| the URL to the base directory. Examples: |
| |
| http://ftp.gnu.org/pub/gnu |
| http://mirror.aarnet.edu.au/pub/gnu |
| |
| endif |
| |
| config BR2_LUAROCKS_MIRROR |
| string "LuaRocks mirror" |
| default "http://rocks.moonscript.org" |
| help |
| LuaRocks repository. |
| |
| See http://luarocks.org |
| |
| config BR2_CPAN_MIRROR |
| string "CPAN mirror (Perl packages)" |
| default "http://cpan.metacpan.org" |
| help |
| CPAN (Comprehensive Perl Archive Network) is a repository |
| of Perl packages. It has multiple software mirrors scattered |
| around the world. This option allows you to select a mirror. |
| |
| The list of mirrors is available at: |
| http://search.cpan.org/mirror |
| |
| endmenu |
| |
| config BR2_JLEVEL |
| int "Number of jobs to run simultaneously (0 for auto)" |
| default "0" |
| help |
| Number of jobs to run simultaneously. If 0, determine |
| automatically according to number of CPUs on the host |
| system. |
| |
| config BR2_CCACHE |
| bool "Enable compiler cache" |
| help |
| This option will enable the use of ccache, a compiler |
| cache. It will cache the result of previous builds to speed |
| up future builds. By default, the cache is stored in |
| $HOME/.buildroot-ccache. |
| |
| Note that Buildroot does not try to invalidate the cache |
| contents when the compiler changes in an incompatible |
| way. Therefore, if you make a change to the compiler version |
| and/or configuration, you are responsible for purging the |
| ccache cache by removing the $HOME/.buildroot-ccache |
| directory. |
| |
| if BR2_CCACHE |
| |
| config BR2_CCACHE_DIR |
| string "Compiler cache location" |
| default "$(HOME)/.buildroot-ccache" |
| help |
| Where ccache should store cached files. |
| |
| config BR2_CCACHE_INITIAL_SETUP |
| string "Compiler cache initial setup" |
| help |
| Initial ccache settings to apply, such as --max-files or --max-size. |
| |
| For example, if your project is known to require more space than the |
| default max cache size, then you might want to increase the cache size |
| to a suitable amount using the -M (--max-size) option. |
| |
| The string you specify here is passed verbatim to ccache. Refer to |
| ccache documentation for more details. |
| |
| These initial settings are applied after ccache has been compiled. |
| |
| endif |
| |
| config BR2_DEPRECATED |
| bool "Show options and packages that are deprecated or obsolete" |
| help |
| This option shows outdated/obsolete versions of packages and |
| options that are otherwise hidden. |
| |
| if BR2_DEPRECATED |
| |
| config BR2_DEPRECATED_SINCE_2013_11 |
| bool |
| default y |
| |
| config BR2_DEPRECATED_SINCE_2014_02 |
| bool |
| default y |
| |
| config BR2_DEPRECATED_SINCE_2014_05 |
| bool |
| default y |
| |
| config BR2_DEPRECATED_SINCE_2014_08 |
| bool |
| default y |
| |
| endif |
| |
| config BR2_ENABLE_DEBUG |
| bool "build packages with debugging symbols" |
| help |
| Build packages with debugging symbols enabled. All libraries |
| and binaries in the 'staging' directory will have debugging |
| symbols, which allows remote debugging even if libraries and |
| binaries are stripped on the target. Whether libraries and |
| binaries are stripped on the target is controlled by the |
| BR2_STRIP_* options below. |
| |
| if BR2_ENABLE_DEBUG |
| choice |
| prompt "gcc debug level" |
| default BR2_DEBUG_2 |
| help |
| Set the debug level for gcc |
| |
| config BR2_DEBUG_1 |
| bool "debug level 1" |
| help |
| Debug level 1 produces minimal information, enough |
| for making backtraces in parts of the program that |
| you don't plan to debug. This includes descriptions |
| of functions and external variables, but no information |
| about local variables and no line numbers. |
| |
| config BR2_DEBUG_2 |
| bool "debug level 2" |
| help |
| The default gcc debug level is 2 |
| |
| config BR2_DEBUG_3 |
| bool "debug level 3" |
| help |
| Level 3 includes extra information, such as all the |
| macro definitions present in the program. Some debuggers |
| support macro expansion when you use -g3. |
| endchoice |
| endif |
| |
| choice |
| prompt "strip command for binaries on target" |
| default BR2_STRIP_strip |
| |
| config BR2_STRIP_strip |
| bool "strip" |
| depends on !BR2_PACKAGE_HOST_ELF2FLT |
| help |
| Binaries and libraries in the target filesystem will be |
| stripped using the normal 'strip' command. This allows to |
| save space, mainly by removing debugging symbols. Debugging |
| symbols on the target are needed for native debugging, but |
| not when remote debugging is used. |
| |
| config BR2_STRIP_sstrip |
| bool "sstrip" |
| select BR2_PACKAGE_SSTRIP_HOST |
| depends on !BR2_PACKAGE_HOST_ELF2FLT |
| depends on BR2_DEPRECATED_SINCE_2014_05 |
| help |
| Binaries and libraries in the target filesystem will be |
| stripped using the 'sstrip' command, which strips a little |
| bit more than the traditional 'strip' command. This allows to |
| save space, mainly by removing debugging symbols. Debugging |
| symbols on the target are needed for native debugging, but |
| not when remote debugging is used. |
| |
| config BR2_STRIP_none |
| bool "none" |
| help |
| Do not strip binaries and libraries in the target |
| filesystem. |
| endchoice |
| |
| config BR2_STRIP_EXCLUDE_FILES |
| string "executables that should not be stripped" |
| depends on !BR2_STRIP_none |
| default "" |
| help |
| You may specify a space-separated list of binaries and libraries |
| here that should not be stripped on the target. |
| |
| config BR2_STRIP_EXCLUDE_DIRS |
| string "directories that should be skipped when stripping" |
| depends on !BR2_STRIP_none |
| default "" |
| help |
| You may specify a space-separated list of directories that should |
| be skipped when stripping. Binaries and libraries in these |
| directories will not be touched. |
| The directories should be specified relative to the target directory, |
| without leading slash. |
| |
| choice |
| prompt "gcc optimization level" |
| default BR2_OPTIMIZE_S |
| help |
| Set the optimization level for gcc |
| |
| config BR2_OPTIMIZE_0 |
| bool "optimization level 0" |
| help |
| Do not optimize. This is the default. |
| |
| config BR2_OPTIMIZE_1 |
| bool "optimization level 1" |
| help |
| Optimize. Optimizing compilation takes somewhat more time, |
| and a lot more memory for a large function. With -O, the |
| compiler tries to reduce code size and execution time, |
| without performing any optimizations that take a great deal |
| of compilation time. -O turns on the following optimization |
| flags: -fdefer-pop -fdelayed-branch -fguess-branch-probability |
| -fcprop-registers -floop-optimize -fif-conversion |
| -fif-conversion2 -ftree-ccp -ftree-dce -ftree-dominator-opts |
| -ftree-dse -ftree-ter -ftree-lrs -ftree-sra -ftree-copyrename |
| -ftree-fre -ftree-ch -funit-at-a-time -fmerge-constants |
| -O also turns on -fomit-frame-pointer on machines where doing |
| so does not interfere with debugging. |
| |
| config BR2_OPTIMIZE_2 |
| bool "optimization level 2" |
| help |
| Optimize even more. GCC performs nearly all supported optimizations |
| that do not involve a space-speed tradeoff. The compiler does not |
| perform loop unrolling or function inlining when you specify -O2. |
| As compared to -O, this option increases both compilation time and |
| the performance of the generated code. -O2 turns on all optimization |
| flags specified by -O. It also turns on the following optimization |
| flags: -fthread-jumps -fcrossjumping -foptimize-sibling-calls |
| -fcse-follow-jumps -fcse-skip-blocks -fgcse -fgcse-lm |
| -fexpensive-optimizations -fstrength-reduce -frerun-cse-after-loop |
| -frerun-loop-opt -fcaller-saves -fpeephole2 -fschedule-insns |
| -fschedule-insns2 -fsched-interblock -fsched-spec -fregmove |
| -fstrict-aliasing -fdelete-null-pointer-checks -freorder-blocks |
| -freorder-functions -falign-functions -falign-jumps -falign-loops |
| -falign-labels -ftree-vrp -ftree-pre |
| Please note the warning under -fgcse about invoking -O2 on programs |
| that use computed gotos. |
| |
| config BR2_OPTIMIZE_3 |
| bool "optimization level 3" |
| help |
| Optimize yet more. -O3 turns on all optimizations specified by -O2 |
| and also turns on the -finline-functions, -funswitch-loops and |
| -fgcse-after-reload options. |
| |
| config BR2_OPTIMIZE_S |
| bool "optimize for size" |
| help |
| Optimize for size. -Os enables all -O2 optimizations that do not |
| typically increase code size. It also performs further optimizations |
| designed to reduce code size. -Os disables the following optimization |
| flags: -falign-functions -falign-jumps -falign-loops -falign-labels |
| -freorder-blocks -freorder-blocks-and-partition -fprefetch-loop-arrays |
| -ftree-vect-loop-version |
| |
| endchoice |
| |
| config BR2_GOOGLE_BREAKPAD_ENABLE |
| bool "Enable google-breakpad support" |
| select BR2_PACKAGE_GOOGLE_BREAKPAD |
| depends on BR2_INSTALL_LIBSTDCPP |
| depends on BR2_TOOLCHAIN_USES_GLIBC |
| depends on BR2_PACKAGE_GOOGLE_BREAKPAD_ARCH_SUPPORTS |
| help |
| This option will enable the use of google breakpad, a |
| library and tool suite that allows you to distribute an |
| application to users with compiler-provided debugging |
| information removed, record crashes in compact "minidump" |
| files, send them back to your server and produce C and C++ |
| stack traces from these minidumps. Breakpad can also write |
| minidumps on request for programs that have not crashed. |
| |
| if BR2_GOOGLE_BREAKPAD_ENABLE |
| |
| config BR2_GOOGLE_BREAKPAD_INCLUDE_FILES |
| string "List of executables and libraries to extract symbols from" |
| default "" |
| help |
| You may specify a space-separated list of binaries and |
| libraries with full paths relative to $(TARGET_DIR) of which |
| debug symbols will be dumped for further use with google |
| breakpad. |
| |
| A directory structure that can be used by minidump-stackwalk |
| will be created at: |
| |
| $(STAGING_DIR)/usr/share/google-breakpad-symbols |
| |
| endif |
| |
| config BR2_ENABLE_SSP |
| bool "build code with Stack Smashing Protection" |
| depends on BR2_TOOLCHAIN_HAS_SSP |
| help |
| Enable stack smashing protection support using GCCs |
| -fstack-protector-all option. |
| |
| See http://www.linuxfromscratch.org/hints/downloads/files/ssp.txt |
| for details. |
| |
| Note that this requires the toolchain to have SSP |
| support. This is always the case for glibc and eglibc |
| toolchain, but is optional in uClibc toolchains. |
| |
| comment "enabling Stack Smashing Protection requires support in the toolchain" |
| depends on !BR2_TOOLCHAIN_HAS_SSP |
| |
| config BR2_PREFER_STATIC_LIB |
| bool "build statically linked applications, no dynamic libraries" |
| help |
| Build all applications for the target statically linked. |
| This potentially increases your filesystem size and should only be |
| used if you know what you do. |
| |
| Note that some applications cannot be build statically and so are |
| intentionally disabled. |
| |
| The default (if this option is disabled) is to build dynamic |
| libraries and dynamically link applications to use those on the |
| target filesystem. |
| |
| |
| config BR2_PACKAGE_OVERRIDE_FILE |
| string "location of a package override file" |
| default "$(CONFIG_DIR)/local.mk" |
| help |
| A package override file is a short makefile that contains |
| variable definitions of the form <pkg>_OVERRIDE_SRCDIR, |
| which allows to tell Buildroot to use an existing directory |
| as the source directory for a particular package. See the |
| Buildroot documentation for more details on this feature. |
| |
| config BR2_GLOBAL_PATCH_DIR |
| string "global patch directories" |
| help |
| You may specify a space separated list of one or more directories |
| containing global package patches. For a specific version |
| <packageversion> of a specific package <packagename>, patches are |
| applied as follows: |
| |
| First, the default Buildroot patch set for the package is applied |
| from the package's directory in Buildroot. |
| |
| Then for every directory - <global-patch-dir> - that exists in |
| BR2_GLOBAL_PATCH_DIR, if the directory |
| <global-patch-dir>/<packagename>/<packageversion>/ exists, then all |
| *.patch files in this directory will be applied. |
| |
| Otherwise, if the directory <global-patch-dir>/<packagename> exists, |
| then all *.patch files in the directory will be applied. |
| |
| endmenu |
| |
| source "toolchain/Config.in" |
| |
| source "system/Config.in" |
| |
| source "linux/Config.in" |
| |
| source "package/Config.in" |
| |
| source "fs/Config.in" |
| |
| source "boot/Config.in" |
| |
| source "package/Config.in.host" |
| |
| source "Config.in.legacy" |
| |
| menu "User-provided options" |
| depends on BR2_EXTERNAL != "support/dummy-external" |
| |
| source "$BR2_EXTERNAL/Config.in" |
| |
| endmenu |