X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~yarrgweb/git?p=jarrg-ian.git;a=blobdiff_plain;f=jpctb;h=e04b95682e39124f03c11e7540da67341a9448bc;hp=a2cb243e910b5754201bc56757f7b2e230e8a39a;hb=3e215518c4173eeb037f7b6247513a980636fb6d;hpb=f990674d59428070dc501681c7fafd6a2e7e07d7 diff --git a/jpctb b/jpctb index a2cb243..e04b956 100755 --- a/jpctb +++ b/jpctb @@ -1,6 +1,30 @@ #!/bin/bash -e + +# This is jpctb, a wrapper script for plumbing Ted Pearson's Java PCTB +# client into a JVM on Linux. + +# This program is Free Software. Copyright (C) 2009 Ian Jackson. +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is fur- +# nished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FIT- +# NESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# XFREE86 PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +# IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CON- +# NECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + usage () { cat <&2 "jpctb: $*" exit 127 } +badusage () { + fail "bad usage: $*" +} -if [ $# -lt 2 ]; then usage; fail 'bad usage'; exit 127; fi +while [ $# -ge 1 ]; do + case "$1" in + -) shift; break;; + --jpctb) + shift + srcjardir="$1" + shift || badusage "--jpctb needs a value" + ;; + -*) badusage "unknown option \`$1'" + ;; + *) + break + esac +done + +if [ $# -lt 1 ]; then usage; badusage "need path to yohoho"; exit 127; fi -srcjardir="$1"; shift yohoho="$1"; shift #---------- find ourselves ---------- @@ -24,16 +65,25 @@ case "$jpctbdir" in *) jpctbdir="$PWD/$jpctbdir" ;; esac +if [ x"$srcjardir" = x ]; then + srcjardir="$jpctbdir" +fi + #---------- find YPP client and the Java installation it uses ---------- yppdir="${yohoho%/*}" +openjdk=/usr/lib/jvm/java-6-openjdk + if [ -x "$yppdir/java/bin/java" ]; then javadir="$yppdir/java" elif [ x"$JAVA_HOME" != x ] && [ -x "$JAVA_HOME/bin/java" ]; then javadir="$JAVA_HOME" +elif [ -x $openjdk/bin/java ]; then + javadir=$openjdk else - fail "could not find java runtime system" + fail "could not find java runtime system + please check that $yppdir/java points to your Java installation" fi case "$javadir" in @@ -56,6 +106,10 @@ jpctb: jpctb tmpdir: "$jtmp" END +#---------- run the control panel ---------- + +"$javadir/bin/java" -jar "$srcjardir/PCTB-ControlPanel.jar" + #---------- create the temporary are and link farm ---------- rm -rf -- "$jtmp"