MakeJAR2.sh revision 381:b6d6877c1155
1#!/bin/sh 2 3# 4# Copyright 2005-2008 Sun Microsystems, Inc. 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 Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, 22# CA 95054 USA or visit www.sun.com if you need additional information or 23# have any 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 [ "${TESTCLASSES}" = "" ] 45then 46 echo "TESTCLASSES not set. Test cannot execute. Failed." 47 exit 1 48fi 49 50OS=`uname -s` 51case "$OS" in 52 SunOS | Linux ) 53 PATHSEP=":" 54 ;; 55 56 Windows* | CYGWIN*) 57 PATHSEP=";" 58 ;; 59 60 # catch all other OSs 61 * ) 62 echo "Unrecognized system! $OS" 63 fail "Unrecognized system! $OS" 64 ;; 65esac 66 67JAVAC="${TESTJAVA}/bin/javac -g" 68JAR="${TESTJAVA}/bin/jar" 69 70cp ${TESTSRC}/${AGENT}.java . 71cp ${TESTSRC}/${APP}.java . 72rm -rf ilib 73mkdir ilib 74cp ${TESTSRC}/ilib/*.java ilib 75rm -rf bootpath 76mkdir -p bootpath/bootreporter 77cp ${TESTSRC}/bootreporter/*.java bootpath/bootreporter 78 79cd bootpath 80${JAVAC} bootreporter/*.java 81cd .. 82 83${JAVAC} ${AGENT}.java ilib/*.java 84${JAVAC} -classpath .${PATHSEP}bootpath ${APP}.java 85 86echo "Manifest-Version: 1.0" > ${AGENT}.mf 87echo Premain-Class: ${AGENT} >> ${AGENT}.mf 88echo Boot-Class-Path: bootpath >> ${AGENT}.mf 89shift 2 90while [ $# != 0 ] ; do 91 echo $1 >> ${AGENT}.mf 92 shift 93done 94 95${JAR} cvfm ${AGENT}.jar ${AGENT}.mf ${AGENT}*.class ilib/*.class 96 97# rm -rf ${AGENT}.java ilib ${AGENT}.mf ${AGENT}*.class 98