Sophie

Sophie

distrib > Mandriva > 2009.1 > x86_64 > media > main-testing-src > by-pkgid > 2013cd8321cdcd1c23a12530bb1db679 > files > 5

tomcat5-5.5.27-0.3.0.2mdv2009.1.src.rpm

--- container/catalina/src/bin/catalina.sh.orig	2008-08-28 23:13:53.000000000 -0400
+++ container/catalina/src/bin/catalina.sh	2008-10-13 22:36:25.000000000 -0400
@@ -64,6 +64,11 @@
 Darwin*) darwin=true;;
 esac
 
+if [ -z "$CATALINA_HOME" ]; then
+    TOMCAT_CFG="@@@TCCONF@@@/tomcat5.conf"
+fi
+JAVADIR="/usr/share/java"
+
 # resolve links - $0 may be a softlink
 PRG="$0"
 
@@ -111,30 +116,73 @@
   export QIBM_MULTI_THREADED=Y
 fi
 
-# Get standard Java environment variables
-if $os400; then
-  # -r will Only work on the os400 if the files are:
-  # 1. owned by the user
-  # 2. owned by the PRIMARY group of the user
-  # this will not work if the user belongs in secondary groups
-  BASEDIR="$CATALINA_HOME"
-  . "$CATALINA_HOME"/bin/setclasspath.sh 
-else
-  if [ -r "$CATALINA_HOME"/bin/setclasspath.sh ]; then
-    BASEDIR="$CATALINA_HOME"
-    . "$CATALINA_HOME"/bin/setclasspath.sh
-  else
-    echo "Cannot find $CATALINA_HOME/bin/setclasspath.sh"
-    echo "This file is needed to run this program"
-    exit 1
-  fi
+if [ -z "$CATALINA_HOME" ]; then
+    [ -r "$TOMCAT_CFG" ] && . "${TOMCAT_CFG}"
 fi
 
+### Set up defaults if they were omitted in TOMCAT_CFG
+###  JVM lookup
+if [ -z "$JAVA_HOME" ]; then
+    # Search for java in PATH
+    JAVA=`which java`
+    if [ -z "$JAVA" ] ; then
+        JAVA_BINDIR=`dirname ${JAVA}`
+        JAVA_HOME="${JAVA_BINDIR}/.."
+    fi
+    # Default clean JAVA_HOME
+    [ -z "$JAVA_HOME" -a -d "/usr/lib/java" ] && JAVA_HOME="/usr/lib/java"
+    # Default IBM JAVA_HOME
+    [ -z "$JAVA_HOME" -a -d "/opt/IBMJava2-13" ] && \
+        JAVA_HOME="/opt/IBMJava2-13"
+    [ -z "$JAVA_HOME" -a -d "/opt/IBMJava2-131" ] && \
+        JAVA_HOME="/opt/IBMJava2-131"
+    [ -z "$JAVA_HOME" -a -d "/opt/IBMJava2-14" ] && \
+        JAVA_HOME="/opt/IBMJava2-14"
+    [ -z "$JAVA_HOME" -a -d "/opt/IBMJava2-141" ] && \
+        JAVA_HOME="/opt/IBMJava2-141"
+    # Another solution
+    [ -z "$JAVA_HOME" -a -d "/usr/java/jdk" ] && \
+        JAVA_HOME="/usr/java/jdk"
+    # madeinlinux JAVA_HOME
+    [ -z "$JAVA_HOME" -a -d "/usr/local/jdk1.2.2" ] && \
+        JAVA_HOME="/usr/local/jdk1.2.2"
+    # Kondara JAVA_HOME
+    [ -z "$JAVA_HOME"  -a -d "/usr/lib/java/jdk1.2.2" ] && \
+        JAVA_HOME="/usr/lib/java/jdk1.2.2"
+    # Other commonly found JAVA_HOMEs
+    [ -z "$JAVA_HOME"  -a -d "/usr/jdk1.2" ] && JAVA_HOME="/usr/jdk1.2"
+    # Default Caldera JAVA_HOME
+    [ -z "$JAVA_HOME"  -a -d "/opt/java-1.3" ] && \
+        JAVA_HOME="/opt/java-1.3"
+    # Add other locations here
+    if [ -z "$JAVA_HOME" ]; then
+        echo "No JAVA_HOME specified in ${TOMCAT_CFG} and no java found"
+        exit 1
+    else
+        echo "Found JAVA_HOME: ${JAVA_HOME}"
+        echo "Please complete your ${TOMCAT_CFG} so we won't have to look for it next time"
+    fi
+fi
+
+# Set standard commands for invoking Java.
+_RUNJAVA="$JAVA_HOME"/bin/java
+_RUNJAVAC="$JAVA_HOME"/bin/javac
+_RUNJDB="$JAVA_HOME"/bin/jdb
+
+# Set standard CLASSPATH
+CLASSPATH="$JAVA_HOME"/lib/tools.jar
+
 # Add on extra jar files to CLASSPATH
 if [ -n "$JSSE_HOME" ]; then
   CLASSPATH="$CLASSPATH":"$JSSE_HOME"/lib/jcert.jar:"$JSSE_HOME"/lib/jnet.jar:"$JSSE_HOME"/lib/jsse.jar
 fi
-CLASSPATH="$CLASSPATH":"$CATALINA_HOME"/bin/bootstrap.jar:"$CATALINA_HOME"/bin/commons-logging-api.jar
+
+# JPackage JSSE location check
+if [ -r "$JAVADIR/jsse/jcert.jar" ]; then
+  CLASSPATH="$CLASSPATH":"$JAVADIR"/jsse/jcert.jar:"$JAVADIR"/jsse/jnet.jar:"$JAVADIR"/jsse/jsse.jar
+fi
+
+CLASSPATH="$CLASSPATH":"$CATALINA_HOME"/bin/bootstrap.jar:"$CATALINA_HOME"/bin/commons-logging-api.jar:`/usr/bin/build-classpath mx4j/mx4j-impl`:`/usr/bin/build-classpath mx4j/mx4j-jmx`
 
 if [ -z "$CATALINA_BASE" ] ; then
   CATALINA_BASE="$CATALINA_HOME"
@@ -151,6 +199,10 @@
     have_tty=1
 fi
 
+if [ -z "$CATALINA_PID" ] ; then
+    export CATALINA_PID=/var/run/tomcat5.pid
+fi
+
 # For Cygwin, switch paths to Windows format before running java
 if $cygwin; then
   JAVA_HOME=`cygpath --absolute --windows "$JAVA_HOME"`
@@ -322,7 +374,7 @@
 
 else
 
-  echo "Usage: catalina.sh ( commands ... )"
+  echo "Usage: dtomcat5 ( commands ... )"
   echo "commands:"
   if $os400; then
     echo "  debug             Start Catalina in a debugger (not available on OS400)"