xref: /netbsd-src/external/bsd/tre/dist/tests/build-on-hosts.sh (revision 1580a27b92f58fcdcb23fdfbc04a7c2b54a0b7c8)
1*1580a27bSrin#! /bin/sh
2*1580a27bSrin
3*1580a27bSrinset -e
4*1580a27bSrin
5*1580a27bSrinif test -z "$BUILD_HAVE_SOURCES"; then
6*1580a27bSrin  echo -n "Building source code distribution..."
7*1580a27bSrin  ./utils/build-sources.sh > /dev/null
8*1580a27bSrin  echo "OK"
9*1580a27bSrinfi
10*1580a27bSrin
11*1580a27bSrinif test -z "$*"; then
12*1580a27bSrin  for f in tests/build-hosts/*; do
13*1580a27bSrin    if test -f $f; then
14*1580a27bSrin      hosts="$hosts `basename $f`"
15*1580a27bSrin    fi
16*1580a27bSrin  done
17*1580a27bSrinelse
18*1580a27bSrin  hosts="$*"
19*1580a27bSrinfi
20*1580a27bSrin
21*1580a27bSrinfor hostfile in $hosts; do
22*1580a27bSrin  (
23*1580a27bSrin  . tests/build-hosts/$hostfile
24*1580a27bSrin  pkg=`ls dist/tre-*.tar.gz`
25*1580a27bSrin  pkg=`basename $pkg`
26*1580a27bSrin  dir=`basename $pkg .tar.gz`
27*1580a27bSrin  if test -z "$scp_host"; then
28*1580a27bSrin    echo foo
29*1580a27bSrin    scp_host="$host"
30*1580a27bSrin  fi
31*1580a27bSrin
32*1580a27bSrin  cat tests/build-hosts/$hostfile > $hostfile.tmp
33*1580a27bSrin  echo "pkg=$pkg" >> $hostfile.tmp
34*1580a27bSrin  echo "dir=$dir" >> $hostfile.tmp
35*1580a27bSrin  chmod +x $hostfile.tmp
36*1580a27bSrin
37*1580a27bSrin  echo "Copying files to $scp_host..."
38*1580a27bSrin  scp dist/$pkg tests/build-run.sh $scp_host:build-tmp
39*1580a27bSrin  scp $hostfile.tmp $scp_host:build-tmp/build-params.sh
40*1580a27bSrin  rm -f $hostfile.tmp
41*1580a27bSrin  echo "Starting job on $host..."
42*1580a27bSrin  ( ssh $host "cd build-tmp; ./build-run.sh";
43*1580a27bSrin    if test $? -ne 0; then
44*1580a27bSrin      echo "$host: FAILED:"
45*1580a27bSrin      exit 1
46*1580a27bSrin    fi )
47*1580a27bSrin  ) &
48*1580a27bSrindone
49*1580a27bSrinwait
50