############################
+function whichable()
+{
+ to_find="$1"; shift
+ which which &>/dev/null
+ if [ $? -ne 0 ]; then
+ # there is no which command here. we produce nothing due to this.
+ echo
+ fi
+ echo $(which $to_find)
+}
+
+# this reports when we have totally failed to figure out where a folder
+# is actually located on the machine.
function intuition_failure()
{
missing="$1"; shift
- echo "We cannot intuit your $missing variable for this host."
+ if [ ! -z "$SHELL_DEBUG" ]; then
+ echo "Could not intuit '$missing' variable."
+ fi
# remove the variable because its value is busted.
unset $missing
}
fi
if [ ! -d "$JAVA_HOME" ]; then
# try using a windows version.
-#note: this logic is untested.
-# probably will break due to space in path issues.
- declare -a any_there=$(find "/c/Program Files/java" -type d -iname "jdk" 2>/dev/null)
- if [ ${#any_there[*]} -gt 0 ]; then
- (( last = ${#any_there[@]} - 1 ))
- JAVA_HOME="${any_there[$last]}"
- fi
- if [ ! -d "$JAVA_HOME" ]; then
- # if no jdk, try a jre.
- declare -a any_there=$(find "/c/Program Files/java" -type d -iname "jre" 2>/dev/null)
- if [ ${#any_there[*]} -gt 0 ]; then
- (( last = ${#any_there[@]} - 1 ))
- JAVA_HOME="${any_there[$last]}"
- fi
- fi
+ JAVA_HOME=/d/tools/java6-jre
fi
# this should go last, since it changes the bin dir.
if [ ! -d "$JAVA_HOME" ]; then
JAVA_BIN_PIECE=Commands
fi
# last thing is to tell them we couldn't find it.
-if [ ! -d "$JAVA_HOME" ]; then
- if [ ! -z "$(which java)" ]; then
- echo "okay, java is in the path (JAVA_HOME unknown)."
- else
- intuition_failure JAVA_HOME
- unset JAVA_BIN_PIECE
+if [ ! -d "$JAVA_HOME" -a -z "$(whichable java 2>/dev/null)" ]; then
+ intuition_failure JAVA_HOME
+ unset JAVA_BIN_PIECE
+fi
+
+############################
+
+if [ ! -d "$JDK_HOME" ]; then
+ # try using a windows version.
+ JDK_HOME="/d/tools/java6-jdk"
+ if [ -d "$JDK_HOME/jre" ]; then
+ # reset java home.
+ JAVA_HOME="$JDK_HOME/jre"
fi
fi
+if [ ! -d "$JDK_HOME" ]; then
+ intuition_failure JDK_HOME
+fi
############################
ECLIPSE_DIR="/e/tools/eclipse"
fi
# final option is to whine.
-if [ ! -d "$ECLIPSE_DIR" ]; then
- if [ ! -z "$(which eclipse)" ]; then
- echo "okay, eclipse is in the path (ECLIPSE_DIR unknown)."
- else
- intuition_failure ECLIPSE_DIR;
- fi
+if [ ! -d "$ECLIPSE_DIR" -a -z "$(whichable eclipse 2>/dev/null)" ]; then
+ intuition_failure ECLIPSE_DIR
fi
############################
if [ ! -z "$JAVA_HOME" ]; then
export PATH=$JAVA_HOME/$JAVA_BIN_PIECE:$PATH
fi
+if [ ! -z "$JDK_HOME" ]; then
+#may have to do bin piece if support mac with jdk bit.
+ export PATH=$JDK_HOME/bin:$PATH
+fi
if [ ! -z "$ECLIPSE_DIR" ]; then
export PATH=$ECLIPSE_DIR:$PATH
fi