summaryrefslogtreecommitdiff
path: root/net:foret/completion/_sdk-targets
blob: 4f9fe87033a7f7c12cb3777056dba6f22b167f2e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#compdef sdk-factory.sh sdk-patch.sh sdk-test.sh sdk-qa.sh set-target-build-env.sh

_sdk-targets() {

    _platforms () {
        local _targets_file=tools/sdk-targets.txt
        [ -f $_targets_file ] && awk '/^  [-_a-zA-Z0-9]+$/ { print $1 }' $_targets_file
    }

    _current_target () {
        [ -z "$TARGET" ] || \
            for i in ": Standard SDK"\
              "-PLUGIN: Plugin SDK"\
              "-APPSDK: Advanced Plugin SDK"\
                "-PERF: Performance tests" ;

                    echo $TARGET$i
    }

    _other_targets () {
        for target in $( _platforms ) ;
        do
            [ "$target" = "$TARGET" ] && continue;
            for i in ""\
              "-PLUGIN"\
              "-APPSDK"\
                "-PERF" ;

                echo $target$i
        done
    }

    case "$service" in
    sdk-factory.sh)
        _arguments \
            '(-s)'{-a,--enable-all-protocols}'[Enable all protocols]'\
            {-c+,--config=}'[Selects config FILE to use]:file:_files'\
            {-d,--debug-make}'[Add debugging verbosity to make]'\
            '(-p)'{-f,--framework-only}'[Generates only the framework libraries]'\
            '(-f)'{-p,--protocols-only}'[Generates only the protocols bundle libraries]'\
            {-g,--enable-debug-info}'[Enable debug info in binaries]'\
            {-h,--enable-host}'[Enable host binaries building]'\
            {-i,--disable-security}'[Disable licence checking]'\
            {-n,--nomake}'[No make done]'\
            {-s,--enable-specific-protocols}'[Enable specific protocols]'\
            {-v,--verbose}'[Enable verbose compilation]'\
            ':current target:(( $(_current_target) ))'
        _alternative ':other targets:(( $( _other_targets ) ))'
        ;;
    set-target-build-env.sh)
        _arguments ':platforms:(( $(_platforms) ))'
        ;;
    sdk-*)
        _arguments ':current target:(( $( _current_target) ))'
        _alternative ':other targets:(( $( _other_targets ) ))'
        ;;
    esac

}