function setPath () { if (( $# == 0 )); then echo "Usage: $0 VAR [PATH, ...]" >&2 return 1 fi local -r var="$1" local paths=("${@:2}") case ${#paths[@]} in 0) unset $var;; 1) export $var="$paths";; *) export $var="${paths[0]}" local path for path in "${paths[@]:1}"; do local val=$(eval echo \$$var) export $var="$val:$path" done esac case "$var" in "PATH") # THINKME: Special case for PATH: we prepend "$prefix/bin" # to it. PATH="$prefix/bin:$PATH";; "PKG_CONFIG_PATH") # THINKME: Special case for PKG_CONFIG_PATH: we prepend # "$prefix/lib/pkgconfig" to it. PKG_CONFIG_PATH="$prefix/lib/pkgconfig:$PKG_CONFIG_PATH";; *) ;; esac }