MakeJAR2.sh revision 6383:7da291690aa0
1#!/bin/sh 2 3# 4# Copyright (c) 2005, 2008, Oracle and/or its affiliates. All rights reserved. 5# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 6# 7# This code is free software; you can redistribute it and/or modify it 8# under the terms of the GNU General Public License version 2 only, as 9# published by the Free Software Foundation. 10# 11# This code is distributed in the hope that it will be useful, but WITHOUT 12# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14# version 2 for more details (a copy is included in the LICENSE file that 15# accompanied this code). 16# 17# You should have received a copy of the GNU General Public License version 18# 2 along with this work; if not, write to the Free Software Foundation, 19# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20# 21# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22# or visit www.oracle.com if you need additional information or have any 23# questions. 24# 25 26 27AGENT="$1" 28APP="$2" 29 30if [ "${TESTSRC}" = "" ] 31then 32 echo "TESTSRC not set. Test cannot execute. Failed." 33 exit 1 34fi 35echo "TESTSRC=${TESTSRC}" 36 37if [ "${TESTJAVA}" = "" ] 38then 39 echo "TESTJAVA not set. Test cannot execute. Failed." 40 exit 1 41fi 42echo "TESTJAVA=${TESTJAVA}" 43 44if [ "${COMPILEJAVA}" = "" ] 45then 46 COMPILEJAVA="${TESTJAVA}" 47fi 48echo "COMPILEJAVA=${COMPILEJAVA}" 49 50if [ "${TESTCLASSES}" = "" ] 51then 52 echo "TESTCLASSES not set. Test cannot execute. Failed." 53 exit 1 54fi 55 56OS=`uname -s` 57case "$OS" in 58 SunOS | Linux ) 59 PATHSEP=":" 60 ;; 61 62 Windows* | CYGWIN*) 63 PATHSEP=";" 64 ;; 65 66 # catch all other OSs 67 * ) 68 echo "Unrecognized system! $OS" 69 fail "Unrecognized system! $OS" 70 ;; 71esac 72 73JAVAC="${COMPILEJAVA}/bin/javac -g" 74JAR="${COMPILEJAVA}/bin/jar" 75 76cp ${TESTSRC}/${AGENT}.java . 77cp ${TESTSRC}/${APP}.java . 78rm -rf ilib 79mkdir ilib 80cp ${TESTSRC}/ilib/*.java ilib 81rm -rf bootpath 82mkdir -p bootpath/bootreporter 83cp ${TESTSRC}/bootreporter/*.java bootpath/bootreporter 84 85cd bootpath 86${JAVAC} ${TESTJAVACOPTS} ${TESTTOOLVMOPTS} bootreporter/*.java 87cd .. 88 89${JAVAC} ${TESTJAVACOPTS} ${TESTTOOLVMOPTS} ${AGENT}.java ilib/*.java 90${JAVAC} ${TESTJAVACOPTS} ${TESTTOOLVMOPTS} -classpath .${PATHSEP}bootpath ${APP}.java 91 92echo "Manifest-Version: 1.0" > ${AGENT}.mf 93echo Premain-Class: ${AGENT} >> ${AGENT}.mf 94echo Boot-Class-Path: bootpath >> ${AGENT}.mf 95shift 2 96while [ $# != 0 ] ; do 97 echo $1 >> ${AGENT}.mf 98 shift 99done 100 101${JAR} ${TESTTOOLVMOPTS} cvfm ${AGENT}.jar ${AGENT}.mf ${AGENT}*.class ilib/*.class 102 103# rm -rf ${AGENT}.java ilib ${AGENT}.mf ${AGENT}*.class 104