summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2012-06-03 13:54:06 -0700
committerPaul Phillips <paulp@improving.org>2012-06-06 14:23:44 -0700
commita43e070e232ce35ef14fce34458ee3ea6e823078 (patch)
tree5d679372f53b6e650d81d87c4e0bd654ed9051c3 /tools
parent6cdb6b0299cb917ac3df9e39aa932bacdc31faf9 (diff)
downloadscala-a43e070e232ce35ef14fce34458ee3ea6e823078.tar.gz
scala-a43e070e232ce35ef14fce34458ee3ea6e823078.tar.bz2
scala-a43e070e232ce35ef14fce34458ee3ea6e823078.zip
Updated tools/*cp scripts.
To include the asm classes in some cases, and also to improve with my sadly now-greater knowledge of shell scripting.
Diffstat (limited to 'tools')
-rwxr-xr-xtools/buildcp11
-rwxr-xr-xtools/cpof28
-rwxr-xr-xtools/lockercp8
-rwxr-xr-xtools/packcp4
-rwxr-xr-xtools/quickcp8
-rwxr-xr-xtools/starrcp4
-rwxr-xr-xtools/strapcp12
7 files changed, 33 insertions, 42 deletions
diff --git a/tools/buildcp b/tools/buildcp
new file mode 100755
index 0000000000..766ab81f90
--- /dev/null
+++ b/tools/buildcp
@@ -0,0 +1,11 @@
+#!/bin/sh
+#
+
+[[ $# -eq 1 ]] || { echo "Usage: $0 <locker|quick|...>"; exit 0; }
+
+dir=$(dirname $0)
+lib=$($dir/abspath $dir/../lib)
+build=$($dir/abspath $dir/../build)
+cp=$($dir/cpof $build/$1/classes):$build/asm/classes
+
+echo $cp:$lib/fjbg.jar:$lib/msil.jar:$lib/forkjoin.jar:$lib/jline.jar:$lib/extra/'*'
diff --git a/tools/cpof b/tools/cpof
index ab5a42b4fb..c09ed20d69 100755
--- a/tools/cpof
+++ b/tools/cpof
@@ -3,28 +3,16 @@
# Creates a classpath out of the contents of each directory
# given as an argument.
-if [ $# == 0 ] ; then
- echo "Usage: $0 [dir1 dir2 ...]"
- exit 1
-fi
+[[ $# == 0 ]] && { echo "Usage: $0 [dir1 dir2 ...]" && exit 0; }
-THISDIR=`dirname $0`
-ABSCMD="${THISDIR}/abspath"
-CPRES=""
+sdir=$(dirname $0)
+cp=""
-for dir in $* ; do
- absdir=`${ABSCMD} $dir`
- LS=`ls -1 ${absdir}`
-
- for x in $LS ; do
- ABS=`${ABSCMD} "${absdir}/${x}"`
- CPRES="${CPRES}:${ABS}"
+for dir in "$@" ; do
+ for x in $($sdir/abspath $dir)/* ; do
+ cp="$cp:$($sdir/abspath $x)"
done
done
-# shaving the : off the beginning. Applause to /bin/sh for
-# keeping us humble about how far we've come.
-LEN=$(( ${#CPRES} - 1 ))
-result=${CPRES:1:${LEN}}
-
-echo $result
+# shaving the : off the beginning.
+echo ${cp#:}
diff --git a/tools/lockercp b/tools/lockercp
index 3e8799596f..43c72dd629 100755
--- a/tools/lockercp
+++ b/tools/lockercp
@@ -1,10 +1,4 @@
#!/bin/sh
#
-THISDIR=`dirname $0`
-ABS=${THISDIR}/abspath
-LIBDIR=`$ABS $THISDIR/../lib`
-
-cp=`${THISDIR}/cpof ${THISDIR}/../build/locker/classes`
-
-echo ${cp}:$LIBDIR/fjbg.jar:$LIBDIR/msil.jar:$LIBDIR/forkjoin.jar:$LIBDIR/jline.jar:$LIBDIR/extra/'*'
+$(dirname $0)/buildcp locker
diff --git a/tools/packcp b/tools/packcp
index 42bce9e266..ecc7ee1b5d 100755
--- a/tools/packcp
+++ b/tools/packcp
@@ -1,5 +1,5 @@
#!/bin/sh
#
-THISDIR=`dirname $0`
-${THISDIR}/cpof ${THISDIR}/../build/pack/lib
+dir=$(dirname $0)
+$dir/cpof $dir/../build/pack/lib
diff --git a/tools/quickcp b/tools/quickcp
index dd5251d30f..25d46e56d9 100755
--- a/tools/quickcp
+++ b/tools/quickcp
@@ -1,10 +1,4 @@
#!/bin/sh
#
-THISDIR=`dirname $0`
-ABS=${THISDIR}/abspath
-LIBDIR=`$ABS $THISDIR/../lib`
-
-cp=`${THISDIR}/cpof ${THISDIR}/../build/quick/classes`
-
-echo ${cp}:$LIBDIR/fjbg.jar:$LIBDIR/msil.jar:$LIBDIR/forkjoin.jar:$LIBDIR/jline.jar:$LIBDIR/extra/'*'
+$(dirname $0)/buildcp quick
diff --git a/tools/starrcp b/tools/starrcp
index 6add5665b5..76f40fde03 100755
--- a/tools/starrcp
+++ b/tools/starrcp
@@ -1,5 +1,5 @@
#!/bin/sh
#
-THISDIR=`dirname $0`
-${THISDIR}/cpof ${THISDIR}/../lib \ No newline at end of file
+dir=$(dirname $0)
+$dir/cpof $dir/../lib
diff --git a/tools/strapcp b/tools/strapcp
index 61e4a61b2c..6a46b4e1c8 100755
--- a/tools/strapcp
+++ b/tools/strapcp
@@ -1,8 +1,12 @@
#!/bin/sh
#
-THISDIR=`dirname $0`
-cp=`${THISDIR}/cpof ${THISDIR}/../build/strap/classes`
-fjbg=`${THISDIR}/abspath ${THISDIR}/../lib/fjbg.jar`
+dir=$(dirname $0)
+strap="$dir/../build/strap/classes"
+[[ -d $strap ]] || { echo "Error: no directory at $strap"; exit 1; }
-echo ${cp}:${fjbg}
+cp=$($dir/cpof $strap)
+fjbg=$($dir/abspath $dir/../lib/fjbg.jar)
+asm=$($dir/abspath $dir/../build/asm/classes)
+
+echo $cp:$fjbg:$asm