haiku/data/etc/bash_completion.d/pkg-config

52 lines
1.5 KiB
Plaintext
Raw Normal View History

# bash completion for pkgconfig
have pkg-config &&
_pkg_config()
{
local cur prev split=false
COMPREPLY=()
_get_comp_words_by_ref cur prev
_split_longopt && split=true
case $prev in
--variable|--define-variable|--atleast-version|--atleast-pkgconfig-version| \
--exact-version|--max-version)
# argument required but no completions available
return 0
;;
-\?|--help|--version|--usage)
# all other arguments are noop with these
return 0
;;
esac
$split && return 0
if [[ "$cur" == -* ]]; then
# return list of available options
COMPREPLY=( $( compgen -W '--version --modversion \
--atleast-pkgconfig-version --libs --static \
--short-errors --libs-only-l --libs-only-other \
--libs-only-L --cflags --cflags-only-I \
--cflags-only-other --variable --define-variable \
--exists --uninstalled --atleast-version \
--exact-version --max-version --list-all --debug \
--print-errors --silence-errors --errors-to-stdout \
--print-provides --print-requires --help --usage' -- "$cur") )
else
COMPREPLY=( $( compgen -W "$( pkg-config --list-all \
2>/dev/null | awk '{print $1}' )" -- "$cur" ) )
fi
} &&
complete -F _pkg_config pkg-config
# Local variables:
# mode: shell-script
# sh-basic-offset: 4
# sh-indent-comment: t
# indent-tabs-mode: nil
# End:
# ex: ts=4 sw=4 et filetype=sh