ct-ng.comp
author "Yann E. MORIN" <yann.morin.1998@free.fr>
Sun May 11 13:38:12 2014 +0200 (2014-05-11)
changeset 3313 ad14212ebf54
parent 3167 15f57d843296
permissions -rw-r--r--
config: switch cc with libc in the config order

Some of the compiler options depend on the C library choice, (e.g.
whether core passes are needed).

Since the compiler menu comes before the C library menu, those options
may or may not be visible until the C library is chosen, leading to
either options being visible by the user (thus be puzzling as they would
not apply to his case), or invisible to him (yet again puzzling him).

Invert the order of the compiler and the C library in the menuconfig. It
anyway looks more rational, in the end.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
yann@835
     1
# To be sourced
yann@835
     2
yann@2988
     3
_ct_ng () {
yann@835
     4
    local cur prev samples show_samples actions steps start_steps stop_steps ct_ng_opts vars
yann@835
     5
    COMPREPLY=()
yann@835
     6
    cur=$(_get_cword)
yann@835
     7
    prev=${COMP_WORDS[COMP_CWORD-1]}
yann@835
     8
yann@2053
     9
    samples=$( "${COMP_WORDS[0]}" list-samples-short 2>/dev/null )
yann@835
    10
    show_samples=$(echo "${samples}" |sed -r -e 's/(^| )/\1show-/g;')
yann@1025
    11
    build_samples=$(echo "${samples}" |sed -r -e 's/(^| )/\1build-/g;')
yann@3168
    12
    check_samples=$(echo "${samples}" |sed -r -e 's/(^| )/\1check-/g;')
yann@835
    13
yann@918
    14
    steps=$(${COMP_WORDS[0]} list-steps 2>/dev/null |awk '$1 == "-" { print $2; }')
yann@934
    15
    start_steps=$(echo "${steps}" |sed -r -e 's/($| )/\1+/;')
yann@835
    16
    stop_steps=$(echo "${steps}" |sed -r -e 's/(^| )/+\1/;')
yann@835
    17
yann@1803
    18
    actions='help menuconfig oldconfig saveconfig extractconfig
yann@3167
    19
             defconfig savedefconfig
yann@1025
    20
             build build. build-all build-all.
yann@3168
    21
             wiki-samples list-samples list-samples-short check-samples
yann@3168
    22
             list-steps
yann@2053
    23
             show-tuple show-all show-config
yann@2053
    24
             clean distclean updatetools
yann@932
    25
             tarball version'
yann@835
    26
yann@3034
    27
    vars="RESTART= STOP= PREFIX= V= DEFCONFIG="
yann@835
    28
yann@3168
    29
    ct_ng_opts="${samples} ${show_samples} ${build_samples} ${check_samples}
yann@835
    30
                ${steps} ${start_steps} ${stop_steps}
yann@835
    31
                ${actions} ${vars}"
yann@835
    32
yann@835
    33
    COMPREPLY=($(compgen -W "${ct_ng_opts}" -- "${cur}"))
yann@835
    34
    return 0
yann@835
    35
}
yann@2988
    36
complete -F _ct_ng ct-ng