MakeJAR2.sh revision 135:8c1c6c50dd36
1#!/bin/sh
2
3#
4# Copyright 2005 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