Newer
Older
##########################################################################
# #
# This file is part of the Frama-C's E-ACSL plug-in. #
# #

Basile Desloges
committed
# CEA (Commissariat à l'énergie atomique et aux énergies #
# alternatives) #
# #
# you can redistribute it and/or modify it under the terms of the GNU #
# Lesser General Public License as published by the Free Software #
# Foundation, version 2.1. #
# #
# It is distributed in the hope that it will be useful, #
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
# GNU Lesser General Public License for more details. #
# #
# See the GNU Lesser General Public License version 2.1 #
# for more details (enclosed in the file license/LGPLv2.1). #
# #
##########################################################################
# Bash completion for e-acsl-gcc.sh
_eacsl_gcc() {
local cur prev words cwords opts
_init_completion || return

Basile Desloges
committed
-C -d -o -O -v -V -f -E -L -M -l -e -g -q -s -F -m -D -I -G -X -a

Basile Desloges
committed
--verbose= --debug= --logfile= --quiet --rt-debug --help
--rt-verbose --check --then --keep-going --fail-with-code --external-assert=
--assert-print-data --no-assert-print-data --external-print-value=
--ocode= --oexec= --oexec-e-acsl=
--ld-flags= --cpp-flags= --extra-cpp-args=

Basile Desloges
committed
--frama-c-extra= --frama-c= --gcc= --ar= --ranlib= --mbits=
--e-acsl-share= --memory-model= --e-acsl-extra=
--compile --compile-only --print-mmodels --frama-c-only --instrumented-only

Basile Desloges
committed
--gmp --full-mtracking --rte= --rte-select=
--frama-c-stdlib --libc-replacements
--temporal --free-valid-address --weak-validity --validate-format-strings
--heap-size --stack-size
--with-dlmalloc --dlmalloc-from-sources --dlmalloc-compile-only
--dlmalloc-compile-flags --odlmalloc"
if [[ $cur == = ]]; then
# We just found an option that ends with '=', reset the 'cur' variable
# and use files and directories completions
cur=
_filedir
elif [[ $cur != -* ]]; then
# We are not adding a parameter, use files and directories completions
_filedir
else
# We started an option, use e-acsl-gcc completions
COMPREPLY=($(compgen -W "${opts}" -- ${cur}))
# If the option ends with '=', do not add a space after the option
[[ $COMPREPLY == *= ]] && compopt -o nospace
fi
} &&
complete -F _eacsl_gcc e-acsl-gcc.sh