5b9ee88b52
These options are no longer needed because the problematic code in intellij-core that was accessing these private APIs has been dealt with in the 171 branch. The remaining options in "Codegen Tests" run configurations are needed because of reflection usage on JDK internals in KtUsefulTestCase
75 lines
2.1 KiB
Bash
Executable File
75 lines
2.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
#
|
|
##############################################################################
|
|
# Copyright 2002-2011, LAMP/EPFL
|
|
# Copyright 2011-2015, JetBrains
|
|
#
|
|
# This is free software; see the distribution for copying conditions.
|
|
# There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
|
|
# PARTICULAR PURPOSE.
|
|
##############################################################################
|
|
|
|
cygwin=false;
|
|
case "`uname`" in
|
|
CYGWIN*) cygwin=true ;;
|
|
esac
|
|
|
|
# Based on findScalaHome() from scalac script
|
|
findKotlinHome() {
|
|
local source="${BASH_SOURCE[0]}"
|
|
while [ -h "$source" ] ; do
|
|
local linked="$(readlink "$source")"
|
|
local dir="$(cd -P $(dirname "$source") && cd -P $(dirname "$linked") && pwd)"
|
|
source="$dir/$(basename "$linked")"
|
|
done
|
|
(cd -P "$(dirname "$source")/.." && pwd)
|
|
}
|
|
|
|
KOTLIN_HOME="$(findKotlinHome)"
|
|
|
|
if $cygwin; then
|
|
# Remove spaces from KOTLIN_HOME on windows
|
|
KOTLIN_HOME=`cygpath --windows --short-name "$KOTLIN_HOME"`
|
|
fi
|
|
|
|
[ -n "$JAVA_OPTS" ] || JAVA_OPTS="-Xmx256M -Xms32M"
|
|
|
|
declare -a java_args
|
|
declare -a kotlin_args
|
|
|
|
while [ $# -gt 0 ]; do
|
|
case "$1" in
|
|
-D*)
|
|
java_args=("${java_args[@]}" "$1")
|
|
shift
|
|
;;
|
|
-J*)
|
|
java_args=("${java_args[@]}" "${1:2}")
|
|
shift
|
|
;;
|
|
*)
|
|
kotlin_args=("${kotlin_args[@]}" "$1")
|
|
shift
|
|
;;
|
|
esac
|
|
done
|
|
|
|
if [ -z "$JAVACMD" -a -n "$JAVA_HOME" -a -x "$JAVA_HOME/bin/java" ]; then
|
|
JAVACMD="$JAVA_HOME/bin/java"
|
|
fi
|
|
|
|
declare -a kotlin_app
|
|
|
|
if [ -n "$KOTLIN_RUNNER" ];
|
|
then
|
|
java_args=("${java_args[@]}" "-Dkotlin.home=${KOTLIN_HOME}")
|
|
kotlin_app=("${KOTLIN_HOME}/lib/kotlin-runner.jar" "org.jetbrains.kotlin.runner.Main")
|
|
else
|
|
[ -n "$KOTLIN_COMPILER" ] || KOTLIN_COMPILER=org.jetbrains.kotlin.cli.jvm.K2JVMCompiler
|
|
java_args=("${java_args[@]}" "-noverify")
|
|
|
|
kotlin_app=("${KOTLIN_HOME}/lib/kotlin-preloader.jar" "org.jetbrains.kotlin.preloading.Preloader" "-cp" "${KOTLIN_HOME}/lib/kotlin-compiler.jar" $KOTLIN_COMPILER)
|
|
fi
|
|
|
|
"${JAVACMD:=java}" $JAVA_OPTS "${java_args[@]}" -cp "${kotlin_app[@]}" "${kotlin_args[@]}"
|