#
-mainmenu "Buildroot2 Configuration"
+mainmenu "Buildroot $BR2_VERSION Configuration"
config BR2_HAVE_DOT_CONFIG
bool
config BR2_VERSION
string
- default "2010.08-rc1-git"
+ option env="BR2_VERSION_FULL"
-source "target/Config.in.arch"
-source "target/device/Config.in"
+config BR2_HOSTARCH
+ string
+ option env="HOSTARCH"
+
+# 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
+
+source "arch/Config.in"
menu "Build options"
config BR2_WGET
string "Wget command"
- default "wget --passive-ftp -nd"
+ default "wget --passive-ftp -nd -t 3"
-config BR2_SVN_CO
- string "Subversion (svn) command to download source tree"
- default "svn co"
+config BR2_SVN
+ string "Subversion (svn) command"
+ default "svn"
-config BR2_SVN_UP
- string "Subversion (svn) command to update source tree"
- default "svn up"
+config BR2_BZR
+ string "Bazaar (bzr) command"
+ default "bzr"
-config BR2_BZR_CO
- string "Bazaar (bzr) command to download source tree"
- default "bzr co"
+config BR2_GIT
+ string "Git command"
+ default "git"
-config BR2_BZR_UP
- string "Bazaar (bzr) command to update source tree"
- default "bzr up"
+config BR2_CVS
+ string "CVS command"
+ default "cvs"
-config BR2_GIT
- string "Git command to download source tree"
- default "git clone"
+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 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 ""
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"
The default is $(TOPDIR)/dl
-config BR2_STAGING_DIR
- string "Toolchain and header file location?"
- default "$(BASE_DIR)/staging"
+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 "http://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
- This is the location where the toolchain will be installed. The
- toolchain will not work if it is moved from this location.
- Therefore, if you wish to package up a uClibc toolchain, it is
- important that is is set to the final location where the toolchain
- will be used.
+ GNU has multiple software mirrors scattered around the world.
+ The following allows you to select your preferred mirror.
- Most people will leave this set to the default value of
- "$(BASE_DIR)/staging".
+ Have a look on the gnu.org site for a list of mirrors, then enter
+ the URL to the base directory. Examples:
-source "target/device/Config.in.mirrors"
+ http://ftp.gnu.org/pub/gnu
+ http://mirror.aarnet.edu.au/pub/gnu
+
+config BR2_DEBIAN_MIRROR
+ string "Debian Software mirror"
+ default "http://ftp.debian.org"
+ help
+ Debian has multiple software mirrors scattered around the world.
+ The following allows you to select your preferred mirror.
+
+ Usually, just add your country code like XX here:
+ http://ftp.XX.debian.org
+
+endif
+
+endmenu
config BR2_JLEVEL
- int "Number of jobs to run simultaneously"
- default "2"
+ 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. 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.
+
+config BR2_CCACHE_DIR
+ string "Compiler cache location"
+ depends on BR2_CCACHE
+ default "$(HOME)/.buildroot-ccache"
help
- Number of jobs to run simultaneously
+ Where ccache should store cached files.
config BR2_DEPRECATED
bool "Show packages that are deprecated or obsolete"
config BR2_ENABLE_DEBUG
bool "build packages with debugging symbols"
- select BR2_PACKAGE_GDB_SERVER
help
- Build packages with debugging symbols
- enabled
+ 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
endif
choice
- prompt "strip"
+ prompt "strip command for binaries on target"
default BR2_STRIP_strip
- help
- Select whether to strip binaries and libraries for the target
- or not.
- strip is the normal strip command
- sstrip is a strip that discards more than the normal strip
- none do not strip (only for debugging!)
config BR2_STRIP_strip
bool "strip"
- depends on !BR2_ENABLE_DEBUG && !BR2_ELF2FLT
+ depends on !BR2_PACKAGE_HOST_ELF2FLT
help
- strip is the normal strip command
+ 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_ENABLE_DEBUG && !BR2_ELF2FLT
+ depends on !BR2_PACKAGE_HOST_ELF2FLT
help
- sstrip is a strip that discards more than the normal strip
+ 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
- none do not strip (only for debugging!)
+ 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
endchoice
+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 "prefer static libraries"
help
config BR2_HAVE_DOCUMENTATION
bool "documentation on the target"
+ # We no longer want to support a toolchain on the target
+ depends on BR2_DEPRECATED
help
Install the documentation, including manual pages and info
pages, on the target.
If you say n here, your target will not contain any
documentation.
-config BR2_HAVE_DEVFILES
- bool "development files in target filesystem"
+config BR2_PACKAGE_OVERRIDE_FILE
+ string "location of a package override file"
+ default "$(TOPDIR)/local.mk"
help
- Install headers and static libraries in the
- target filesystem
+ 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 directory"
+ help
+ You may specify a directory containing global package patches.
+ For a specific version <packageversion> of a specific package
+ <packagename>, patches are applied as follows.
-menu "Advanced"
+ First, the default Buildroot patch set for the package is applied.
-config BR2_CONFIG_CACHE
- bool "Use a central configure cache file"
- default y
- help
- This determines if a central config cache is used by
- packages, reducing the configure time for packages as each
- one caches its findings.
+ If the directory $(BR2_GLOBAL_PATCH_DIR)/<packagename>/<packageversion>
+ exists, then all *.patch files in the directory will be applied.
-endmenu
+ Otherwise, if the directory $(BR2_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 "linux/Config.in"
+source "package/Config.in.host"
+
+source "Config.in.legacy"