X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~yarrgweb/git?p=jarrg-owen.git;a=blobdiff_plain;f=jpctb;h=1356b396f57657a5ec1868d3fdb7ff26b3dcc947;hp=a2cb243e910b5754201bc56757f7b2e230e8a39a;hb=87c38e513f0ebe211957e901005524f4b63acdb9;hpb=f990674d59428070dc501681c7fafd6a2e7e07d7 diff --git a/jpctb b/jpctb index a2cb243..1356b39 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,6 +65,10 @@ 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%/*}" @@ -56,13 +101,17 @@ 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" mkdir -- "$jtmp" "$extdir" "$linkfarm" cp "$srcjardir"/PCTB*.jar "$extdir" -lndir -silent "$javadir" "$linkfarm" +cp -Rs "$javadir"/. "$linkfarm"/. #---------- edit the linkfarm to have our jvm wrapper ----------