rbenv-ruby-build/script/update-truffleruby-graalvm

52 lines
1,013 B
Text
Raw Permalink Normal View History

#!/usr/bin/env bash
set -e
set -o pipefail
if [ $# -ne 2 ]; then
echo "usage: $0 VERSION RELEASE_DIRECTORY"
exit 1
fi
version="$1"
release_directory="$2"
file="share/ruby-build/truffleruby+graalvm-${version}"
add_platform() {
platform="$1"
basename="truffleruby-jvm-${version}-${platform}.tar.gz"
url="https://github.com/oracle/truffleruby/releases/download/graal-${version}/${basename}"
sha256=$(sha256sum "$release_directory/$basename" | cut -d ' ' -f 1)
cat >> "$file" <<EOS
install_package "truffleruby+graalvm-${version}" "${url}#${sha256}" truffleruby
;;
EOS
}
cat > "$file" <<EOS
platform="\$(uname -s)-\$(uname -m)"
case \$platform in
Linux-x86_64)
EOS
add_platform "linux-amd64"
cat >> "$file" <<EOS
Linux-aarch64)
EOS
add_platform "linux-aarch64"
cat >> "$file" <<EOS
Darwin-x86_64)
EOS
add_platform "macos-amd64"
cat >> "$file" <<EOS
Darwin-arm64)
EOS
add_platform "macos-aarch64"
cat >> "$file" <<EOS
*)
colorize 1 "Unsupported platform: \$platform"
return 1
;;
esac
EOS