1
0
mirror of https://github.com/sstephenson/bats.git synced 2024-09-29 12:38:26 +02:00
bats/install.sh
2019-07-10 20:12:56 -07:00

45 lines
820 B
Bash
Executable File

#!/usr/bin/env bash
set -e
resolve_link() {
$(type -p greadlink readlink | head -1) "$1"
}
abs_dirname() {
local cwd="$(pwd)"
local path="$1"
while [ -n "$path" ]; do
cd "${path%/*}"
local name="${path##*/}"
path="$(resolve_link "$name" || true)"
done
pwd
cd "$cwd"
}
PREFIX="$1"
if [ -z "$1" ]; then
{ echo "usage: $0 <prefix>"
echo " e.g. $0 /usr/local"
} >&2
exit 1
fi
BATS_ROOT="$(abs_dirname "$0")"
echo "Installing binaries..."
[[ -d "$PREFIX"/share/bats ]] || mkdir -p "$PREFIX"/share/bats
[[ -d "$PREFIX"/bin ]] || mkdir -p "$PREFIX"/bin
cp -Rv "$BATS_ROOT"/libexec/* "$PREFIX"/share/bats
for binary in $(ls -1 libexec); do
ln -svf "$PREFIX"/share/bats/${binary} "$PREFIX"/bin/${binary}
done
echo "Installed bats into ${PREFIX}/bin:"
ls -al ${PREFIX}/bin/bats*