| diff -Naur a/bin/jruby.bash b/bin/jruby.bash |
| --- a/bin/jruby.bash 2014-05-03 17:55:20.665665383 +0200 |
| +++ b/bin/jruby.bash 2014-05-03 17:58:37.095630622 +0200 |
| @@ -25,29 +25,7 @@ |
| JAVA_VM=-client |
| fi |
| |
| -# get the absolute path of the executable |
| -SELF_PATH=$(builtin cd -P -- "$(dirname -- "$0")" >/dev/null && pwd -P) && SELF_PATH=$SELF_PATH/$(basename -- "$0") |
| - |
| -# resolve symlinks |
| -while [ -h $SELF_PATH ]; do |
| - # 1) cd to directory of the symlink |
| - # 2) cd to the directory of where the symlink points |
| - # 3) get the pwd |
| - # 4) append the basename |
| - DIR=$(dirname -- "$SELF_PATH") |
| - SYM=$(readlink $SELF_PATH) |
| - SELF_PATH=$(cd $DIR && cd $(dirname -- "$SYM") && pwd)/$(basename -- "$SYM") |
| -done |
| - |
| -PRG=$SELF_PATH |
| - |
| -JRUBY_HOME_1=`dirname "$PRG"` # the ./bin dir |
| -if [ "$JRUBY_HOME_1" = '.' ] ; then |
| - cwd=`pwd` |
| - JRUBY_HOME=`dirname $cwd` # JRUBY-2699 |
| -else |
| - JRUBY_HOME=`dirname "$JRUBY_HOME_1"` # the . dir |
| -fi |
| +JRUBY_HOME="${JRUBY_HOME:-/usr/share/jruby}" |
| |
| if [ -z "$JRUBY_OPTS" ] ; then |
| JRUBY_OPTS="" |
| @@ -79,17 +57,7 @@ |
| done |
| JRUBY_OPTS=${JRUBY_OPTS_TEMP} |
| |
| -if [ -z "$JAVACMD" ] ; then |
| - if [ -z "$JAVA_HOME" ] ; then |
| - JAVACMD='java' |
| - else |
| - if $cygwin; then |
| - JAVACMD="`cygpath -u "$JAVA_HOME"`/bin/java" |
| - else |
| - JAVACMD="$JAVA_HOME/bin/java" |
| - fi |
| - fi |
| -fi |
| +JAVACMD=java |
| |
| if [ -z "$JAVA_MEM" ] ; then |
| JAVA_MEM=-Xmx500m |
| @@ -130,21 +98,7 @@ |
| |
| CP_DELIMITER=":" |
| |
| -# add main jruby jar to the bootclasspath |
| -for j in "$JRUBY_HOME"/lib/jruby.jar "$JRUBY_HOME"/lib/jruby-complete.jar; do |
| - if [ ! -e "$j" ]; then |
| - continue |
| - fi |
| - if [ "$JRUBY_CP" ]; then |
| - JRUBY_CP="$JRUBY_CP$CP_DELIMITER$j" |
| - else |
| - JRUBY_CP="$j" |
| - fi |
| - if [ $JRUBY_ALREADY_ADDED ]; then |
| - echo "WARNING: more than one JRuby JAR found in lib directory" |
| - fi |
| - JRUBY_ALREADY_ADDED=true |
| -done |
| +JRUBY_CP="$(java-config-2 -d -p jruby)" |
| |
| if $cygwin; then |
| JRUBY_CP=`cygpath -p -w "$JRUBY_CP"` |
| @@ -152,29 +106,7 @@ |
| |
| # ----- Set Up The System Classpath ------------------------------------------- |
| |
| -if [ "$JRUBY_PARENT_CLASSPATH" != "" ]; then |
| - # Use same classpath propagated from parent jruby |
| - CP=$JRUBY_PARENT_CLASSPATH |
| -else |
| - # add other jars in lib to CP for command-line execution |
| - for j in "$JRUBY_HOME"/lib/*.jar; do |
| - if [ "$j" == "$JRUBY_HOME"/lib/jruby.jar ]; then |
| - continue |
| - fi |
| - if [ "$j" == "$JRUBY_HOME"/lib/jruby-complete.jar ]; then |
| - continue |
| - fi |
| - if [ "$CP" ]; then |
| - CP="$CP$CP_DELIMITER$j" |
| - else |
| - CP="$j" |
| - fi |
| - done |
| - |
| - if [ "$CP" != "" ] && $cygwin; then |
| - CP=`cygpath -p -w "$CP"` |
| - fi |
| -fi |
| +CP="${JRUBY_PARENT_CLASSPATH}" |
| |
| if $cygwin; then |
| # switch delimiter only after building Unix style classpaths |
| @@ -254,15 +186,7 @@ |
| java_args=("${java_args[@]}" "-Djava.awt.headless=true") ;; |
| # Run under JDB |
| --jdb) |
| - if [ -z "$JAVA_HOME" ] ; then |
| - JAVACMD='jdb' |
| - else |
| - if $cygwin; then |
| - JAVACMD="`cygpath -u "$JAVA_HOME"`/bin/jdb" |
| - else |
| - JAVACMD="$JAVA_HOME/bin/jdb" |
| - fi |
| - fi |
| + JAVACMD='jdb' |
| java_args=("${java_args[@]}" "-sourcepath" "$JRUBY_HOME/lib/ruby/1.8:.") |
| JRUBY_OPTS=("${JRUBY_OPTS[@]}" "-X+C") ;; |
| --client) |
| @@ -310,8 +234,6 @@ |
| |
| JAVA_OPTS="$JAVA_OPTS $JAVA_MEM $JAVA_MEM_MIN $JAVA_STACK" |
| |
| -JFFI_OPTS="-Djffi.boot.library.path=$JRUBY_HOME/lib/jni" |
| - |
| if $cygwin; then |
| JRUBY_HOME=`cygpath --mixed "$JRUBY_HOME"` |
| JRUBY_SHELL=`cygpath --mixed "$JRUBY_SHELL"` |
| @@ -349,8 +271,9 @@ |
| JRUBY_OPTS='' |
| fi |
| |
| - "$JAVACMD" $PROFILE_ARGS $JAVA_OPTS "$JFFI_OPTS" "${java_args[@]}" -classpath "$JRUBY_CP$CP_DELIMITER$CP$CP_DELIMITER$CLASSPATH" \ |
| + "$JAVACMD" $PROFILE_ARGS $JAVA_OPTS "${java_args[@]}" -classpath "$JRUBY_CP$CP_DELIMITER$CP$CP_DELIMITER$CLASSPATH" \ |
| "-Djruby.home=$JRUBY_HOME" \ |
| + "-Djruby.bindir=/usr/bin" \ |
| "-Djruby.lib=$JRUBY_HOME/lib" -Djruby.script=jruby \ |
| "-Djruby.shell=$JRUBY_SHELL" \ |
| $java_class $JRUBY_OPTS "$@" |
| @@ -372,7 +295,7 @@ |
| else |
| if $cygwin; then |
| # exec doed not work correctly with cygwin bash |
| - "$JAVACMD" $JAVA_OPTS "$JFFI_OPTS" "${java_args[@]}" -Xbootclasspath/a:"$JRUBY_CP" -classpath "$CP$CP_DELIMITER$CLASSPATH" \ |
| + "$JAVACMD" $JAVA_OPTS "${java_args[@]}" -Xbootclasspath/a:"$JRUBY_CP" -classpath "$CP$CP_DELIMITER$CLASSPATH" \ |
| "-Djruby.home=$JRUBY_HOME" \ |
| "-Djruby.lib=$JRUBY_HOME/lib" -Djruby.script=jruby \ |
| "-Djruby.shell=$JRUBY_SHELL" \ |
| @@ -385,8 +308,9 @@ |
| |
| exit $JRUBY_STATUS |
| else |
| - exec "$JAVACMD" $JAVA_OPTS "$JFFI_OPTS" "${java_args[@]}" -Xbootclasspath/a:"$JRUBY_CP" -classpath "$CP$CP_DELIMITER$CLASSPATH" \ |
| + exec "$JAVACMD" $JAVA_OPTS "${java_args[@]}" -Xbootclasspath/a:"$JRUBY_CP" -classpath "$CP$CP_DELIMITER$CLASSPATH" \ |
| "-Djruby.home=$JRUBY_HOME" \ |
| + "-Djruby.bindir=/usr/bin" \ |
| "-Djruby.lib=$JRUBY_HOME/lib" -Djruby.script=jruby \ |
| "-Djruby.shell=$JRUBY_SHELL" \ |
| $java_class $mode "$@" |