# uClibc options

## depends on ! WINDOWS && ! BARE_METAL
##
## select LIBC_SUPPORT_LINUXTHREADS
## select LIBC_SUPPORT_THREADS_NONE
## select CC_CORE_PASSES_NEEDED
##
## help The de-facto standard for embeded linux systems.
## help
## help Highly configurable, thus as feature-rich as you
## help need, without compromising for size.

if ARCH_FLOAT_SOFTFP
comment "'softfp' ABI and uClibc is not entirely tested in crosstool-NG"
comment "You may experience issues, although it should work just fine"
endif # ARCH_FLOAT_SOFTFP

choice
    bool
    prompt "uClibc version"
# Don't remove next line
# CT_INSERT_VERSION_BELOW

config LIBC_UCLIBC_V_0_9_33_2
    bool
    prompt "0.9.33.2"
    select LIBC_UCLIBC_0_9_32_or_later

config LIBC_UCLIBC_V_0_9_33_1
    bool
    prompt "0.9.33.1"
    select LIBC_UCLIBC_0_9_32_or_later

config LIBC_UCLIBC_V_0_9_33
    bool
    prompt "0.9.33"
    select LIBC_UCLIBC_0_9_32_or_later

config LIBC_UCLIBC_V_0_9_32_1
    bool
    prompt "0.9.32.1"
    select LIBC_UCLIBC_0_9_32_or_later

config LIBC_UCLIBC_V_0_9_32
    bool
    prompt "0.9.32"
    select LIBC_UCLIBC_0_9_32_or_later

config LIBC_UCLIBC_V_0_9_31
    bool
    prompt "0.9.31"
    select LIBC_UCLIBC_0_9_30_or_later

config LIBC_UCLIBC_V_0_9_30_3
    bool
    prompt "0.9.30.3"
    select LIBC_UCLIBC_0_9_30_or_later

config LIBC_UCLIBC_V_0_9_30_2
    bool
    prompt "0.9.30.2"
    select LIBC_UCLIBC_0_9_30_or_later

config LIBC_UCLIBC_V_0_9_30_1
    bool
    prompt "0.9.30.1"
    select LIBC_UCLIBC_0_9_30_or_later

config LIBC_UCLIBC_V_0_9_30
    bool
    prompt "0.9.30"
    select LIBC_UCLIBC_0_9_30_or_later

config LIBC_UCLIBC_CUSTOM
    bool
    prompt "Custom uClibc"
    depends on EXPERIMENTAL
    select LIBC_SUPPORT_NPTL
    select LIBC_UCLIBC_0_9_30_or_later

endchoice

if LIBC_UCLIBC_CUSTOM

config LIBC_UCLIBC_CUSTOM_LOCATION
    string
    prompt "Full path to custom uClibc source"
    default ""
    help
      Enter the path to the directory (or tarball) of your source for uClibc,
      or leave blank to use default CT_CUSTOM_LOCATION_ROOT_DIR/uClibc

endif # LIBC_UCLIBC_CUSTOM

config LIBC_VERSION
    string
# Don't remove next line
# CT_INSERT_VERSION_STRING_BELOW
    default "0.9.33.2" if LIBC_UCLIBC_V_0_9_33_2
    default "0.9.33.1" if LIBC_UCLIBC_V_0_9_33_1
    default "0.9.33" if LIBC_UCLIBC_V_0_9_33
    default "0.9.32.1" if LIBC_UCLIBC_V_0_9_32_1
    default "0.9.32" if LIBC_UCLIBC_V_0_9_32
    default "0.9.31" if LIBC_UCLIBC_V_0_9_31
    default "0.9.30.3" if LIBC_UCLIBC_V_0_9_30_3
    default "0.9.30.2" if LIBC_UCLIBC_V_0_9_30_2
    default "0.9.30.1" if LIBC_UCLIBC_V_0_9_30_1
    default "0.9.30" if LIBC_UCLIBC_V_0_9_30
    default "custom" if LIBC_UCLIBC_CUSTOM

config LIBC_UCLIBC_0_9_32_or_later
    bool
    select LIBC_SUPPORT_NPTL
    select LIBC_UCLIBC_0_9_30_or_later

config LIBC_UCLIBC_0_9_30_or_later
    bool
    select LIBC_UCLIBC_PARALLEL

config LIBC_UCLIBC_PARALLEL
    bool

choice
    bool
    prompt "uClibc verbosity:"
    default LIBC_UCLIBC_VERBOSITY_0

config LIBC_UCLIBC_VERBOSITY_0
    bool
    prompt "Quiet build"
    help
      Print terse command indications.

config LIBC_UCLIBC_VERBOSITY_1
    bool
    prompt "Brief build (show defines, ld flags)"
    help
      Print simplified command lines.

config LIBC_UCLIBC_VERBOSITY_2
    bool
    prompt "Very verbose build"
    help
      Print full command lines.

endchoice

config LIBC_UCLIBC_VERBOSITY
    string
    default ""      if LIBC_UCLIBC_VERBOSITY_0
    default "V=1"   if LIBC_UCLIBC_VERBOSITY_1
    default "V=2"   if LIBC_UCLIBC_VERBOSITY_2

choice
    bool
    prompt "Debug level"
    default LIBC_UCLIBC_DEBUG_LEVEL_0

config LIBC_UCLIBC_DEBUG_LEVEL_0
    bool
    prompt "none"

config LIBC_UCLIBC_DEBUG_LEVEL_1
    bool
    prompt "minimal"

config LIBC_UCLIBC_DEBUG_LEVEL_2
    bool
    prompt "normal"

config LIBC_UCLIBC_DEBUG_LEVEL_3
    bool
    prompt "all"

endchoice

config LIBC_UCLIBC_DEBUG_LEVEL
    int
    default 0 if LIBC_UCLIBC_DEBUG_LEVEL_0
    default 1 if LIBC_UCLIBC_DEBUG_LEVEL_1
    default 2 if LIBC_UCLIBC_DEBUG_LEVEL_2

config LIBC_UCLIBC_CONFIG_FILE
    string
    prompt "Configuration file"
    default ""
    help
      Path to the configuration file.
      
      You _must_ provide one (for now).
