mainmenu "ArtInChip Luban SDK Configuration" config BR2_HAVE_DOT_CONFIG bool default y config BR2_JLEVEL int # "Number of jobs to run simultaneously (0 for auto)" default "0" if BR2_MAKE_WITH_MULTI_THREAD default "1" if !BR2_MAKE_WITH_MULTI_THREAD help Number of jobs to run simultaneously. If 0, determine automatically according to number of CPUs on the host system. config BR2_HOSTARCH string option env="HOSTARCH" config BR2_BASE_DIR string option env="BASE_DIR" # br2-external paths definitions source "$BR2_BASE_DIR/.br2-external.in.paths" config BR2_DEFCONFIG_FROM_ENV string option env="BR2_DEFCONFIG" config BR2_DEFCONFIG string 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 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 directory is organized with a subdirectory for each package. Each package has its own $(LIBFOO_DL_DIR) variable that can be used to find the correct path. The default is $(TOPDIR)/dl config BR2_PACKAGES_DIR string default "$(TOPDIR)/source" config BR2_PREBUILT_DIR string default "$(TOPDIR)/prebuilt" config BR2_HOST_DIR string 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 config BR2_STATIC_LIBS bool # "static only" default y if !BR2_BINFMT_SUPPORTS_SHARED help Build and use only static libraries. No shared libraries will be installed on the target. This potentially increases your code size and should only be used if you know what you are doing. Note that some packages may not be available when this option is enabled, due to their need for dynamic library support. config BR2_SHARED_LIBS bool # "shared only" default n depends on BR2_BINFMT_SUPPORTS_SHARED help Build and use only shared libraries. This is the recommended solution as it saves space and build time. config BR2_SHARED_STATIC_LIBS bool # "both static and shared" default y depends on BR2_BINFMT_SUPPORTS_SHARED help Build both shared and static libraries, but link executables dynamically. While building both shared and static libraries take more time and more disk space, having static libraries may be useful to link some of the applications statically. config BR2_WGET string # "Wget command" default "wget --passive-ftp -nd -t 3" config BR2_SVN string # "Subversion (svn) command" default "svn --non-interactive" 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_OPENSSH string # "OpenSSH " 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_LZCAT string # "lzcat command" default "lzip -d -c" help Command to be used to extract a lzip'ed file to stdout. Default is "lzip -d -c" 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. source package/arch/Config.in source package/toolchain/Config.in config BR2_HOST_GCC_AT_LEAST_4_9 bool default y config BR2_HOST_GCC_AT_LEAST_5 bool default y select BR2_HOST_GCC_AT_LEAST_4_9 config BR2_HOST_GCC_AT_LEAST_6 bool default y select BR2_HOST_GCC_AT_LEAST_5 menu "Build options" config BR2_MAKE_WITH_MULTI_THREAD bool "Make with multi-jobs (make -j0)" default y help Select it to to set make -j0, the number of jobs is determined automatically according to number of CPUs on the host system. Otherwise it make with single job. 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. 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_G bool "optimize for debugging" depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 help Optimize for debugging. This enables optimizations that do not interfere with debugging. It should be the optimization level of choice for the standard edit-compile-debug cycle, offering a reasonable level of optimization while maintaining fast compilation and a good debugging experience. 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 This is the default. config BR2_OPTIMIZE_FAST bool "optimize for fast (may break packages!)" depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_6 help Optimize for fast. Disregard strict standards compliance. -Ofast enables all -O3 optimizations. It also enables optimizations that are not valid for all standard-compliant programs, so be careful, as it may break some packages. It turns on -ffast-math and the Fortran-specific -fstack-arrays, unless -fmax-stack-var-size is specified, and -fno-protect-parens. endchoice 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 config BR2_STRIP_strip bool "strip target binaries" default y 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_EXCLUDE_FILES string "executables that should not be stripped" default "" depends on BR2_STRIP_strip 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" default "" depends on BR2_STRIP_strip 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. config BR2_FORCE_BUILD_FROM_SOURCE bool "Force all packages build from source code" default n config BR2_GENERATE_PREBUILT_TARBALL bool "Generate prebuilt tarball while building package from source code" default n endmenu source package/system/Config.in source package/fs/Config.in menu "Bootloader" source package/opensbi/Config.in source package/uboot/Config.in endmenu source package/linux/Config.in source package/artinchip/Config.in source package/vendor/Config.in source package/third-party/Config.in source package/third-party/Config.in.host source package/firmware/Config.in # br2-external menus definitions source "$BR2_BASE_DIR/.br2-external.in.menus"