Files

41 lines
1019 B
Bash
Executable File

#!/bin/bash
set -e
ODIN_DIR="$HOME/.odin"
echo "Installing Odin build dependencies..."
sudo xbps-install -S
sudo xbps-install -y llvm18-devel clang18 git-lfs base-devel
git lfs install --force
echo "Cloning Odin repository..."
if [ -d "$ODIN_DIR" ]; then
echo "Directory $ODIN_DIR already exists. Pulling latest..."
cd "$ODIN_DIR" && git pull
else
git clone https://github.com/odin-lang/Odin "$ODIN_DIR"
cd "$ODIN_DIR"
fi
# Detect available LLVM 18 config tool name on Void
LLVM_CFG=""
for cfg in llvm-config-18 llvm-config18 llvm-config; do
if command -v "$cfg" >/dev/null 2>&1; then
LLVM_CFG="$cfg"
break
fi
done
if [ -z "$LLVM_CFG" ]; then
echo "❌ Error: Could not locate a valid llvm-config binary."
exit 1
fi
echo "Building Odin compiler using $LLVM_CFG..."
LLVM_CONFIG="$LLVM_CFG" make release-native
echo ""
echo "✓ Odin install complete."
echo " Add to your path if needed: export PATH=\"\$HOME/.odin:\$PATH\""
echo " Then verify with: odin version"