66 lines
1.9 KiB
Bash
66 lines
1.9 KiB
Bash
# gprof(1) completion -*- shell-script -*-
|
|
|
|
_gprof()
|
|
{
|
|
local cur prev words cword split
|
|
_init_completion -s || return
|
|
|
|
case $cur in
|
|
-A*|-C*|-J*|-p*|-P*|-q*|-Q*|-n*|-N*|-d*)
|
|
return
|
|
;;
|
|
-S*)
|
|
cur=${cur:2}
|
|
_filedir
|
|
COMPREPLY=( "${COMPREPLY[@]/#/-S}" )
|
|
return
|
|
;;
|
|
-O*)
|
|
cur=${cur:2}
|
|
COMPREPLY=( $( compgen -P -O -W 'auto bsd 4.4bsd magic prof' \
|
|
-- "$cur" ) )
|
|
return
|
|
;;
|
|
esac
|
|
|
|
case $prev in
|
|
-I|--directory-path)
|
|
_filedir -d
|
|
return
|
|
;;
|
|
-R|--file-ordering|--external-symbol-table)
|
|
_filedir
|
|
return
|
|
;;
|
|
-w|--width|-k|-m|--min-count|-h|--help|-e|-E|-f|-F)
|
|
return
|
|
;;
|
|
--file-format)
|
|
COMPREPLY=( $( compgen -W 'auto bsd 4.4bsd magic prof' \
|
|
-- "$cur" ) )
|
|
return
|
|
;;
|
|
esac
|
|
|
|
$split && return
|
|
|
|
if [[ $cur == -* ]]; then
|
|
COMPREPLY=( $( compgen -W '--annotated-source --brief --exec-counts
|
|
--file-info --directory-path --no-annotated-source --print-path
|
|
--flat-profile --no-flat-profile --graph --no-graph --table-length=
|
|
--separate-files --no-exec-counts --function-ordering
|
|
--file-ordering --traditional --width= --all-lines --demangle
|
|
--no-demangle --no-static --static-call-graph
|
|
--ignore-non-functions -k --line --min-count= --time= --no-time=
|
|
--external-symbol-table= --display-unused-functions --debug --help
|
|
--file-format= --sum --version' -- "$cur" ) )
|
|
[[ $COMPREPLY == *= ]] && compopt -o nospace
|
|
return
|
|
fi
|
|
|
|
_filedir
|
|
} &&
|
|
complete -F _gprof gprof
|
|
|
|
# ex: ts=4 sw=4 et filetype=sh
|