update_gtags.sh (751B)
1 #!/usr/bin/env bash 2 3 set -e 4 5 PROG_NAME=$0 6 GTAGS_EXE=gtags 7 FILE_LIST_CMD= 8 9 ShowUsage() { 10 echo "Usage:" 11 echo " $PROG_NAME <options>" 12 echo "" 13 echo " -e [exe=gtags]: The gtags executable to run." 14 echo " -L [cmd=]: The file list command to run." 15 echo "" 16 } 17 18 while [[ $# -ne 0 ]]; do 19 case "$1" in 20 -h) 21 ShowUsage 22 exit 0 23 ;; 24 -e) 25 GTAGS_EXE=$2 26 shift 2 27 ;; 28 -L) 29 FILE_LIST_CMD=$2 30 shift 2 31 ;; 32 *) 33 GTAGS_ARGS="$GTAGS_ARGS $1" 34 shift 35 ;; 36 esac 37 done 38 39 if [ -n "$FILE_LIST_CMD" ]; then 40 CMD="$FILE_LIST_CMD | $GTAGS_EXE -f- $GTAGS_ARGS" 41 else 42 CMD="$GTAGS_EXE $GTAGS_ARGS" 43 fi 44 45 echo "Running gtags:" 46 echo "$CMD" 47 eval "$CMD" 48 echo "Done."