config/libc/glibc-eglibc.in-common
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun May 03 08:33:12 2009 +0000 (2009-05-03)
branch1.4
changeset 1316 7ff235d979bf
parent 1232 80c5723e06fc
child 1315 655ee0516997
permissions -rw-r--r--
1.4: backport #1495 from /trunk:
- Force getting glibc>=2.8 via checkout if any addon is selected.

-------- diffstat follows --------
/branches/1.4/config/libc/glibc.in | 7 7 0 0 +++++++
/branches/1.4/config/libc/glibc-eglibc.in-common | 6 6 0 0 ++++++
2 files changed, 13 insertions(+)
     1 # This file contains the common configuration options
     2 # that apply to both glibc and eglibc.
     3 
     4 if LIBC_glibc || LIBC_eglibc
     5 
     6 comment "glibc/eglibc common options"
     7 
     8 config LIBC_GLIBC_EXTRA_CONFIG
     9     string
    10     prompt "extra config"
    11     default ""
    12     help
    13       Extra flags to pass onto ./configure when configuring.
    14 
    15       Eg.: --enable-static-nss
    16 
    17 config LIBC_GLIBC_CONFIGPARMS
    18     string
    19     prompt "Extra config params (READ HELP)"
    20     default "" if ! ARCH_sh
    21     default "no-z-defs=yes" if ARCH_sh
    22     help
    23       Some architectures need to set options in the file configparms.
    24       This is the case for sh3/4, which really need to set configparms
    25       to "no-z-defs=yes" as of gcc-3.4/glibc-2.3.2.
    26       
    27       Unless you are building a toolchain for sh3/4, you should leave that empty.
    28       
    29       Note: this is awkward, and doesn't work well if you need more than one
    30             line in configparms
    31 
    32 config LIBC_GLIBC_EXTRA_CFLAGS
    33     string
    34     prompt "extra target CFLAGS"
    35     default ""
    36     help
    37       Extra target CFLAGS to use when building.
    38 
    39 config LIBC_EXTRA_CC_ARGS
    40     string
    41     prompt "gcc extra flags"
    42     default ""
    43     help
    44       Extra flags to pass gcc when building.
    45 
    46       Seldom used, except for sparc64 which seems to need the flag -64
    47       to be passed onto gcc.
    48 
    49 config LIBC_GLIBC_USE_PORTS
    50     bool
    51     prompt "Use the ports addon"
    52     default n
    53     help
    54       The ports addon contains some architecture ports that are not available
    55       in the official distribution.
    56 
    57       For example, this is the case for ARM with for 2.4 and above.
    58 
    59       Say n only if you're sure that your architecture is in the official
    60       distribution for your chosen version.
    61 
    62 config LIBC_ADDONS_LIST
    63     string
    64     prompt "Extra addons"
    65     default ""
    66     help
    67       Extra addons to include. Space separated list.
    68 
    69       You need to specify neither linuxthreads nor nptl, as they are added
    70       automagically for you depending on the threading model you choosed
    71       earlier.
    72 
    73       Eg.: crypt        (for very old libces)
    74 
    75 if LIBC_GLIBC_2_8_or_later && ( LIBC_GLIBC_USE_PORTS || ( LIBC_ADDONS_LIST != "" ) )
    76 comment "WARNING!!!"
    77 comment "For glibc >= 2.8, addons are only available via a CVS checkout."
    78 comment "Be sure to review the associated options, above."
    79 endif
    80 
    81 if KERNEL_linux
    82 
    83 choice
    84     bool
    85     prompt "Minimum supported kernel version"
    86     default LIBC_GLIBC_KERNEL_VERSION_AS_HEADERS
    87 
    88 config LIBC_GLIBC_KERNEL_VERSION_NONE
    89     bool
    90     prompt "Let ./configure decide"
    91     help
    92       Let ./configure decide what minimum kernel version glibc/eglibc
    93       will be able to run against.
    94       
    95       This will inclde legacy compatibility code for older kernels in
    96       the C library, thus ensuring that it will run on a large number
    97       of old kernels.
    98       
    99       The minimum kernel version supported will be dependent upon the
   100       target you build for. For example:
   101         alpha*-*-linux-gnu      Requires Linux 2.6.9 for NPTL
   102         sh[34]-*-linux-gnu      Requires Linux 2.6.11
   103         powerpc*                Requires Linux 2.4.19
   104         arm*-*-linux-*gnueabi   Requires Linux 2.6.16
   105 
   106 config LIBC_GLIBC_KERNEL_VERSION_AS_HEADERS
   107     bool
   108     prompt "Same as kernel headers (default)"
   109     help
   110       Normaly, you'll want glibc/eglibc to run against the same kernel
   111       version as the one used for the headers.
   112       
   113       This is the default.
   114       
   115       If enabled, crosstool-ng will use the chosen version of kernel
   116       headers for the glibc minimum kernel version supported, which is
   117       what gets passed to "--enable-kernel=" when configuring glibc.
   118       
   119       Enabling this will ensure that no legacy compatibility code for
   120       older kernels is built into your C libraries, but it will
   121       be unable to run on kernel versions older than whichever kernel
   122       headers version you've built the toolchain for.
   123       
   124       If you know for sure that your toolchain will never need to build
   125       applications that will run under a kernel version older than your
   126       chosen kernel headers version (CT_KERNEL_VERSION), you can choose
   127       "y" here.
   128 
   129 config LIBC_GLIBC_KERNEL_VERSION_CHOSEN
   130     bool
   131     prompt "Specific kernel version"
   132     help
   133       Specify the earliest Linux kernel version you want glibc to
   134       include support for.  This does not have to match the kernel
   135       headers version used for your toolchain.  This controls what is
   136       passed to the "--enable-kernel=" option to the glibc configure
   137       script.
   138 
   139       If you want to be able to statically link programs with your
   140       toolchain's C library, make sure this kernel version is lower than
   141       all kernels you wish to support to avoid "FATAL: kernel too old"
   142       errors.  The higher the version you specify, the less legacy code
   143       will be built into libc.
   144 
   145       Most people can leave this at the default value of "2.6.9".
   146 
   147 if LIBC_GLIBC_KERNEL_VERSION_CHOSEN
   148 
   149 config LIBC_GLIBC_MIN_KERNEL_VERSION
   150     string
   151     prompt "Minimum kernel version to support"
   152     default "2.6.9"
   153     help
   154       Enter here the lowest kernel version glibc/eglibc will be able to
   155       run against.
   156       
   157       The minimum kernel version supported will be dependent upon the
   158       target you build for. For example:
   159         alpha*-*-linux-gnu      Requires Linux 2.6.9 for NPTL
   160         sh[34]-*-linux-gnu      Requires Linux 2.6.11
   161         powerpc*                Requires Linux 2.4.19
   162         arm*-*-linux-*gnueabi   Requires Linux 2.6.16
   163       
   164       Note that no sanity check is performed by crosstool-NG to ensure
   165       that the value you enter here is appropriate for your target.
   166 
   167 endif # LIBC_GLIBC_KERNEL_VERSION_CHOSEN
   168 
   169 endchoice
   170 
   171 config LIBC_GLIBC_MIN_KERNEL
   172     string
   173     default ""                            if LIBC_GLIBC_KERNEL_VERSION_NONE
   174     default KERNEL_VERSION                if LIBC_GLIBC_KERNEL_VERSION_AS_HEADERS
   175     default LIBC_GLIBC_MIN_KERNEL_VERSION if LIBC_GLIBC_KERNEL_VERSION_CHOSEN
   176 
   177 endif # KERNEL_linux
   178 
   179 endif # LIBC_glibc || LIBC_eglibc