--- /dev/null
+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
+
+ # THINKME: Special case for PATH: we prepend "$prefix/bin" to it.
+ if [[ $var = "PATH" ]]; then
+ PATH="$prefix/bin:$PATH"
+ fi
+}