bash-completion: Avoid using _init_completion when not defined

With the current version of homebrew one gets:

   bash: _init_completion: command not found

Avoid this by initializing manually when the function is not defined.
This commit is contained in:
Gaëtan Lehmann 2015-04-22 14:15:02 +02:00 committed by Brad King
parent 5a5ef00106
commit 2ecf168f19
3 changed files with 24 additions and 3 deletions

View File

@ -3,7 +3,14 @@
_cmake() _cmake()
{ {
local cur prev words cword split=false local cur prev words cword split=false
_init_completion -n := || return if type -t _init_completion >/dev/null; then
_init_completion -n = || return
else
# manual initialization for older bash completion versions
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD]}"
prev="${COMP_WORDS[COMP_CWORD-1]}"
fi
# Workaround for options like -DCMAKE_BUILD_TYPE=Release # Workaround for options like -DCMAKE_BUILD_TYPE=Release
local prefix= local prefix=

View File

@ -3,7 +3,14 @@
_cpack() _cpack()
{ {
local cur prev words cword local cur prev words cword
_init_completion -n = || return if type -t _init_completion >/dev/null; then
_init_completion -n = || return
else
# manual initialization for older bash completion versions
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD]}"
prev="${COMP_WORDS[COMP_CWORD-1]}"
fi
case "$prev" in case "$prev" in
-G) -G)

View File

@ -3,7 +3,14 @@
_ctest() _ctest()
{ {
local cur prev words cword local cur prev words cword
_init_completion -n = || return if type -t _init_completion >/dev/null; then
_init_completion -n = || return
else
# manual initialization for older bash completion versions
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD]}"
prev="${COMP_WORDS[COMP_CWORD-1]}"
fi
case "$prev" in case "$prev" in
-C|--build-config) -C|--build-config)