summaryrefslogtreecommitdiffstats
path: root/linux/Config.in
diff options
context:
space:
mode:
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>2010-04-03 18:46:46 +0200
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>2010-06-22 21:20:25 +0200
commit487e21cff69b30b404146b2ffb46959a728a4002 (patch)
tree9d809fbe41eb64bf9f389216168526149827be68 /linux/Config.in
parentcd7459b4eef742069f7796c4dfceed8facbfab68 (diff)
downloadbuildroot-novena-487e21cff69b30b404146b2ffb46959a728a4002.tar.gz
buildroot-novena-487e21cff69b30b404146b2ffb46959a728a4002.zip
New, simpler, infrastructure for building the Linux kernel
This patch introduces a single, simple, infrastructure to build the Linux kernel. The configuration is limited to : * Kernel version: a fixed recent stable version, same as kernel headers version (for internal toolchains only), custom stable version, or custom tarball URL * Kernel patch: either a local file, directory or an URL * Kernel configuration: either the name of a defconfig or the location of a custom configuration file * Kernel image: either uImage, bzImage, zImage or vmlinux. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Diffstat (limited to 'linux/Config.in')
-rw-r--r--linux/Config.in133
1 files changed, 133 insertions, 0 deletions
diff --git a/linux/Config.in b/linux/Config.in
new file mode 100644
index 000000000..d8a5157e2
--- /dev/null
+++ b/linux/Config.in
@@ -0,0 +1,133 @@
+menu "Kernel"
+
+config BR2_LINUX_KERNEL
+ bool "Linux Kernel"
+ help
+ Enable this option if you want to build a Linux kernel for
+ your embedded device
+
+if BR2_LINUX_KERNEL
+
+#
+# Version selection. We provide the choice between:
+#
+# 1. A single fairly recent stable kernel version
+# 2. In case an internal toolchain has been built, the same kernel
+# version as the kernel headers
+# 3. A custom stable version
+# 4. A custom tarball
+#
+choice
+ prompt "Kernel version"
+ default BR2_LINUX_KERNEL_2_6_34
+
+config BR2_LINUX_KERNEL_2_6_34
+ bool "2.6.34"
+
+config BR2_LINUX_KERNEL_SAME_AS_HEADERS
+ bool "Same as toolchain kernel headers"
+ depends on BR2_TOOLCHAIN_BUILDROOT
+ help
+ This option will re-use the same kernel sources as the one
+ that have been used for the kernel headers of the
+ cross-compiling toolchain. Having the same version for the
+ kernel running on the system and for the kernel headers is
+ not a requirement, but using the same version allows to
+ download only one tarball of the kernel sources.
+
+config BR2_LINUX_KERNEL_CUSTOM_VERSION
+ bool "Custom version"
+ help
+ This option allows to use a specific 2.6.x or 2.6.x.y
+ official versions, as available on kernel.org
+
+config BR2_LINUX_KERNEL_CUSTOM_TARBALL
+ bool "Custom tarball"
+ help
+ This option allows to specify the http or ftp location of a
+ specific kernel source tarball
+
+endchoice
+
+config BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE
+ string "Kernel version"
+ depends on BR2_LINUX_KERNEL_CUSTOM_VERSION
+ default "2.6.34"
+
+config BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION
+ string "URL of custom kernel tarball"
+ depends on BR2_LINUX_KERNEL_CUSTOM_TARBALL
+
+config BR2_LINUX_KERNEL_VERSION
+ string
+ default "2.6.34" if BR2_LINUX_KERNEL_2_6_34
+ default BR2_DEFAULT_KERNEL_HEADERS if BR2_LINUX_KERNEL_SAME_AS_HEADERS
+ default BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE if BR2_LINUX_KERNEL_CUSTOM_VERSION
+ default "custom" if BR2_LINUX_KERNEL_CUSTOM_TARBALL
+
+#
+# Patch selection
+#
+
+config BR2_LINUX_KERNEL_PATCH
+ string "Custom kernel patch"
+ help
+ The location can be an URL, a file path, or a directory. In
+ the case of a directory, all files matching linux-*.patch
+ will be applied.
+
+#
+# Configuration selection
+#
+
+choice
+ prompt "Kernel configuration"
+ default BR2_LINUX_KERNEL_USE_DEFCONFIG
+
+config BR2_LINUX_KERNEL_USE_DEFCONFIG
+ bool "Using a defconfig"
+
+config BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG
+ bool "Using a custom config file"
+
+endchoice
+
+config BR2_LINUX_KERNEL_DEFCONFIG
+ string "Defconfig name"
+ depends on BR2_LINUX_KERNEL_USE_DEFCONFIG
+ help
+ Name of the defconfig file to use, without the leading
+ _defconfig
+
+config BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE
+ string "Configuration file path"
+ depends on BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG
+ help
+ Path to the kernel configuration file
+
+#
+# Binary format
+#
+
+choice
+ prompt "Kernel binary format"
+ default BR2_LINUX_KERNEL_UIMAGE if !BR2_i386 && !BR2_x86_64
+ default BR2_LINUX_KERNEL_BZIMAGE if BR2_i386 || BR2_x86_64
+
+config BR2_LINUX_KERNEL_UIMAGE
+ bool "uImage"
+
+config BR2_LINUX_KERNEL_BZIMAGE
+ bool "bzImage"
+
+config BR2_LINUX_KERNEL_ZIMAGE
+ bool "zImage"
+
+config BR2_LINUX_KERNEL_VMLINUX
+ bool "vmlinux"
+
+endchoice
+
+endif # BR2_LINUX_KERNEL
+
+endmenu