sbt/src/windows/sbt

39 lines
1.1 KiB
Bash

#!/bin/sh
# sbt launcher script for Cygwin and MSYS
#
# Environment:
# JAVA_HOME - location of a JDK home dir (mandatory)
# SBT_OPTS - JVM options (optional)
# Configuration:
# sbtconfig.txt found in the SBT_HOME.
if [ -z "$JAVA_HOME" ]; then
JAVA_CMD=java
else
JAVA_CMD=$JAVA_HOME/bin/java
fi
UDIR=`dirname "$0"`
if [ -z "$MSYSTEM" ]; then
WDIR=`cygpath -alm "$UDIR"`
else
WDIR=`echo "$UDIR" | sed -e 's~^/\([^/]*\)/~\1:/~'`
fi
if [ -z "$JAVA_OPTS" ]; then
JAVA_OPTS=$(cat "$WDIR/sbtconfig.txt" | sed -e 's/\r//g' -e 's/^#.*$//g' | sed ':a;N;$!ba;s/\n/ /g')
fi
# TODO - this check should detect cygwin terminal, not just xterm.
if [ "_$TERM" = "_xterm" ]; then
# Let the terminal handle ANSI sequences
stty -icanon min 1 -echo > /dev/null 2>&1
"$JAVA_CMD" $JAVA_OPTS -Djline.terminal=jline.UnixTerminal -Dsbt.cygwin=true $SBT_OPTS -jar "$WDIR/sbt-launch.jar" "$@"
SCALA_STATUS=$?
stty icanon echo > /dev/null 2>&1
exit $SCALA_STATUS
else
# Use Jansi to intercept ANSI sequences
"$JAVA_CMD" -Dsbt.log.format=true $JAVA_OPTS $SBT_OPTS -cp "$WDIR/sbt-launch.jar" xsbt.boot.Boot "$@"
fi