hotplug2: compile in the worker module statically, saves >20k uncompressed
[openwrt/svn-archive/archive.git] / Config.in
index df8bc993cccec67e47e36b2fd30ed0b855dd0eab..ae1ba9ffe727f7c19e6d27958a0f5283bf5e9d0c 100644 (file)
--- a/Config.in
+++ b/Config.in
@@ -1,4 +1,4 @@
-# Copyright (C) 2006-2007 OpenWrt.org
+# Copyright (C) 2006-2009 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -15,11 +15,36 @@ source "target/Config.in"
 menu "Target Images"
        config TARGET_ROOTFS_INITRAMFS
                bool "ramdisk"
-               default n
+               default y if USES_INITRAMFS
                depends LINUX_2_6
                help
                  Embed the rootfs into the kernel (initramfs)
 
+       choice
+               prompt "ramdisk compression"
+               depends TARGET_ROOTFS_INITRAMFS
+               depends !LINUX_2_6_21
+               depends !LINUX_2_6_25
+               depends !LINUX_2_6_27
+               depends !LINUX_2_6_28
+               default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ar71xx
+               default TARGET_INITRAMFS_COMPRESSION_NONE
+               help
+                 Select ramdisk compression.
+
+               config TARGET_INITRAMFS_COMPRESSION_NONE
+                       bool "NONE"
+
+               config TARGET_INITRAMFS_COMPRESSION_GZIP
+                       bool "GZIP"
+
+               config TARGET_INITRAMFS_COMPRESSION_BZIP2
+                       bool "BZIP2"
+
+               config TARGET_INITRAMFS_COMPRESSION_LZMA
+                       bool "LZMA"
+       endchoice
+
        config TARGET_ROOTFS_JFFS2
                bool "jffs2"
                default y if USES_JFFS2
@@ -40,14 +65,14 @@ menu "Target Images"
                depends !TARGET_ROOTFS_INITRAMFS
                help
                  Build a compressed tar archive of the the root filesystem
-                 
+
        config TARGET_ROOTFS_CPIOGZ
                bool "cpiogz"
                default y if USES_CPIOGZ
                depends !TARGET_ROOTFS_INITRAMFS
                help
                  Build a compressed cpio archive of the the root filesystem
-                 
+
        config TARGET_ROOTFS_EXT2FS
                bool "ext2"
                default y if USES_EXT2
@@ -55,12 +80,12 @@ menu "Target Images"
                help
                  Ext2 file system with some free space for uml images
 
-       config TARGET_ROOTFS_ISO 
-               bool "iso" 
-               default n 
-               depends TARGET_ROOTFS_INITRAMFS && TARGET_x86 
-               help 
-                 Create some bootable ISO image 
+       config TARGET_ROOTFS_ISO
+               bool "iso"
+               default n
+               depends TARGET_ROOTFS_INITRAMFS && TARGET_x86
+               help
+                 Create some bootable ISO image
 
 comment "Image Options"
 
@@ -69,70 +94,184 @@ source "target/linux/*/image/Config.in"
     config TARGET_ROOTFS_FSPART
         int "Filesystem part size (in MB)"
         depends X86_GRUB_IMAGES || TARGET_ROOTFS_EXT2FS || TARGET_rb532 || TARGET_olpc
-        default 16
+        default 48
         help
             Allows you to change the filesystem partition size
 
     config TARGET_ROOTFS_MAXINODE
         int "Maximum number of inodes in filesystem"
         depends TARGET_ROOTFS_EXT2FS
-        default 1500
+        default 6000
         help
             Allows you to change the maximum number of inodes in the filesystem
 
 endmenu
 
+menu "Global build settings"
 
 config ALL
        bool "Select all packages by default"
        default n
 
