1.1 --- a/config/libc/glibc-eglibc-common.in Tue Aug 26 21:37:46 2008 +0000
1.2 +++ b/config/libc/glibc-eglibc-common.in Sun Sep 14 18:09:36 2008 +0000
1.3 @@ -7,6 +7,8 @@
1.4 # If mconf is updated to accept multiple inclusion of the same
1.5 # file, then the symlink can go (and the includers be updated).
1.6
1.7 +comment "glibc/eglibc common options"
1.8 +
1.9 config LIBC_GLIBC_EXTRA_CONFIG
1.10 string
1.11 prompt "extra config"
1.12 @@ -68,30 +70,57 @@
1.13
1.14 Eg.: crypt (for very old libces)
1.15
1.16 -config LIBC_GLIBC_USE_HEADERS_MIN_KERNEL
1.17 +if KERNEL_LINUX
1.18 +
1.19 +choice
1.20 bool
1.21 - prompt "Use headers version for minimum kernel version supported"
1.22 - default y
1.23 + prompt "Minimum supported kernel version"
1.24 + default LIBC_GLIBC_KERNEL_VERSION_AS_HEADERS
1.25 +
1.26 +config LIBC_GLIBC_KERNEL_VERSION_NONE
1.27 + bool
1.28 + prompt "Let ./configure decide"
1.29 help
1.30 + Let ./configure decide what minimum kernel version glibc/eglibc
1.31 + will be able to run against.
1.32 +
1.33 + This will inclde legacy compatibility code for older kernels in
1.34 + the C library, thus ensuring that it will run on a large number
1.35 + of old kernels.
1.36 +
1.37 + The minimum kernel version supported will be dependent upon the
1.38 + target you build for. For example:
1.39 + alpha*-*-linux-gnu Requires Linux 2.6.9 for NPTL
1.40 + sh[34]-*-linux-gnu Requires Linux 2.6.11
1.41 + powerpc* Requires Linux 2.4.19
1.42 + arm*-*-linux-*gnueabi Requires Linux 2.6.16
1.43 +
1.44 +config LIBC_GLIBC_KERNEL_VERSION_AS_HEADERS
1.45 + bool
1.46 + prompt "Same as kernel headers (default)"
1.47 + help
1.48 + Normaly, you'll want glibc/eglibc to run against the same kernel
1.49 + version as the one used for the headers.
1.50 +
1.51 + This is the default.
1.52 +
1.53 If enabled, crosstool-ng will use the chosen version of kernel
1.54 headers for the glibc minimum kernel version supported, which is
1.55 what gets passed to "--enable-kernel=" when configuring glibc.
1.56 -
1.57 +
1.58 Enabling this will ensure that no legacy compatibility code for
1.59 older kernels is built into your C libraries, but it will
1.60 be unable to run on kernel versions older than whichever kernel
1.61 headers version you've built the toolchain for.
1.62 -
1.63 +
1.64 If you know for sure that your toolchain will never need to build
1.65 applications that will run under a kernel version older than your
1.66 chosen kernel headers version (CT_KERNEL_VERSION), you can choose
1.67 "y" here.
1.68
1.69 -config LIBC_GLIBC_MIN_KERNEL_CHOSEN
1.70 - string
1.71 - prompt "Minimum kernel version supported"
1.72 - default "2.6.9"
1.73 - depends on ! LIBC_GLIBC_USE_HEADERS_MIN_KERNEL
1.74 +config LIBC_GLIBC_KERNEL_VERSION_CHOSEN
1.75 + bool
1.76 + prompt "Specific kernel version"
1.77 help
1.78 Specify the earliest Linux kernel version you want glibc to
1.79 include support for. This does not have to match the kernel
1.80 @@ -107,7 +136,34 @@
1.81
1.82 Most people can leave this at the default value of "2.6.9".
1.83
1.84 +if LIBC_GLIBC_KERNEL_VERSION_CHOSEN
1.85 +
1.86 +config LIBC_GLIBC_MIN_KERNEL_VERSION
1.87 + string
1.88 + prompt "Minimum kernel version to support"
1.89 + default "2.6.9"
1.90 + help
1.91 + Enter here the lowest kernel version glibc/eglibc will be able to
1.92 + run against.
1.93 +
1.94 + The minimum kernel version supported will be dependent upon the
1.95 + target you build for. For example:
1.96 + alpha*-*-linux-gnu Requires Linux 2.6.9 for NPTL
1.97 + sh[34]-*-linux-gnu Requires Linux 2.6.11
1.98 + powerpc* Requires Linux 2.4.19
1.99 + arm*-*-linux-*gnueabi Requires Linux 2.6.16
1.100 +
1.101 + Note that no sanity check is performed by crosstool-NG to ensure
1.102 + that the value you enter here is appropriate for your target.
1.103 +
1.104 +endif # LIBC_GLIBC_KERNEL_VERSION_CHOSEN
1.105 +
1.106 +endchoice
1.107 +
1.108 config LIBC_GLIBC_MIN_KERNEL
1.109 string
1.110 - default KERNEL_VERSION if LIBC_GLIBC_USE_HEADERS_MIN_KERNEL
1.111 - default LIBC_GLIBC_MIN_KERNEL_CHOSEN if ! LIBC_GLIBC_USE_HEADERS_MIN_KERNEL
1.112 + default "" if LIBC_GLIBC_KERNEL_VERSION_NONE
1.113 + default KERNEL_VERSION if LIBC_GLIBC_KERNEL_VERSION_AS_HEADERS
1.114 + default LIBC_GLIBC_MIN_KERNEL_VERSION if LIBC_GLIBC_USE_HEADERS_MIN_KERNEL
1.115 +
1.116 +endif # KERNEL_LINUX