43 lines
1.0 KiB
Bash

# bash completion for pkgconfig
have pkg-config || return
_pkg_config()
{
local cur prev words cword
_init_completion -n = || return
local split=false
_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
COMPREPLY=( $( compgen -W '$( _parse_help "$1" )' -- "$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