home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1999 March B / SCO_CASTOR4RRT.iso / jdk113 / root / opt / jdk-1.1.3 / bin / javadoc < prev    next >
Text File  |  1998-08-19  |  3KB  |  106 lines

  1. #!/bin/sh
  2. #
  3. #     @(#)java_wrapper.sh    1.29 97/05/14
  4. #
  5. #===================================================================
  6. # THIS SCRIPT AND JAVA WILL NOT RUN UNDER SUNOS4.X, AKA SOLARIS 1.X.  
  7. #===================================================================
  8.  
  9. # set -o trackall
  10.  
  11. # Set up default variable values if not supplied by the user.
  12.  
  13. PRG=`type $0 | cut -f3 -d' '` >/dev/null 2>&1
  14. J_HOME=`dirname $PRG`/..
  15. progname=`basename $0`
  16.  
  17. # The default THREADS_TYPE is "green_threads".  To change the default change
  18. # the setting of the DEFAULT_THREADS_FLAG variable.  The only valid values 
  19. # of that variable are 'green' and 'native'. 
  20. # This introduces a dependency of this wrapper on the policy used to do builds.
  21. # e.g. the usage of the name "green_threads" here is dependent on the build
  22. # scripts which use the same name. Since this is somewhat analogous to the
  23. # wrapper already depending on the build scripts putting the executable in
  24. # a specific place (JAVA_HOME/bin/`uname -p`), the new dependency does not
  25. # seem all that bad.
  26.  
  27. DEFAULT_THREADS_FLAG=green
  28.  
  29. if [ "${THREADS_FLAG:-${DEFAULT_THREADS_FLAG}}" = "native" ] ; then 
  30.     THREADS_TYPE=native_threads
  31. else
  32.     THREADS_TYPE=green_threads
  33. fi
  34. export THREADS_TYPE
  35. #echo "Using executables built for $THREADS_TYPE"
  36.  
  37. #
  38. # If the -noenv argument is specified, we set JAVA_HOME
  39. # and CLASSPATH to nothing, effectively ignoring those
  40. # environment variables.
  41. #
  42. # If one of java's '-*' options was specified on the command line,
  43. # then ksh insists on trying to interpret the option when
  44. # we do a set.  Worse, it swallows the option, refusing
  45. # to pass it on to (binary) java.  So we keep track of
  46. # all options and pass them on to eval by hand.
  47. #
  48. # Search for '-native' or '-green' flags, and remove them from the
  49. # arguments if found.  Also if found, set THREADS_TYPE to either
  50. # 'native_threads' or 'green_threads', as appropriate.  This is an
  51. # alternative to using the THREADS_FLAG environment variable to 
  52. # specify the threads package for Solaris.
  53. # On the off chance someone wants to pass -green or -native to
  54. # a java program, we stop searching on the first arg that doesn't
  55. # start with a runtime-option-specifying hyphen, '-'.
  56.  
  57. DEBUGVM=
  58.  
  59. for a in "$@"; do
  60.     case $a in
  61.     -native)
  62.         THREADS_TYPE=native_threads
  63.         ;;
  64.     -green)
  65.         THREADS_TYPE=green_threads
  66.         ;;
  67.     -debug)
  68.         DEBUGVM="_g"
  69.         echo "Using debug version of JVM"
  70.         ;;
  71.     -*) ;;
  72.         *) ;; #break;
  73.     esac
  74. done
  75.  
  76. if [ -z "$JAVA_HOME" ] ; then
  77.     export JAVA_HOME
  78.     JAVA_HOME=$J_HOME
  79. fi
  80.  
  81. CLASSPATH="${CLASSPATH-.}"
  82. if [ -z "${CLASSPATH}" ] ; then
  83.     CLASSPATH="$JAVA_HOME/classes:$JAVA_HOME/lib/classes.jar:$JAVA_HOME/lib/rt.jar:$JAVA_HOME/lib/i18n.jar:$JAVA_HOME/lib/classes.zip"
  84. else
  85.     CLASSPATH="$CLASSPATH:$JAVA_HOME/classes:$JAVA_HOME/lib/classes.jar:$JAVA_HOME/lib/rt.jar:$JAVA_HOME/lib/i18n.jar:$JAVA_HOME/lib/classes.zip"
  86. fi
  87.  
  88. export CLASSPATH
  89.  
  90. LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$JAVA_HOME/lib/`uname -p`/$THREADS_TYPE"
  91. export LD_LIBRARY_PATH
  92.  
  93. progname=`basename $0`  
  94. prog=$JAVA_HOME/bin/`uname -p`/${THREADS_TYPE}/${progname}${DEBUGVM}
  95.  
  96. if [ -f $prog ]
  97. then
  98.     eval exec $DEBUG_PROG $prog $opts '"$@"'
  99. else
  100.     echo >&2 "$progname was not found in ${prog}"
  101.     exit 1
  102. fi
  103.  
  104.