X-Git-Url: https://git.archive.openwrt.org/?p=openwrt.git;a=blobdiff_plain;f=Config.in;h=0268cdd8e47e0bb09648891e08eaf96e67b2cd31;hp=ddf02614b3222145f59c6c7565bf7e29615cf66e;hb=ef18e846dcfb55f39794bc510da4f85da85d5452;hpb=ba9de6d88467fe9a2c50263468ae587e924f355e diff --git a/Config.in b/Config.in index ddf02614b3..0268cdd8e4 100644 --- a/Config.in +++ b/Config.in @@ -1,4 +1,4 @@ -# Copyright (C) 2006-2010 OpenWrt.org +# Copyright (C) 2006-2012 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -6,6 +6,10 @@ mainmenu "OpenWrt Configuration" +config MODULES + bool + default y + config HAVE_DOT_CONFIG bool default y @@ -25,7 +29,7 @@ menu "Target Images" default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ar71xx default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ramips default TARGET_INITRAMFS_COMPRESSION_NONE - depends TARGET_ROOTFS_INITRAMFS + depends on TARGET_ROOTFS_INITRAMFS help Select ramdisk compression. @@ -74,35 +78,36 @@ menu "Target Images" config TARGET_ROOTFS_EXT4FS bool "ext4" default y if USES_EXT4 - depends !TARGET_ROOTFS_INITRAMFS + depends on !TARGET_ROOTFS_INITRAMFS help Ext4 file system with some free space for uml images config TARGET_ROOTFS_ISO bool "iso" default n - depends TARGET_ROOTFS_INITRAMFS && TARGET_x86 + depends on TARGET_x86_generic + depends on !TARGET_ROOTFS_INITRAMFS help Create some bootable ISO image config TARGET_ROOTFS_JFFS2 bool "jffs2" default y if USES_JFFS2 - depends !TARGET_ROOTFS_INITRAMFS + depends on !TARGET_ROOTFS_INITRAMFS help Build a jffs2 root filesystem config TARGET_ROOTFS_SQUASHFS bool "squashfs" default y if USES_SQUASHFS - depends !TARGET_ROOTFS_INITRAMFS + depends on !TARGET_ROOTFS_INITRAMFS help Build a squashfs-lzma root filesystem config TARGET_ROOTFS_UBIFS bool "ubifs" default y if USES_UBIFS - depends !TARGET_ROOTFS_INITRAMFS && USES_UBIFS + depends on !TARGET_ROOTFS_INITRAMFS && USES_UBIFS help Build a ubifs root filesystem @@ -112,18 +117,25 @@ menu "Target Images" config TARGET_ROOTFS_PARTSIZE int "Root filesystem partition size (in MB)" - depends X86_GRUB_IMAGES || TARGET_ROOTFS_EXT4FS || TARGET_rb532 + depends on X86_GRUB_IMAGES || TARGET_ROOTFS_EXT4FS || TARGET_rb532 default 48 help Allows you to change the root filesystem partition size config TARGET_ROOTFS_MAXINODE int "Maximum number of inodes in root filesystem" - depends TARGET_ROOTFS_EXT4FS + depends on TARGET_ROOTFS_EXT4FS default 6000 help Allows you to change the maximum number of inodes in the root filesystem + config TARGET_ROOTFS_RESERVED_PCT + int "Percentage of reserved blocks in root filesystem" + depends on TARGET_ROOTFS_EXT4FS + default 0 + help + Allows you to change the percentage of reserved blocks in the root filesystem + endmenu menu "Global build settings" @@ -153,6 +165,13 @@ menu "Global build settings" When this option is enabled, packages are built with the full versions of iconv and GNU gettext instead of the default OpenWrt stubs. If uClibc is used, it is also built with locale support. + config BUILD_STATIC_TOOLS + default n + bool "Attempt to link host utilities statically" + help + Linking host utilities like sed or firmware-utils statically increases the portability of the + generated ImageBuilder and SDK tarballs, however it may fail on some Linux distributions. + config SHADOW_PASSWORDS bool prompt "Enable shadow password support" @@ -186,16 +205,21 @@ menu "Global build settings" debugging files into. Enable this option to be able to read and write to these files. + config KERNEL_PERF_EVENTS + bool + default n + config KERNEL_PROFILING bool "Compile the kernel with profiling enabled" default n + select KERNEL_PERF_EVENTS help Enable the extended profiling support mechanisms used by profilers such as OProfile. config KERNEL_KALLSYMS bool "Compile the kernel with symbol table information" - default n + default y help This will give you more information in stack traces from kernel oopses @@ -214,7 +238,7 @@ menu "Global build settings" config KERNEL_DEBUG_INFO bool "Compile the kernel with debug information" - default n + default y select KERNEL_DEBUG_KERNEL help This will compile your kernel and modules with debug information. @@ -248,12 +272,20 @@ menu "Global build settings" bool "Compile the kernel with asynchronous IO support" default n + config KERNEL_DIRECT_IO + bool "Compile the kernel with direct IO support" + default n + config KERNEL_MAGIC_SYSRQ bool "Compile the kernel with SysRq support" default y + config KERNEL_COREDUMP + bool + config KERNEL_ELF_CORE bool "Enable process core dump support" + select KERNEL_COREDUMP default y config KERNEL_PROVE_LOCKING @@ -265,6 +297,156 @@ menu "Global build settings" bool "Enable printk timestamps" default y + config KERNEL_RELAY + bool + + # + # CGROUP support symbols + # + + config KERNEL_FREEZER + bool + default y if KERNEL_CGROUP_FREEZER + depends on KERNEL_CGROUPS + + config KERNEL_CGROUP_FREEZER + bool + depends on KERNEL_CGROUPS + + config KERNEL_CGROUP_DEVICE + bool + depends on KERNEL_CGROUPS + + config KERNEL_CPUSETS + bool + default y if KERNEL_CGROUP_CPUACCT + depends on KERNEL_CGROUPS + + config KERNEL_PROC_PID_CPUSET + bool + default y if KERNEL_CGROUP_CPUACCT + depends on KERNEL_CGROUPS + + config KERNEL_CGROUP_CPUACCT + bool + depends on KERNEL_CGROUPS + + config KERNEL_RESOURCE_COUNTERS + bool + default y if KERNEL_CGROUP_MEM_RES_CTLR + depends on KERNEL_CGROUPS + + config KERNEL_CGROUP_MEM_RES_CTLR + bool + depends on KERNEL_CGROUPS + + config KERNEL_CGROUP_MEM_RES_CTLR_SWAP + bool + depends on KERNEL_CGROUPS + + config KERNEL_CGROUP_MEM_RES_CTLR_SWAP_ENABLED + bool + depends on KERNEL_CGROUPS + + config KERNEL_CGROUP_MEM_RES_CTLR_KMEM + bool + depends on KERNEL_CGROUPS + + config KERNEL_CGROUP_PERF + bool + depends on KERNEL_CGROUPS + + config KERNEL_CFS_BANDWIDTH + bool + default y if KERNEL_FAIR_GROUP_SCHED + depends on KERNEL_CGROUP_SCHED + + config KERNEL_FAIR_GROUP_SCHED + bool + default y if KERNEL_CGROUP_SCHED + depends on KERNEL_CGROUP_SCHED + + config KERNEL_RT_GROUP_SCHED + bool + default y if KERNEL_CGROUP_SCHED + depends on KERNEL_CGROUP_SCHED + + config KERNEL_CGROUP_SCHED + bool + depends on KERNEL_CGROUPS + + config KERNEL_NET_CLS_CGROUP + bool + depends on KERNEL_CGROUPS + + config KERNEL_NETPRIO_CGROUP + bool + depends on KERNEL_CGROUPS + + config KERNEL_BLK_CGROUP + bool + depends on KERNEL_CGROUPS + + config KERNEL_DEBUG_BLK_CGROUP + bool + default n if KERNEL_CGROUPS + depends on KERNEL_CGROUPS + + config KERNEL_CGROUPS + bool "Enable kernel cgroups" + default n + select KERNEL_CGROUP_FREEZER + select KERNEL_CGROUP_DEVICE + select KERNEL_CGROUP_CPUACCT + select KERNEL_CGROUP_MEM_RES_CTLR + select KERNEL_CGROUP_MEM_RES_CTLR_SWAP + select KERNEL_CGROUP_MEM_RES_CTLR_SWAP_ENABLED + select KERNEL_CGROUP_MEM_RES_CTLR_KMEM + select KERNEL_CGROUP_PERF + select KERNEL_CGROUP_SCHED + select KERNEL_NET_CLS_CGROUP + select KERNEL_NETPRIO_CGROUP + select KERNEL_BLK_CGROUP + + # + # Namespace support symbols + # + + config KERNEL_UTS_NS + bool + depends on KERNEL_NAMESPACES + + config KERNEL_IPC_NS + bool + depends on KERNEL_NAMESPACES + + config KERNEL_USER_NS + bool + depends on KERNEL_NAMESPACES + + config KERNEL_PID_NS + bool + depends on KERNEL_NAMESPACES + + config KERNEL_NET_NS + bool + depends on KERNEL_NAMESPACES + + config KERNEL_DEVPTS_MULTIPLE_INSTANCES + bool + depends on KERNEL_NAMESPACES + + config KERNEL_NAMESPACES + bool "Enable kernel namespaces" + default n + select KERNEL_UTS_NS + select KERNEL_IPC_NS + select KERNEL_USER_NS + select KERNEL_PID_NS + select KERNEL_NET_NS + select KERNEL_DEVPTS_MULTIPLE_INSTANCES + + comment "Package build options" config DEBUG @@ -284,32 +466,38 @@ menu "Global build settings" config PKG_BUILD_PARALLEL bool prompt "Compile certain packages parallelized" - default n + default y help This adds a -jX option to certain packages that are known to - behave well for parallel build. + behave well for parallel build. By default the package make processes + use the main jobserver, in which case this option only takes effect + when you add -jX to the make command. - Note that this may overcommit CPU resources depending on the + If you are unsure, select N. + + config PKG_BUILD_USE_JOBSERVER + bool + prompt "Use top-level make jobserver for packages" + depends on PKG_BUILD_PARALLEL + default y + help + This passes the main make process jobserver fds to package builds, + enabling full parallelization across different packages + + Note that disabling this may overcommit CPU resources depending on the -j level of the main make process, the number of package submake jobs selected below and the number of actual CPUs present. Example: If the main make is passed a -j4 and the submake -j is also set to 4, we may end up with 16 parallel make processes in the worst case. - You get maximum build performance, if you set the package build - jobs to the number of CPUs (cores) available and also start the main - make process with -jX, where X is the number of CPUs (cores). - However, make sure you have enough RAM available for - NR_CPUS to the power of two (NR_CPUS^2) make jobs. - - If you are unsure, select N. config PKG_BUILD_JOBS int prompt "Number of package submake jobs (2-512)" range 2 512 default 2 - depends on PKG_BUILD_PARALLEL + depends on PKG_BUILD_PARALLEL && !PKG_BUILD_USE_JOBSERVER help The number of jobs (-jX) to pass to packages submake. @@ -317,6 +505,7 @@ menu "Global build settings" bool prompt "Parallelize the default package build rule (May break build)" depends on PKG_BUILD_PARALLEL + depends on BROKEN default n help Always set the default package build rules to parallel build. @@ -328,25 +517,12 @@ menu "Global build settings" Only say Y, if you don't mind fixing broken packages. Before reporting build bugs, set this to N and re-run the build. - config TOOLCHAIN_PARALLEL - bool - prompt "Parallelize the toolchain build (May break build)" - depends on PKG_BUILD_PARALLEL - default n - help - Build the toolchain with parallel make jobs. - This speeds up the toolchain build on SMP machines, but may - break the build for certain toolchain versions. - - If you say Y, toolchain build might break. - Before reporting build bugs, set this to N and re-run the build. - comment "Stripping options" choice prompt "Binary stripping method" default USE_STRIP if EXTERNAL_TOOLCHAIN - default USE_STRIP if USE_GLIBC || USE_EGLIBC + default USE_STRIP if USE_GLIBC || USE_EGLIBC || USE_MUSL default USE_SSTRIP help Select the binary stripping method you wish to use. @@ -364,9 +540,9 @@ menu "Global build settings" config USE_SSTRIP bool "sstrip" - depends !DEBUG - depends !USE_GLIBC - depends !USE_EGLIBC + depends on !DEBUG + depends on !USE_GLIBC + depends on !USE_EGLIBC help This will install binaries stripped using sstrip endchoice @@ -374,7 +550,7 @@ menu "Global build settings" config STRIP_ARGS string prompt "Strip arguments" - depends USE_STRIP + depends on USE_STRIP default "--strip-unneeded --remove-section=.comment --remove-section=.note" if DEBUG default "--strip-all" help @@ -395,6 +571,22 @@ menu "Global build settings" Note that this will make the system libraries incompatible with most of the packages that are not selected during the build process + if INSTALL_LIBSTDCPP + choice + prompt "Preferred standard C++ library" + default USE_LIBSTDCXX if USE_EGLIBC + default USE_UCLIBCXX + help + Select the preferred standard C++ library for all packages that support this. + + config USE_UCLIBCXX + bool "uClibc++" + + config USE_LIBSTDCXX + bool "libstdc++" + endchoice + endif + endmenu menuconfig DEVEL @@ -484,7 +676,7 @@ menuconfig TARGET_OPTIONS config SOFT_FLOAT bool "Use software floating point by default" if TARGET_OPTIONS default y - depends on (arm || armeb || powerpc || mipsel || mips) && !HAS_FPU + depends on (arm || armeb || powerpc || mipsel || mips || mips64el || mips64) && !HAS_FPU help If your target CPU does not have a Floating Point Unit (FPU) or a kernel FPU emulator, but you still wish to support floating point @@ -493,6 +685,17 @@ menuconfig TARGET_OPTIONS Most people will answer N. + config USE_MIPS16 + bool "Build packages with MIPS16 instructions" if TARGET_OPTIONS + depends on HAS_MIPS16 + help + If your target CPU does support the MIPS16 instruction set + and you want to use it for packages, enable this option. + MIPS16 produces smaller binaries thus reducing pressure on + caches and TLB. + + Most people will answer N. + source "toolchain/Config.in" source "target/imagebuilder/Config.in"