summaryrefslogtreecommitdiff
path: root/net:foret/compsys/sdk/_sdk-targets
diff options
context:
space:
mode:
Diffstat (limited to 'net:foret/compsys/sdk/_sdk-targets')
-rw-r--r--net:foret/compsys/sdk/_sdk-targets77
1 files changed, 77 insertions, 0 deletions
diff --git a/net:foret/compsys/sdk/_sdk-targets b/net:foret/compsys/sdk/_sdk-targets
new file mode 100644
index 0000000..3428566
--- /dev/null
+++ b/net:foret/compsys/sdk/_sdk-targets
@@ -0,0 +1,77 @@
+#compdef sdk-factory.sh sdk-patch.sh sdk-test.sh sdk-qa.sh set-target-build-env.sh sdk-check.sh
+
+_sdk-targets() {
+
+ _platforms () {
+ local _targets_file
+
+ # New-style
+ _targets_file=tools/builder/target.sh
+ if [ -e $_targets_file ]
+ then
+ source $_targets_file
+ echo ${=AVAILABLE_TARGETS}
+ fi
+
+ # Old-style
+ _targets_file=tools/sdk-targets.txt
+ if [ -f $_targets_file ]
+ then
+ awk '/^ [-_a-zA-Z0-9]+$/ { print $1 }' $_targets_file
+ return
+ fi
+ }
+
+ _current_target () {
+ local _targets_file=tools/builder/target.sh
+ [ ! -z "$TARGET" ] || return
+
+ echo $TARGET":Standard SDK"
+
+ if [ -e $_targets_file ]
+ then
+ source $_targets_file
+ for i in ${=AVAILABLE_FLAVOUR}
+ echo ${TARGET}-$i:$i
+ for i in ${=AVAILABLE_OPTIONS}
+ echo ${TARGET}-$i:$i
+ fi
+ }
+
+ _other_targets () {
+ for target in $( _platforms ) ;
+ do
+ [ "$target" = "$TARGET" ] && continue;
+ echo $target
+ done
+ }
+
+ case "$service" in
+ sdk-factory.sh)
+ _arguments \
+ {-a,--enable-all-protocols}'[Enable all protocols]'\
+ {-c+,--config=}'[Selects config FILE to use]:file:_files'\
+ {-d,--debug-make}'[Add debugging verbosity to make]'\
+ {-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) ))' \
+ - framework \
+ {-f,--framework-only}'[Generates only the framework libraries]'\
+ - protobundle \
+ {-p,--protocols-only}'[Generates only the protocols bundle libraries]'
+ _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
+
+}