X-Git-Url: https://feistymeow.org/gitweb/?a=blobdiff_plain;f=examples%2Fcustom_overrides%2Ffred%2Fjava_profile.sh;h=24eb0756e12cd5513ff54a755c108b6b386b5ea3;hb=03ca9bd53380b1a70c2baac212a5555c045d8b56;hp=94c40f868c57e06984b3d9be9cb57f1503114b8b;hpb=59d1b38b8abc7beb744672a7ef3883c9f714b82e;p=feisty_meow.git diff --git a/examples/custom_overrides/fred/java_profile.sh b/examples/custom_overrides/fred/java_profile.sh old mode 100644 new mode 100755 index 94c40f86..24eb0756 --- a/examples/custom_overrides/fred/java_profile.sh +++ b/examples/custom_overrides/fred/java_profile.sh @@ -6,10 +6,25 @@ ############################ +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 } @@ -35,21 +50,9 @@ if [ ! -d "$JAVA_HOME" ]; then export JAVA_HOME=/usr/lib/jvm/java-7-oracle/jre 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 + if [ ! -z "$(grep 'd:' /proc/mounts)" ]; then + # try using a windows version. + JAVA_HOME="d:/tools/java6-jdk" fi fi # this should go last, since it changes the bin dir. @@ -59,13 +62,9 @@ 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 - fi +if [ ! -d "$JAVA_HOME" -a -z "$(whichable java 2>/dev/null)" ]; then + intuition_failure JAVA_HOME + unset JAVA_BIN_PIECE fi ############################ @@ -81,24 +80,24 @@ if [ ! -d "$ECLIPSE_DIR" ]; then ECLIPSE_DIR=$HOME/apps/eclipse fi if [ ! -d "$ECLIPSE_DIR" ]; then -#uhhh, default on winders? - ECLIPSE_DIR="/c/Program Files/eclipse" + ECLIPSE_DIR="c:/tools/eclipse" fi if [ ! -d "$ECLIPSE_DIR" ]; then - ECLIPSE_DIR="/c/tools/eclipse" -fi -if [ ! -d "$ECLIPSE_DIR" ]; then - ECLIPSE_DIR="/d/tools/eclipse" + if [ ! -z "$(grep 'd:' /proc/mounts)" ]; then + ECLIPSE_DIR="d:/tools/eclipse" + fi fi if [ ! -d "$ECLIPSE_DIR" ]; then - ECLIPSE_DIR="/e/tools/eclipse" + if [ ! -z "$(grep 'e:' /proc/mounts)" ]; then + ECLIPSE_DIR="e:/tools/eclipse" + fi 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; +if [ ! -d "$ECLIPSE_DIR" -a -z "$(whichable eclipse 2>/dev/null)" ]; then + intuition_failure ECLIPSE_DIR +else + if [ ! -z "$(uname -a | grep -i cygwin)" ]; then + ECLIPSE_DIR=$(echo $ECLIPSE_DIR | sed -e 's/^\(.\):/\/cygdrive\/\1/') fi fi @@ -108,10 +107,18 @@ fi # any other paths to different versions. if [ ! -z "$JAVA_HOME" ]; then - export PATH=$JAVA_HOME/$JAVA_BIN_PIECE:$PATH + j="$JAVA_HOME" + if [ ! -z "$(uname -a | grep -i cygwin)" ]; then + j=$(echo $j | sed -e 's/^\(.\):/\/cygdrive\/\1/') + fi + export PATH=$j/$JAVA_BIN_PIECE:$PATH fi if [ ! -z "$ECLIPSE_DIR" ]; then - export PATH=$ECLIPSE_DIR:$PATH + e="$ECLIPSE_DIR" + if [ ! -z "$(uname -a | grep -i cygwin)" ]; then + e=$(echo $e | sed -e 's/^\(.\):/\/cygdrive\/\1/') + fi + export PATH=$e:$PATH fi ############################