+comment "General build options"
+
+config CLEAN_IPKG
+       bool
+       prompt "Disable ipkg/opkg installation on the target"
+       default n
+       help
+               This removes all ipkg data from the target directory before building the root fs
+
+config LARGEFILE
+       bool
+       prompt "Enable large file (files > 2 GB) support"
+       default y
+       help
+         Enable large file (files > 2 GB) support.
+
+config SHADOW_PASSWORDS
+       bool
+       prompt "Enable shadow password support"
+       default y
+       help
+         Enable shadow password support.
+
+choice
+       prompt "Binary stripping method"
+       default USE_STRIP   if EXTERNAL_TOOLCHAIN
+       default USE_STRIP   if USE_GLIBC || USE_EGLIBC
+       default USE_SSTRIP
+       help
+         Select the binary stripping method you wish to use.
+
+       config NO_STRIP
+               bool "none"
+               help
+                 This will install unstripped binaries (useful for native compiling/debugging)
+
+       config USE_STRIP
+               bool "strip"
+               help
+                 This will install binaries stripped using strip from binutils
+
+
+       config USE_SSTRIP
+               bool "sstrip"
+               depends !USE_GLIBC
+               depends !USE_EGLIBC
+               help
+                 This will install binaries stripped using sstrip
+
+endchoice
+
+config USE_MKLIBS
+       bool "Strip unnecessary functions from libraries"
+       help
+         Reduces libraries to only those functions that are necessary for using all
+         selected packages (including those selected as <M>)
+         Note that this will make the system libraries incompatible with most of the packages
+         that are not selected during the build process
+
+config STRIP_KERNEL_EXPORTS
+       depends LINUX_2_6
+       bool "Strip unnecessary exports from the kernel image"
+       help
+         Reduces kernel size by stripping unused kernel exports from the kernel image
+         Note that this might make the kernel incompatible with any kernel modules that
+         were not selected at the time the kernel image was created
+
+comment "Package build options"
+
+config DEBUG
+       bool
+       prompt "Compile packages with debugging info"
+       default n
+       help
+               Disables stripping and adds -g3 to the CFLAGS
+
+config DEBUG_DIR
+       bool "Install debugging binaries into a staging directory"
+       default n
+       help
+               This will install all compiled package binaries into build_dir/target-*/debug-*/,
+               useful for cross-debugging via gdb/gdbserver
+
+config IPV6
+        bool
+        prompt "Enable IPv6 support in packages"
+        default n
+        help
+                Enable IPV6 support in packages (passes --enable-ipv6 to configure scripts).
+
+comment "Kernel build options"
+
+config KERNEL_KALLSYMS
+       bool "Compile the kernel with symbol table information"
+       default n
+       help
+               This will give you more information in stack traces from kernel oopses
+
+config KERNEL_PROFILING
+       bool "Compile the kernel with profiling enabled"
+       default n
+       help
+               Enable the extended profiling support mechanisms used by profilers such
+               as OProfile.
+
+config KERNEL_DEBUG_FS
+       bool "Compile the kernel with Debug Filesystem enabled"
+       depends LINUX_2_6
+       default y
+       help
+               debugfs is a virtual file system that kernel developers use to put
+               debugging files into. Enable this option to be able to read and
+               write to these files.
+
+endmenu
+
 menuconfig DEVEL
        bool "Advanced configuration options (for developers)"
        default n
-       select BUILDOPTS
-       select TOOLCHAINOPTS if !NATIVE_TOOLCHAIN
 
 config BROKEN
        bool
        prompt "Show broken platforms / packages" if DEVEL
        default n
 
+config DOWNLOAD_FOLDER
+       string
+       prompt "Download folder" if DEVEL
+       default ""
+
 config LOCALMIRROR
        string
        prompt "Local mirror for source packages" if DEVEL
 
-menuconfig BUILDOPTS
-       bool
-       prompt "Build Options" if DEVEL
-
-config CLEAN_IPKG
-       bool
-       prompt "Clean all ipkg files before building the rootfs" if BUILDOPTS
-       default n
-
 config AUTOREBUILD
        bool
-       prompt "Automatic rebuild of packages" if BUILDOPTS
+       prompt "Automatic rebuild of packages" if DEVEL
        default y
        help
                Automatically rebuild packages when their files change
 
 config BUILD_SUFFIX
        string
-       prompt "Build suffix to append to the BUILD_DIR variable" if BUILDOPTS
+       prompt "Build suffix to append to the BUILD_DIR variable" if DEVEL
        default ""
        help
                Build suffix to append to the BUILD_DIR variable, i.e: build_dir_suffix
 
-config TAR_VERBOSITY
-       bool 
-       prompt "Tar verbose" if BUILDOPTS
-       default n
+config TARGET_ROOTFS_DIR
+       string
+       prompt "Override the default TARGET_ROOTFS_DIR variable" if DEVEL
+       default ""
+       help
+               Override the default TARGET_ROOTFS_DIR variable content $(BUILD_DIR) with custom path.
+               Use this option to re-define the location of the target root file system directory.
 
 config CCACHE
        bool
-       prompt "Use ccache" if BUILDOPTS
+       prompt "Use ccache" if DEVEL
        default n
        help
                Compiler cache; see http://ccache.samba.org/
@@ -142,15 +281,52 @@ config EXTERNAL_KERNEL_TREE
        prompt "Use external kernel tree" if DEVEL
        default ""
 
-source "toolchain/Config.in"
-menuconfig BUILDSYSTEM_SETTINGS
-    bool "Buildsystem settings" 
+config KERNEL_GIT_CLONE_URI
+       string
+       prompt "Enter git repository to clone" if DEVEL
+       default ""
+       help
+               Enter the full git repository path i.e.:
+               git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
+               This will create a git clone of the kernel in your build
+               directory.
 
-config DOWNLOAD_FOLDER
+config KERNEL_GIT_LOCAL_REPOSITORY
        string
-       prompt "Download folder"
+       prompt "Enter path to local reference repository" if DEVEL
        default ""
-       depends BUILDSYSTEM_SETTINGS 
+       help
+               Enter a full pathname to a local reference git repository.
+               In this instance, the --refererence option of git clone will
+               be used thus creating a quick local clone of your repo.
+
+
+menuconfig TARGET_OPTIONS
+       bool "Target Options"  if DEVEL
+
+config TARGET_OPTIMIZATION
+       string
+       prompt "Target Optimizations" if TARGET_OPTIONS
+       default DEFAULT_TARGET_OPTIMIZATION
+       help
+         Optimizations to use when building for the target host.
+
+config SOFT_FLOAT
+       bool
+       prompt "Use software floating point by default" if TARGET_OPTIONS
+       default y
+       depends on (arm || armeb || powerpc || mipsel || mips) && !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
+         functions, then everything will need to be compiled with soft floating
+         point support (-msoft-float).
+
+         Most people will answer N.
+
+
+source "toolchain/Config.in"
+
 source "target/imagebuilder/Config.in"
 source "target/sdk/Config.in"