Lines 25-53
Link Here
|
25 |
JAVA_VM=-client |
25 |
JAVA_VM=-client |
26 |
fi |
26 |
fi |
27 |
|
27 |
|
28 |
# get the absolute path of the executable |
28 |
JRUBY_HOME="${JRUBY_HOME:-/usr/share/jruby}" |
29 |
SELF_PATH=$(builtin cd -P -- "$(dirname -- "$0")" >/dev/null && pwd -P) && SELF_PATH=$SELF_PATH/$(basename -- "$0") |
|
|
30 |
|
31 |
# resolve symlinks |
32 |
while [ -h $SELF_PATH ]; do |
33 |
# 1) cd to directory of the symlink |
34 |
# 2) cd to the directory of where the symlink points |
35 |
# 3) get the pwd |
36 |
# 4) append the basename |
37 |
DIR=$(dirname -- "$SELF_PATH") |
38 |
SYM=$(readlink $SELF_PATH) |
39 |
SELF_PATH=$(cd $DIR && cd $(dirname -- "$SYM") && pwd)/$(basename -- "$SYM") |
40 |
done |
41 |
|
42 |
PRG=$SELF_PATH |
43 |
|
44 |
JRUBY_HOME_1=`dirname "$PRG"` # the ./bin dir |
45 |
if [ "$JRUBY_HOME_1" = '.' ] ; then |
46 |
cwd=`pwd` |
47 |
JRUBY_HOME=`dirname $cwd` # JRUBY-2699 |
48 |
else |
49 |
JRUBY_HOME=`dirname "$JRUBY_HOME_1"` # the . dir |
50 |
fi |
51 |
|
29 |
|
52 |
if [ -z "$JRUBY_OPTS" ] ; then |
30 |
if [ -z "$JRUBY_OPTS" ] ; then |
53 |
JRUBY_OPTS="" |
31 |
JRUBY_OPTS="" |
Lines 79-95
Link Here
|
79 |
done |
57 |
done |
80 |
JRUBY_OPTS=${JRUBY_OPTS_TEMP} |
58 |
JRUBY_OPTS=${JRUBY_OPTS_TEMP} |
81 |
|
59 |
|
82 |
if [ -z "$JAVACMD" ] ; then |
60 |
JAVACMD='java' |
83 |
if [ -z "$JAVA_HOME" ] ; then |
|
|
84 |
JAVACMD='java' |
85 |
else |
86 |
if $cygwin; then |
87 |
JAVACMD="`cygpath -u "$JAVA_HOME"`/bin/java" |
88 |
else |
89 |
JAVACMD="$JAVA_HOME/bin/java" |
90 |
fi |
91 |
fi |
92 |
fi |
93 |
|
61 |
|
94 |
if [ -z "$JAVA_MEM" ] ; then |
62 |
if [ -z "$JAVA_MEM" ] ; then |
95 |
JAVA_MEM=-Xmx500m |
63 |
JAVA_MEM=-Xmx500m |
Lines 130-150
Link Here
|
130 |
|
98 |
|
131 |
CP_DELIMITER=":" |
99 |
CP_DELIMITER=":" |
132 |
|
100 |
|
133 |
# add main jruby jar to the bootclasspath |
101 |
JRUBY_CP="$(java-config-2 -d -p jruby)" |
134 |
for j in "$JRUBY_HOME"/lib/jruby.jar "$JRUBY_HOME"/lib/jruby-complete.jar; do |
|
|
135 |
if [ ! -e "$j" ]; then |
136 |
continue |
137 |
fi |
138 |
if [ "$JRUBY_CP" ]; then |
139 |
JRUBY_CP="$JRUBY_CP$CP_DELIMITER$j" |
140 |
else |
141 |
JRUBY_CP="$j" |
142 |
fi |
143 |
if [ $JRUBY_ALREADY_ADDED ]; then |
144 |
echo "WARNING: more than one JRuby JAR found in lib directory" |
145 |
fi |
146 |
JRUBY_ALREADY_ADDED=true |
147 |
done |
148 |
|
102 |
|
149 |
if $cygwin; then |
103 |
if $cygwin; then |
150 |
JRUBY_CP=`cygpath -p -w "$JRUBY_CP"` |
104 |
JRUBY_CP=`cygpath -p -w "$JRUBY_CP"` |
Lines 152-180
Link Here
|
152 |
|
106 |
|
153 |
# ----- Set Up The System Classpath ------------------------------------------- |
107 |
# ----- Set Up The System Classpath ------------------------------------------- |
154 |
|
108 |
|
155 |
if [ "$JRUBY_PARENT_CLASSPATH" != "" ]; then |
109 |
CP="${JRUBY_PARENT_CLASSPATH}" |
156 |
# Use same classpath propagated from parent jruby |
|
|
157 |
CP=$JRUBY_PARENT_CLASSPATH |
158 |
else |
159 |
# add other jars in lib to CP for command-line execution |
160 |
for j in "$JRUBY_HOME"/lib/*.jar; do |
161 |
if [ "$j" == "$JRUBY_HOME"/lib/jruby.jar ]; then |
162 |
continue |
163 |
fi |
164 |
if [ "$j" == "$JRUBY_HOME"/lib/jruby-complete.jar ]; then |
165 |
continue |
166 |
fi |
167 |
if [ "$CP" ]; then |
168 |
CP="$CP$CP_DELIMITER$j" |
169 |
else |
170 |
CP="$j" |
171 |
fi |
172 |
done |
173 |
|
174 |
if [ "$CP" != "" ] && $cygwin; then |
175 |
CP=`cygpath -p -w "$CP"` |
176 |
fi |
177 |
fi |
178 |
|
110 |
|
179 |
if $cygwin; then |
111 |
if $cygwin; then |
180 |
# switch delimiter only after building Unix style classpaths |
112 |
# switch delimiter only after building Unix style classpaths |
Lines 254-268
Link Here
|
254 |
java_args=("${java_args[@]}" "-Djava.awt.headless=true") ;; |
186 |
java_args=("${java_args[@]}" "-Djava.awt.headless=true") ;; |
255 |
# Run under JDB |
187 |
# Run under JDB |
256 |
--jdb) |
188 |
--jdb) |
257 |
if [ -z "$JAVA_HOME" ] ; then |
189 |
JAVACMD='jdb' |
258 |
JAVACMD='jdb' |
|
|
259 |
else |
260 |
if $cygwin; then |
261 |
JAVACMD="`cygpath -u "$JAVA_HOME"`/bin/jdb" |
262 |
else |
263 |
JAVACMD="$JAVA_HOME/bin/jdb" |
264 |
fi |
265 |
fi |
266 |
java_args=("${java_args[@]}" "-sourcepath" "$JRUBY_HOME/lib/ruby/1.8:.") |
190 |
java_args=("${java_args[@]}" "-sourcepath" "$JRUBY_HOME/lib/ruby/1.8:.") |
267 |
JRUBY_OPTS=("${JRUBY_OPTS[@]}" "-X+C") ;; |
191 |
JRUBY_OPTS=("${JRUBY_OPTS[@]}" "-X+C") ;; |
268 |
--client) |
192 |
--client) |
Lines 307-324
Link Here
|
307 |
|
231 |
|
308 |
JAVA_OPTS="$JAVA_OPTS $JAVA_MEM $JAVA_MEM_MIN $JAVA_STACK" |
232 |
JAVA_OPTS="$JAVA_OPTS $JAVA_MEM $JAVA_MEM_MIN $JAVA_STACK" |
309 |
|
233 |
|
310 |
JFFI_BOOT="" |
|
|
311 |
if [ -d "$JRUBY_HOME/lib/native/" ]; then |
312 |
for d in $JRUBY_HOME/lib/native/*`uname -s`; do |
313 |
if [ -z "$JFFI_BOOT" ]; then |
314 |
JFFI_BOOT="$d" |
315 |
else |
316 |
JFFI_BOOT="$JFFI_BOOT:$d" |
317 |
fi |
318 |
done |
319 |
fi |
320 |
JFFI_OPTS="-Djffi.boot.library.path=$JFFI_BOOT" |
321 |
|
322 |
if $cygwin; then |
234 |
if $cygwin; then |
323 |
JRUBY_HOME=`cygpath --mixed "$JRUBY_HOME"` |
235 |
JRUBY_HOME=`cygpath --mixed "$JRUBY_HOME"` |
324 |
JRUBY_SHELL=`cygpath --mixed "$JRUBY_SHELL"` |
236 |
JRUBY_SHELL=`cygpath --mixed "$JRUBY_SHELL"` |
Lines 356-363
Link Here
|
356 |
JRUBY_OPTS='' |
268 |
JRUBY_OPTS='' |
357 |
fi |
269 |
fi |
358 |
|
270 |
|
359 |
"$JAVACMD" $PROFILE_ARGS $JAVA_OPTS "$JFFI_OPTS" "${java_args[@]}" -classpath "$JRUBY_CP$CP_DELIMITER$CP$CP_DELIMITER$CLASSPATH" \ |
271 |
"$JAVACMD" $PROFILE_ARGS $JAVA_OPTS "${java_args[@]}" -classpath "$JRUBY_CP$CP_DELIMITER$CP$CP_DELIMITER$CLASSPATH" \ |
360 |
"-Djruby.home=$JRUBY_HOME" \ |
272 |
"-Djruby.home=$JRUBY_HOME" \ |
|
|
273 |
"-Djruby.bindir=/usr/bin" \ |
361 |
"-Djruby.lib=$JRUBY_HOME/lib" -Djruby.script=jruby \ |
274 |
"-Djruby.lib=$JRUBY_HOME/lib" -Djruby.script=jruby \ |
362 |
"-Djruby.shell=$JRUBY_SHELL" \ |
275 |
"-Djruby.shell=$JRUBY_SHELL" \ |
363 |
$java_class $JRUBY_OPTS "$@" |
276 |
$java_class $JRUBY_OPTS "$@" |
Lines 379-385
Link Here
|
379 |
else |
292 |
else |
380 |
if $cygwin; then |
293 |
if $cygwin; then |
381 |
# exec doed not work correctly with cygwin bash |
294 |
# exec doed not work correctly with cygwin bash |
382 |
"$JAVACMD" $JAVA_OPTS "$JFFI_OPTS" "${java_args[@]}" -Xbootclasspath/a:"$JRUBY_CP" -classpath "$CP$CP_DELIMITER$CLASSPATH" \ |
295 |
"$JAVACMD" $JAVA_OPTS "${java_args[@]}" -Xbootclasspath/a:"$JRUBY_CP" -classpath "$CP$CP_DELIMITER$CLASSPATH" \ |
383 |
"-Djruby.home=$JRUBY_HOME" \ |
296 |
"-Djruby.home=$JRUBY_HOME" \ |
384 |
"-Djruby.lib=$JRUBY_HOME/lib" -Djruby.script=jruby \ |
297 |
"-Djruby.lib=$JRUBY_HOME/lib" -Djruby.script=jruby \ |
385 |
"-Djruby.shell=$JRUBY_SHELL" \ |
298 |
"-Djruby.shell=$JRUBY_SHELL" \ |
Lines 392-399
Link Here
|
392 |
|
305 |
|
393 |
exit $JRUBY_STATUS |
306 |
exit $JRUBY_STATUS |
394 |
else |
307 |
else |
395 |
exec "$JAVACMD" $JAVA_OPTS "$JFFI_OPTS" "${java_args[@]}" -Xbootclasspath/a:"$JRUBY_CP" -classpath "$CP$CP_DELIMITER$CLASSPATH" \ |
308 |
exec "$JAVACMD" $JAVA_OPTS "${java_args[@]}" -Xbootclasspath/a:"$JRUBY_CP" -classpath "$CP$CP_DELIMITER$CLASSPATH" \ |
396 |
"-Djruby.home=$JRUBY_HOME" \ |
309 |
"-Djruby.home=$JRUBY_HOME" \ |
|
|
310 |
"-Djruby.bindir=/usr/bin" \ |
397 |
"-Djruby.lib=$JRUBY_HOME/lib" -Djruby.script=jruby \ |
311 |
"-Djruby.lib=$JRUBY_HOME/lib" -Djruby.script=jruby \ |
398 |
"-Djruby.shell=$JRUBY_SHELL" \ |
312 |
"-Djruby.shell=$JRUBY_SHELL" \ |
399 |
$java_class $mode "$@" |
313 |
$java_class $mode "$@" |