Hex Artifact Content

Artifact df35486eb443d13461cf70282a894f1cddbeb18f:


0000: 23 21 20 2f 62 69 6e 2f 62 61 73 68 0a 0a 56 45  #! /bin/bash..VE
0010: 52 53 49 4f 4e 53 3d 22 38 2e 35 2e 31 38 20 38  RSIONS="8.5.18 8
0020: 2e 36 2e 34 20 66 6f 73 73 69 6c 5f 74 72 75 6e  .6.4 fossil_trun
0030: 6b 22 0a 0a 23 20 46 69 6e 64 20 74 68 65 20 62  k"..# Find the b
0040: 61 73 65 20 64 69 72 65 63 74 6f 72 79 0a 66 6f  ase directory.fo
0050: 72 20 78 20 69 6e 20 31 20 32 20 33 20 34 20 5f  r x in 1 2 3 4 _
0060: 5f 66 61 69 6c 5f 5f 3b 20 64 6f 0a 09 69 66 20  _fail__; do..if 
0070: 5b 20 22 24 7b 78 7d 22 20 3d 20 22 5f 5f 66 61  [ "${x}" = "__fa
0080: 69 6c 5f 5f 22 20 5d 3b 20 74 68 65 6e 0a 09 09  il__" ]; then...
0090: 65 63 68 6f 20 27 55 6e 61 62 6c 65 20 74 6f 20  echo 'Unable to 
00a0: 66 69 6e 64 20 4b 69 74 43 72 65 61 74 6f 72 2c  find KitCreator,
00b0: 20 61 62 6f 72 74 69 6e 67 2e 27 20 3e 26 32 0a   aborting.' >&2.
00c0: 0a 09 09 65 78 69 74 20 31 0a 09 66 69 0a 0a 09  ...exit 1..fi...
00d0: 69 66 20 5b 20 2d 78 20 6b 69 74 63 72 65 61 74  if [ -x kitcreat
00e0: 6f 72 20 5d 3b 20 74 68 65 6e 0a 09 09 62 72 65  or ]; then...bre
00f0: 61 6b 0a 09 66 69 0a 0a 09 63 64 20 2e 2e 0a 64  ak..fi...cd ...d
0100: 6f 6e 65 0a 0a 52 4f 4f 54 44 49 52 3d 22 24 28  one..ROOTDIR="$(
0110: 70 77 64 29 22 0a 54 45 53 54 44 49 52 3d 22 24  pwd)".TESTDIR="$
0120: 7b 52 4f 4f 54 44 49 52 7d 2f 62 75 69 6c 64 2f  {ROOTDIR}/build/
0130: 74 65 73 74 22 0a 65 78 70 6f 72 74 20 52 4f 4f  test".export ROO
0140: 54 44 49 52 20 54 45 53 54 44 49 52 0a 0a 23 20  TDIR TESTDIR..# 
0150: 48 61 6e 64 6c 65 20 63 6f 6d 6d 61 6e 64 2d 6c  Handle command-l
0160: 69 6e 65 20 61 72 67 75 6d 65 6e 74 73 0a 69 66  ine arguments.if
0170: 20 5b 20 22 24 31 22 20 3d 20 22 63 6c 65 61 6e   [ "$1" = "clean
0180: 22 20 5d 3b 20 74 68 65 6e 0a 09 72 6d 20 2d 72  " ]; then..rm -r
0190: 66 20 22 24 7b 54 45 53 54 44 49 52 7d 2f 6b 69  f "${TESTDIR}/ki
01a0: 74 73 22 0a 66 69 0a 0a 23 20 43 72 65 61 74 65  ts".fi..# Create
01b0: 20 70 6c 61 63 65 20 74 6f 20 70 75 74 20 6b 69   place to put ki
01c0: 74 73 0a 6d 6b 64 69 72 20 22 24 7b 54 45 53 54  ts.mkdir "${TEST
01d0: 44 49 52 7d 2f 6b 69 74 73 22 20 3e 2f 64 65 76  DIR}/kits" >/dev
01e0: 2f 6e 75 6c 6c 20 32 3e 2f 64 65 76 2f 6e 75 6c  /null 2>/dev/nul
01f0: 6c 0a 6d 6b 64 69 72 20 22 24 7b 54 45 53 54 44  l.mkdir "${TESTD
0200: 49 52 7d 2f 6b 69 74 73 2f 66 61 69 6c 65 64 22  IR}/kits/failed"
0210: 20 3e 2f 64 65 76 2f 6e 75 6c 6c 20 32 3e 2f 64   >/dev/null 2>/d
0220: 65 76 2f 6e 75 6c 6c 0a 69 66 20 5b 20 21 20 2d  ev/null.if [ ! -
0230: 64 20 22 24 7b 54 45 53 54 44 49 52 7d 2f 6b 69  d "${TESTDIR}/ki
0240: 74 73 22 20 5d 3b 20 74 68 65 6e 0a 09 65 63 68  ts" ]; then..ech
0250: 6f 20 27 55 6e 61 62 6c 65 20 74 6f 20 63 72 65  o 'Unable to cre
0260: 61 74 65 20 6b 69 74 73 2f 20 64 69 72 65 63 74  ate kits/ direct
0270: 6f 72 79 2c 20 61 62 6f 72 74 69 6e 67 2e 27 20  ory, aborting.' 
0280: 3e 26 32 0a 0a 09 65 78 69 74 20 31 0a 66 69 0a  >&2...exit 1.fi.
0290: 0a 23 20 43 6c 65 61 6e 75 70 0a 66 6f 72 20 66  .# Cleanup.for f
02a0: 69 6c 65 20 69 6e 20 22 24 7b 54 45 53 54 44 49  ile in "${TESTDI
02b0: 52 7d 22 2f 6b 69 74 73 2f 2a 2e 6c 6f 67 3b 20  R}"/kits/*.log; 
02c0: 64 6f 0a 09 69 66 20 65 63 68 6f 20 22 24 7b 66  do..if echo "${f
02d0: 69 6c 65 7d 22 20 7c 20 67 72 65 70 20 2d 2d 20  ile}" | grep -- 
02e0: 27 2d 62 75 69 6c 64 2e 6c 6f 67 24 27 20 3e 2f  '-build.log$' >/
02f0: 64 65 76 2f 6e 75 6c 6c 3b 20 74 68 65 6e 0a 09  dev/null; then..
0300: 09 63 6f 6e 74 69 6e 75 65 0a 09 66 69 0a 0a 09  .continue..fi...
0310: 72 6d 20 2d 66 20 22 24 7b 66 69 6c 65 7d 22 0a  rm -f "${file}".
0320: 64 6f 6e 65 0a 0a 23 20 44 69 73 61 62 6c 65 20  done..# Disable 
0330: 57 49 4e 45 20 64 65 62 75 67 67 69 6e 67 0a 57  WINE debugging.W
0340: 49 4e 45 50 52 45 46 49 58 33 32 3d 22 24 7b 54  INEPREFIX32="${T
0350: 45 53 54 44 49 52 7d 2f 2e 77 69 6e 65 22 0a 57  ESTDIR}/.wine".W
0360: 49 4e 45 50 52 45 46 49 58 36 34 3d 22 24 7b 54  INEPREFIX64="${T
0370: 45 53 54 44 49 52 7d 2f 2e 77 69 6e 65 36 34 22  ESTDIR}/.wine64"
0380: 0a 65 78 70 6f 72 74 20 57 49 4e 45 50 52 45 46  .export WINEPREF
0390: 49 58 33 32 20 57 49 4e 45 50 52 45 46 49 58 36  IX32 WINEPREFIX6
03a0: 34 0a 72 6d 20 2d 72 66 20 22 24 7b 57 49 4e 45  4.rm -rf "${WINE
03b0: 50 52 45 46 49 58 33 32 7d 22 20 22 24 7b 57 49  PREFIX32}" "${WI
03c0: 4e 45 50 52 45 46 49 58 36 34 7d 22 0a 6d 6b 64  NEPREFIX64}".mkd
03d0: 69 72 20 22 24 7b 57 49 4e 45 50 52 45 46 49 58  ir "${WINEPREFIX
03e0: 33 32 7d 22 20 22 24 7b 57 49 4e 45 50 52 45 46  32}" "${WINEPREF
03f0: 49 58 36 34 7d 22 0a 0a 63 61 74 20 3c 3c 20 5c  IX64}"..cat << \
0400: 5f 45 4f 46 5f 20 3e 20 22 24 7b 57 49 4e 45 50  _EOF_ > "${WINEP
0410: 52 45 46 49 58 33 32 7d 2f 75 70 64 61 74 65 2d  REFIX32}/update-
0420: 72 65 67 22 0a 5b 48 4b 45 59 5f 4c 4f 43 41 4c  reg".[HKEY_LOCAL
0430: 5f 4d 41 43 48 49 4e 45 5c 53 6f 66 74 77 61 72  _MACHINE\Softwar
0440: 65 5c 4d 69 63 72 6f 73 6f 66 74 5c 57 69 6e 64  e\Microsoft\Wind
0450: 6f 77 73 20 4e 54 5c 43 75 72 72 65 6e 74 56 65  ows NT\CurrentVe
0460: 72 73 69 6f 6e 5c 41 65 44 65 62 75 67 5d 0a 22  rsion\AeDebug]."
0470: 41 75 74 6f 22 3d 64 77 6f 72 64 3a 30 30 30 30  Auto"=dword:0000
0480: 30 30 30 31 0a 22 44 65 62 75 67 67 65 72 22 3d  0001."Debugger"=
0490: 22 66 61 6c 73 65 22 0a 5f 45 4f 46 5f 0a 63 70  "false"._EOF_.cp
04a0: 20 22 24 7b 57 49 4e 45 50 52 45 46 49 58 33 32   "${WINEPREFIX32
04b0: 7d 2f 75 70 64 61 74 65 2d 72 65 67 22 20 22 24  }/update-reg" "$
04c0: 7b 57 49 4e 45 50 52 45 46 49 58 36 34 7d 2f 75  {WINEPREFIX64}/u
04d0: 70 64 61 74 65 2d 72 65 67 22 0a 0a 57 49 4e 45  pdate-reg"..WINE
04e0: 50 52 45 46 49 58 3d 22 24 7b 57 49 4e 45 50 52  PREFIX="${WINEPR
04f0: 45 46 49 58 33 32 7d 22 20 72 65 67 65 64 69 74  EFIX32}" regedit
0500: 20 22 24 7b 57 49 4e 45 50 52 45 46 49 58 33 32   "${WINEPREFIX32
0510: 7d 2f 75 70 64 61 74 65 2d 72 65 67 22 20 3e 2f  }/update-reg" >/
0520: 64 65 76 2f 6e 75 6c 6c 20 32 3e 2f 64 65 76 2f  dev/null 2>/dev/
0530: 6e 75 6c 6c 0a 57 49 4e 45 50 52 45 46 49 58 3d  null.WINEPREFIX=
0540: 22 24 7b 57 49 4e 45 50 52 45 46 49 58 36 34 7d  "${WINEPREFIX64}
0550: 22 20 72 65 67 65 64 69 74 20 22 24 7b 57 49 4e  " regedit "${WIN
0560: 45 50 52 45 46 49 58 36 34 7d 2f 75 70 64 61 74  EPREFIX64}/updat
0570: 65 2d 72 65 67 22 20 3e 2f 64 65 76 2f 6e 75 6c  e-reg" >/dev/nul
0580: 6c 20 32 3e 2f 64 65 76 2f 6e 75 6c 6c 0a 0a 23  l 2>/dev/null..#
0590: 20 53 74 61 72 74 20 58 76 66 62 20 66 6f 72 20   Start Xvfb for 
05a0: 58 31 31 2d 62 61 73 65 64 20 74 65 73 74 73 0a  X11-based tests.
05b0: 58 56 46 42 5f 50 49 44 3d 22 24 28 0a 09 58 76  XVFB_PID="$(..Xv
05c0: 66 62 20 3a 33 31 20 2d 73 63 72 65 65 6e 20 30  fb :31 -screen 0
05d0: 20 38 30 30 78 36 30 30 78 32 34 20 2d 6e 6f 6c   800x600x24 -nol
05e0: 69 73 74 65 6e 20 74 63 70 20 3e 2f 64 65 76 2f  isten tcp >/dev/
05f0: 6e 75 6c 6c 20 32 3e 2f 64 65 76 2f 6e 75 6c 6c  null 2>/dev/null
0600: 20 26 0a 09 65 63 68 6f 20 22 24 21 22 0a 29 22   &..echo "$!".)"
0610: 0a 44 49 53 50 4c 41 59 3d 3a 33 31 0a 65 78 70  .DISPLAY=:31.exp
0620: 6f 72 74 20 44 49 53 50 4c 41 59 0a 0a 69 66 20  ort DISPLAY..if 
0630: 5b 20 2d 7a 20 22 24 7b 4b 43 5f 54 45 53 54 5f  [ -z "${KC_TEST_
0640: 4b 49 54 53 7d 22 20 5d 3b 20 74 68 65 6e 0a 09  KITS}" ]; then..
0650: 6b 69 74 73 3d 22 6c 69 6e 75 78 2d 61 6d 64 36  kits="linux-amd6
0660: 34 20 6c 69 6e 75 78 2d 61 6d 64 36 34 2d 7a 69  4 linux-amd64-zi
0670: 70 20 6c 69 6e 75 78 2d 61 6d 64 36 34 2d 74 68  p linux-amd64-th
0680: 72 65 61 64 65 64 20 6c 69 6e 75 78 2d 61 6d 64  readed linux-amd
0690: 36 34 2d 74 68 72 65 61 64 65 64 2d 7a 69 70 20  64-threaded-zip 
06a0: 6c 69 6e 75 78 2d 61 6d 64 36 34 2d 73 74 61 74  linux-amd64-stat
06b0: 69 63 74 6b 20 6c 69 6e 75 78 2d 61 6d 64 36 34  ictk linux-amd64
06c0: 2d 6e 6f 74 6b 20 6c 69 6e 75 78 2d 61 6d 64 36  -notk linux-amd6
06d0: 34 2d 74 68 72 65 61 64 65 64 2d 6e 6f 74 6b 20  4-threaded-notk 
06e0: 6c 69 6e 75 78 2d 61 6d 64 36 34 2d 74 68 72 65  linux-amd64-thre
06f0: 61 64 65 64 2d 7a 69 70 2d 6e 6f 74 6b 20 6c 69  aded-zip-notk li
0700: 6e 75 78 2d 61 6d 64 36 34 2d 6e 6f 6d 6b 34 20  nux-amd64-nomk4 
0710: 6c 69 6e 75 78 2d 61 6d 64 36 34 2d 64 65 62 75  linux-amd64-debu
0720: 67 20 6d 69 6e 20 6d 69 6e 2d 73 74 61 74 69 63  g min min-static
0730: 20 6c 69 6e 75 78 2d 61 6d 64 36 34 2d 6b 69 74   linux-amd64-kit
0740: 64 6c 6c 20 6c 69 6e 75 78 2d 61 6d 64 36 34 2d  dll linux-amd64-
0750: 74 68 72 65 61 64 65 64 2d 6b 69 74 64 6c 6c 20  threaded-kitdll 
0760: 6c 69 6e 75 78 2d 61 6d 64 36 34 2d 6e 6f 74 6b  linux-amd64-notk
0770: 2d 6b 69 74 64 6c 6c 20 6c 69 6e 75 78 2d 61 6d  -kitdll linux-am
0780: 64 36 34 2d 6e 6f 6d 6b 34 2d 6b 69 74 64 6c 6c  d64-nomk4-kitdll
0790: 20 6c 69 6e 75 78 2d 61 6d 64 36 34 2d 6e 6f 6d   linux-amd64-nom
07a0: 6b 34 2d 6e 6f 74 6b 2d 6b 69 74 64 6c 6c 20 6c  k4-notk-kitdll l
07b0: 69 6e 75 78 2d 61 6d 64 36 34 2d 74 68 72 65 61  inux-amd64-threa
07c0: 64 65 64 2d 6e 6f 6d 6b 34 2d 6b 69 74 64 6c 6c  ded-nomk4-kitdll
07d0: 20 6c 69 6e 75 78 2d 61 6d 64 36 34 2d 74 68 72   linux-amd64-thr
07e0: 65 61 64 65 64 2d 6e 6f 74 6b 2d 6e 6f 6d 6b 34  eaded-notk-nomk4
07f0: 2d 6b 69 74 64 6c 6c 20 6c 69 6e 75 78 2d 61 6d  -kitdll linux-am
0800: 64 36 34 2d 64 65 62 75 67 2d 6b 69 74 64 6c 6c  d64-debug-kitdll
0810: 20 6d 69 6e 2d 6b 69 74 64 6c 6c 20 77 69 6e 33   min-kitdll win3
0820: 32 2d 69 35 38 36 20 77 69 6e 33 32 2d 69 35 38  2-i586 win32-i58
0830: 36 2d 7a 69 70 20 77 69 6e 33 32 2d 69 35 38 36  6-zip win32-i586
0840: 2d 74 68 72 65 61 64 65 64 20 77 69 6e 33 32 2d  -threaded win32-
0850: 69 35 38 36 2d 74 68 72 65 61 64 65 64 2d 7a 69  i586-threaded-zi
0860: 70 20 77 69 6e 33 32 2d 69 35 38 36 2d 6e 6f 74  p win32-i586-not
0870: 6b 20 77 69 6e 33 32 2d 69 35 38 36 2d 74 68 72  k win32-i586-thr
0880: 65 61 64 65 64 2d 6e 6f 74 6b 20 77 69 6e 33 32  eaded-notk win32
0890: 2d 69 35 38 36 2d 6e 6f 6d 6b 34 20 77 69 6e 33  -i586-nomk4 win3
08a0: 32 2d 69 35 38 36 2d 6b 69 74 64 6c 6c 20 77 69  2-i586-kitdll wi
08b0: 6e 33 32 2d 69 35 38 36 2d 74 68 72 65 61 64 65  n32-i586-threade
08c0: 64 2d 6b 69 74 64 6c 6c 20 77 69 6e 33 32 2d 69  d-kitdll win32-i
08d0: 35 38 36 2d 6e 6f 74 6b 2d 6b 69 74 64 6c 6c 20  586-notk-kitdll 
08e0: 77 69 6e 33 32 2d 69 35 38 36 2d 6e 6f 6d 6b 34  win32-i586-nomk4
08f0: 2d 6b 69 74 64 6c 6c 20 77 69 6e 33 32 2d 69 35  -kitdll win32-i5
0900: 38 36 2d 6e 6f 6d 6b 34 2d 6e 6f 74 6b 2d 6b 69  86-nomk4-notk-ki
0910: 74 64 6c 6c 20 77 69 6e 33 32 2d 69 35 38 36 2d  tdll win32-i586-
0920: 74 68 72 65 61 64 65 64 2d 6e 6f 6d 6b 34 2d 6b  threaded-nomk4-k
0930: 69 74 64 6c 6c 20 77 69 6e 33 32 2d 69 35 38 36  itdll win32-i586
0940: 2d 74 68 72 65 61 64 65 64 2d 6e 6f 74 6b 2d 6e  -threaded-notk-n
0950: 6f 6d 6b 34 2d 6b 69 74 64 6c 6c 20 77 69 6e 36  omk4-kitdll win6
0960: 34 2d 61 6d 64 36 34 20 77 69 6e 36 34 2d 61 6d  4-amd64 win64-am
0970: 64 36 34 2d 7a 69 70 20 77 69 6e 36 34 2d 61 6d  d64-zip win64-am
0980: 64 36 34 2d 74 68 72 65 61 64 65 64 20 77 69 6e  d64-threaded win
0990: 36 34 2d 61 6d 64 36 34 2d 74 68 72 65 61 64 65  64-amd64-threade
09a0: 64 2d 7a 69 70 20 77 69 6e 36 34 2d 61 6d 64 36  d-zip win64-amd6
09b0: 34 2d 6e 6f 74 6b 20 77 69 6e 36 34 2d 61 6d 64  4-notk win64-amd
09c0: 36 34 2d 74 68 72 65 61 64 65 64 2d 6e 6f 74 6b  64-threaded-notk
09d0: 20 77 69 6e 36 34 2d 61 6d 64 36 34 2d 6e 6f 6d   win64-amd64-nom
09e0: 6b 34 20 77 69 6e 36 34 2d 61 6d 64 36 34 2d 6b  k4 win64-amd64-k
09f0: 69 74 64 6c 6c 20 77 69 6e 36 34 2d 61 6d 64 36  itdll win64-amd6
0a00: 34 2d 74 68 72 65 61 64 65 64 2d 6b 69 74 64 6c  4-threaded-kitdl
0a10: 6c 20 77 69 6e 36 34 2d 61 6d 64 36 34 2d 6e 6f  l win64-amd64-no
0a20: 74 6b 2d 6b 69 74 64 6c 6c 20 77 69 6e 36 34 2d  tk-kitdll win64-
0a30: 61 6d 64 36 34 2d 6e 6f 6d 6b 34 2d 6b 69 74 64  amd64-nomk4-kitd
0a40: 6c 6c 20 77 69 6e 36 34 2d 61 6d 64 36 34 2d 6e  ll win64-amd64-n
0a50: 6f 6d 6b 34 2d 6e 6f 74 6b 2d 6b 69 74 64 6c 6c  omk4-notk-kitdll
0a60: 20 77 69 6e 36 34 2d 61 6d 64 36 34 2d 74 68 72   win64-amd64-thr
0a70: 65 61 64 65 64 2d 6e 6f 6d 6b 34 2d 6b 69 74 64  eaded-nomk4-kitd
0a80: 6c 6c 20 77 69 6e 36 34 2d 61 6d 64 36 34 2d 74  ll win64-amd64-t
0a90: 68 72 65 61 64 65 64 2d 6e 6f 74 6b 2d 6e 6f 6d  hreaded-notk-nom
0aa0: 6b 34 2d 6b 69 74 64 6c 6c 20 6c 69 6e 75 78 2d  k4-kitdll linux-
0ab0: 6d 69 70 73 65 6c 2d 6e 6f 74 6b 20 6c 69 6e 75  mipsel-notk linu
0ac0: 78 2d 6d 69 70 73 65 6c 2d 6e 6f 74 6b 2d 6b 69  x-mipsel-notk-ki
0ad0: 74 64 6c 6c 20 6c 69 6e 75 78 2d 69 33 38 36 20  tdll linux-i386 
0ae0: 6c 69 6e 75 78 2d 69 33 38 36 2d 64 65 62 75 67  linux-i386-debug
0af0: 20 6c 69 6e 75 78 2d 69 33 38 36 2d 6b 69 74 64   linux-i386-kitd
0b00: 6c 6c 20 6c 69 6e 75 78 2d 69 33 38 36 2d 64 65  ll linux-i386-de
0b10: 62 75 67 2d 6b 69 74 64 6c 6c 20 6c 69 6e 75 78  bug-kitdll linux
0b20: 2d 69 33 38 36 2d 6e 6f 74 6b 20 6c 69 6e 75 78  -i386-notk linux
0b30: 2d 69 33 38 36 2d 6e 6f 74 6b 2d 64 65 62 75 67  -i386-notk-debug
0b40: 20 6c 69 6e 75 78 2d 69 33 38 36 2d 6e 6f 74 6b   linux-i386-notk
0b50: 2d 6b 69 74 64 6c 6c 20 6c 69 6e 75 78 2d 69 33  -kitdll linux-i3
0b60: 38 36 2d 6e 6f 74 6b 2d 64 65 62 75 67 2d 6b 69  86-notk-debug-ki
0b70: 74 64 6c 6c 20 73 6f 6c 61 72 69 73 2d 69 33 38  tdll solaris-i38
0b80: 36 20 73 6f 6c 61 72 69 73 2d 69 33 38 36 2d 64  6 solaris-i386-d
0b90: 65 62 75 67 20 73 6f 6c 61 72 69 73 2d 69 33 38  ebug solaris-i38
0ba0: 36 2d 6b 69 74 64 6c 6c 20 73 6f 6c 61 72 69 73  6-kitdll solaris
0bb0: 2d 69 33 38 36 2d 64 65 62 75 67 2d 6b 69 74 64  -i386-debug-kitd
0bc0: 6c 6c 20 73 6f 6c 61 72 69 73 2d 61 6d 64 36 34  ll solaris-amd64
0bd0: 20 73 6f 6c 61 72 69 73 2d 61 6d 64 36 34 2d 64   solaris-amd64-d
0be0: 65 62 75 67 20 73 6f 6c 61 72 69 73 2d 61 6d 64  ebug solaris-amd
0bf0: 36 34 2d 6b 69 74 64 6c 6c 20 73 6f 6c 61 72 69  64-kitdll solari
0c00: 73 2d 61 6d 64 36 34 2d 64 65 62 75 67 2d 6b 69  s-amd64-debug-ki
0c10: 74 64 6c 6c 20 73 6f 6c 61 72 69 73 2d 73 70 61  tdll solaris-spa
0c20: 72 63 20 73 6f 6c 61 72 69 73 2d 73 70 61 72 63  rc solaris-sparc
0c30: 2d 64 65 62 75 67 20 73 6f 6c 61 72 69 73 2d 73  -debug solaris-s
0c40: 70 61 72 63 2d 6b 69 74 64 6c 6c 20 73 6f 6c 61  parc-kitdll sola
0c50: 72 69 73 2d 73 70 61 72 63 2d 64 65 62 75 67 2d  ris-sparc-debug-
0c60: 6b 69 74 64 6c 6c 20 73 6f 6c 61 72 69 73 2d 73  kitdll solaris-s
0c70: 70 61 72 63 36 34 20 73 6f 6c 61 72 69 73 2d 73  parc64 solaris-s
0c80: 70 61 72 63 36 34 2d 64 65 62 75 67 20 73 6f 6c  parc64-debug sol
0c90: 61 72 69 73 2d 73 70 61 72 63 36 34 2d 6b 69 74  aris-sparc64-kit
0ca0: 64 6c 6c 20 73 6f 6c 61 72 69 73 2d 73 70 61 72  dll solaris-spar
0cb0: 63 36 34 2d 64 65 62 75 67 2d 6b 69 74 64 6c 6c  c64-debug-kitdll
0cc0: 20 66 72 65 65 62 73 64 2d 61 6d 64 36 34 20 66   freebsd-amd64 f
0cd0: 72 65 65 62 73 64 2d 61 6d 64 36 34 2d 64 65 62  reebsd-amd64-deb
0ce0: 75 67 20 66 72 65 65 62 73 64 2d 61 6d 64 36 34  ug freebsd-amd64
0cf0: 2d 6b 69 74 64 6c 6c 20 66 72 65 65 62 73 64 2d  -kitdll freebsd-
0d00: 61 6d 64 36 34 2d 64 65 62 75 67 2d 6b 69 74 64  amd64-debug-kitd
0d10: 6c 6c 20 6e 65 74 62 73 64 2d 69 33 38 36 2d 6e  ll netbsd-i386-n
0d20: 6f 74 6b 20 6e 65 74 62 73 64 2d 69 33 38 36 2d  otk netbsd-i386-
0d30: 6e 6f 74 6b 2d 64 65 62 75 67 20 6e 65 74 62 73  notk-debug netbs
0d40: 64 2d 69 33 38 36 2d 6e 6f 74 6b 2d 6b 69 74 64  d-i386-notk-kitd
0d50: 6c 6c 20 6e 65 74 62 73 64 2d 69 33 38 36 2d 6e  ll netbsd-i386-n
0d60: 6f 74 6b 2d 64 65 62 75 67 2d 6b 69 74 64 6c 6c  otk-debug-kitdll
0d70: 20 6e 65 74 62 73 64 2d 61 6d 64 36 34 20 6e 65   netbsd-amd64 ne
0d80: 74 62 73 64 2d 61 6d 64 36 34 2d 64 65 62 75 67  tbsd-amd64-debug
0d90: 20 6e 65 74 62 73 64 2d 61 6d 64 36 34 2d 6b 69   netbsd-amd64-ki
0da0: 74 64 6c 6c 20 6e 65 74 62 73 64 2d 61 6d 64 36  tdll netbsd-amd6
0db0: 34 2d 64 65 62 75 67 2d 6b 69 74 64 6c 6c 20 61  4-debug-kitdll a
0dc0: 6e 64 72 6f 69 64 2d 61 72 6d 2d 6e 6f 74 6b 20  ndroid-arm-notk 
0dd0: 61 6e 64 72 6f 69 64 2d 61 72 6d 2d 6e 6f 74 6b  android-arm-notk
0de0: 2d 64 65 62 75 67 20 61 6e 64 72 6f 69 64 2d 61  -debug android-a
0df0: 72 6d 2d 6e 6f 74 6b 2d 6b 69 74 64 6c 6c 20 61  rm-notk-kitdll a
0e00: 6e 64 72 6f 69 64 2d 61 72 6d 2d 6e 6f 74 6b 2d  ndroid-arm-notk-
0e10: 64 65 62 75 67 2d 6b 69 74 64 6c 6c 22 0a 65 6c  debug-kitdll".el
0e20: 73 65 0a 09 6b 69 74 73 3d 22 24 7b 4b 43 5f 54  se..kits="${KC_T
0e30: 45 53 54 5f 4b 49 54 53 7d 22 0a 66 69 0a 0a 66  EST_KITS}".fi..f
0e40: 61 69 6c 65 64 3d 22 22 0a 66 6f 72 20 6b 69 74  ailed="".for kit
0e50: 20 69 6e 20 24 6b 69 74 73 3b 20 64 6f 0a 09 6b   in $kits; do..k
0e60: 69 74 63 72 65 61 74 6f 72 3d 22 2e 2f 6b 69 74  itcreator="./kit
0e70: 63 72 65 61 74 6f 72 22 0a 09 61 72 67 73 3d 22  creator"..args="
0e80: 22 0a 09 72 75 6e 6e 61 62 6c 65 3d 22 31 22 0a  "..runnable="1".
0e90: 09 69 73 7a 69 70 3d 22 30 22 0a 09 73 74 61 74  .iszip="0"..stat
0ea0: 69 63 74 6b 3d 22 30 22 0a 09 6e 6f 74 6b 3d 22  ictk="0"..notk="
0eb0: 30 22 0a 09 6e 6f 6d 6b 34 3d 22 30 22 0a 09 78  0"..nomk4="0"..x
0ec0: 63 6f 6d 70 69 6c 65 3d 22 30 22 0a 09 6b 69 74  compile="0"..kit
0ed0: 64 6c 6c 3d 22 30 22 0a 09 6b 69 74 72 75 6e 63  dll="0"..kitrunc
0ee0: 6d 64 3d 22 22 0a 0a 09 23 20 48 61 6e 64 6c 65  md=""...# Handle
0ef0: 20 62 61 73 65 20 63 6f 6e 66 69 67 75 72 61 74   base configurat
0f00: 69 6f 6e 0a 09 6f 73 3d 22 24 28 75 6e 61 6d 65  ion..os="$(uname
0f10: 20 2d 73 20 7c 20 64 64 20 63 6f 6e 76 3d 6c 63   -s | dd conv=lc
0f20: 61 73 65 20 32 3e 2f 64 65 76 2f 6e 75 6c 6c 29  ase 2>/dev/null)
0f30: 22 0a 09 63 70 75 3d 22 24 28 75 6e 61 6d 65 20  "..cpu="$(uname 
0f40: 2d 6d 20 7c 20 64 64 20 63 6f 6e 76 3d 6c 63 61  -m | dd conv=lca
0f50: 73 65 20 32 3e 2f 64 65 76 2f 6e 75 6c 6c 20 7c  se 2>/dev/null |
0f60: 20 73 65 64 20 27 73 40 78 38 36 5f 36 34 40 61   sed 's@x86_64@a
0f70: 6d 64 36 34 40 3b 73 40 69 2e 38 36 40 69 33 38  md64@;s@i.86@i38
0f80: 36 40 27 29 22 0a 09 63 61 73 65 20 22 24 7b 6b  6@')"..case "${k
0f90: 69 74 7d 22 20 69 6e 0a 09 09 6e 6f 72 6d 61 6c  it}" in...normal
0fa0: 7c 6e 6f 72 6d 61 6c 2d 2a 29 0a 09 09 09 6b 69  |normal-*)....ki
0fb0: 74 3d 22 24 28 65 63 68 6f 20 22 24 7b 6b 69 74  t="$(echo "${kit
0fc0: 7d 22 20 7c 20 73 65 64 20 22 73 40 5e 6e 6f 72  }" | sed "s@^nor
0fd0: 6d 61 6c 40 24 6f 73 2d 24 63 70 75 40 22 29 22  mal@$os-$cpu@")"
0fe0: 0a 09 09 09 3b 3b 0a 09 09 6d 69 6e 7c 6d 69 6e  ....;;...min|min
0ff0: 2d 6b 69 74 64 6c 6c 29 0a 09 09 09 6b 69 74 63  -kitdll)....kitc
1000: 72 65 61 74 6f 72 3d 22 2e 2f 62 75 69 6c 64 2f  reator="./build/
1010: 6d 61 6b 65 2d 6d 69 6e 6b 69 74 22 0a 09 09 09  make-minkit"....
1020: 69 73 7a 69 70 3d 22 31 22 0a 09 09 09 6e 6f 74  iszip="1"....not
1030: 6b 3d 22 31 22 0a 09 09 09 6b 69 74 3d 22 24 28  k="1"....kit="$(
1040: 65 63 68 6f 20 22 24 7b 6b 69 74 7d 22 20 7c 20  echo "${kit}" | 
1050: 73 65 64 20 22 73 40 5e 6d 69 6e 40 24 6f 73 2d  sed "s@^min@$os-
1060: 24 63 70 75 2d 6d 69 6e 40 22 29 22 0a 09 09 09  $cpu-min@")"....
1070: 3b 3b 0a 09 09 6d 69 6e 2d 73 74 61 74 69 63 29  ;;...min-static)
1080: 0a 09 09 09 6b 69 74 63 72 65 61 74 6f 72 3d 22  ....kitcreator="
1090: 2e 2f 62 75 69 6c 64 2f 6d 61 6b 65 2d 6d 69 6e  ./build/make-min
10a0: 6b 69 74 2d 73 74 61 74 69 63 22 0a 09 09 09 69  kit-static"....i
10b0: 73 7a 69 70 3d 22 31 22 0a 09 09 09 6e 6f 74 6b  szip="1"....notk
10c0: 3d 22 31 22 0a 09 09 09 6b 69 74 3d 22 24 7b 6f  ="1"....kit="${o
10d0: 73 7d 2d 24 7b 63 70 75 7d 2d 6d 69 6e 2d 73 74  s}-${cpu}-min-st
10e0: 61 74 69 63 22 0a 09 09 09 3b 3b 0a 09 09 77 69  atic"....;;...wi
10f0: 6e 33 32 7c 77 69 6e 33 32 2d 2a 29 0a 09 09 09  n32|win32-*)....
1100: 6b 69 74 63 72 65 61 74 6f 72 3d 22 2e 2f 62 75  kitcreator="./bu
1110: 69 6c 64 2f 6d 61 6b 65 2d 6b 69 74 2d 77 69 6e  ild/make-kit-win
1120: 33 32 22 0a 09 09 09 78 63 6f 6d 70 69 6c 65 3d  32"....xcompile=
1130: 22 31 22 0a 09 09 09 72 75 6e 6e 61 62 6c 65 3d  "1"....runnable=
1140: 22 31 22 0a 09 09 09 6b 69 74 72 75 6e 63 6d 64  "1"....kitruncmd
1150: 3d 22 77 69 6e 65 22 0a 09 09 09 3b 3b 0a 09 09  ="wine"....;;...
1160: 77 69 6e 36 34 7c 77 69 6e 36 34 2d 2a 29 0a 09  win64|win64-*)..
1170: 09 09 6b 69 74 63 72 65 61 74 6f 72 3d 22 2e 2f  ..kitcreator="./
1180: 62 75 69 6c 64 2f 6d 61 6b 65 2d 6b 69 74 2d 77  build/make-kit-w
1190: 69 6e 36 34 22 0a 09 09 09 78 63 6f 6d 70 69 6c  in64"....xcompil
11a0: 65 3d 22 31 22 0a 09 09 09 72 75 6e 6e 61 62 6c  e="1"....runnabl
11b0: 65 3d 22 31 22 0a 09 09 09 6b 69 74 72 75 6e 63  e="1"....kitrunc
11c0: 6d 64 3d 22 77 69 6e 65 36 34 22 0a 09 09 09 3b  md="wine64"....;
11d0: 3b 0a 09 09 6c 69 6e 75 78 2d 6d 69 70 73 65 6c  ;...linux-mipsel
11e0: 2d 6d 69 6e 7c 6c 69 6e 75 78 2d 6d 69 70 73 65  -min|linux-mipse
11f0: 6c 2d 6d 69 6e 2d 6b 69 74 64 6c 6c 29 0a 09 09  l-min-kitdll)...
1200: 09 6b 69 74 63 72 65 61 74 6f 72 3d 22 2e 2f 62  .kitcreator="./b
1210: 75 69 6c 64 2f 6d 61 6b 65 2d 6b 69 74 2d 6c 69  uild/make-kit-li
1220: 6e 75 78 2d 6d 69 70 73 65 6c 22 0a 09 09 09 72  nux-mipsel"....r
1230: 75 6e 6e 61 62 6c 65 3d 22 30 22 0a 09 09 09 78  unnable="0"....x
1240: 63 6f 6d 70 69 6c 65 3d 22 31 22 0a 09 09 09 6e  compile="1"....n
1250: 6f 74 6b 3d 22 31 22 0a 09 09 09 69 73 7a 69 70  otk="1"....iszip
1260: 3d 22 31 22 0a 09 09 09 3b 3b 0a 09 09 6c 69 6e  ="1"....;;...lin
1270: 75 78 2d 61 6d 64 36 34 7c 6c 69 6e 75 78 2d 61  ux-amd64|linux-a
1280: 6d 64 36 34 2d 2a 29 0a 09 09 09 6b 69 74 63 72  md64-*)....kitcr
1290: 65 61 74 6f 72 3d 22 2e 2f 62 75 69 6c 64 2f 6d  eator="./build/m
12a0: 61 6b 65 2d 6b 69 74 2d 6c 69 6e 75 78 2d 61 6d  ake-kit-linux-am
12b0: 64 36 34 22 0a 09 09 09 78 63 6f 6d 70 69 6c 65  d64"....xcompile
12c0: 3d 22 30 22 0a 09 09 09 72 75 6e 6e 61 62 6c 65  ="0"....runnable
12d0: 3d 22 31 22 0a 09 09 09 3b 3b 0a 09 09 6c 69 6e  ="1"....;;...lin
12e0: 75 78 2d 69 33 38 36 7c 6c 69 6e 75 78 2d 69 33  ux-i386|linux-i3
12f0: 38 36 2d 2a 29 0a 09 09 09 6b 69 74 63 72 65 61  86-*)....kitcrea
1300: 74 6f 72 3d 22 2e 2f 62 75 69 6c 64 2f 6d 61 6b  tor="./build/mak
1310: 65 2d 6b 69 74 2d 6c 69 6e 75 78 2d 69 33 38 36  e-kit-linux-i386
1320: 22 0a 09 09 09 78 63 6f 6d 70 69 6c 65 3d 22 31  "....xcompile="1
1330: 22 0a 09 09 09 72 75 6e 6e 61 62 6c 65 3d 22 30  "....runnable="0
1340: 22 0a 09 09 09 3b 3b 0a 09 09 61 6e 64 72 6f 69  "....;;...androi
1350: 64 2d 61 72 6d 7c 61 6e 64 72 6f 69 64 2d 61 72  d-arm|android-ar
1360: 6d 2d 2a 7c 5c 0a 09 09 6c 69 6e 75 78 2d 6d 69  m-*|\...linux-mi
1370: 70 73 65 6c 7c 6c 69 6e 75 78 2d 6d 69 70 73 65  psel|linux-mipse
1380: 6c 2d 2a 7c 5c 0a 09 09 73 6f 6c 61 72 69 73 2d  l-*|\...solaris-
1390: 69 33 38 36 7c 73 6f 6c 61 72 69 73 2d 69 33 38  i386|solaris-i38
13a0: 36 2d 2a 7c 5c 0a 09 09 73 6f 6c 61 72 69 73 2d  6-*|\...solaris-
13b0: 61 6d 64 36 34 7c 73 6f 6c 61 72 69 73 2d 61 6d  amd64|solaris-am
13c0: 64 36 34 2d 2a 7c 5c 0a 09 09 73 6f 6c 61 72 69  d64-*|\...solari
13d0: 73 2d 73 70 61 72 63 7c 73 6f 6c 61 72 69 73 2d  s-sparc|solaris-
13e0: 73 70 61 72 63 2d 2a 7c 5c 0a 09 09 73 6f 6c 61  sparc-*|\...sola
13f0: 72 69 73 2d 73 70 61 72 63 36 34 7c 73 6f 6c 61  ris-sparc64|sola
1400: 72 69 73 2d 73 70 61 72 63 36 34 2d 2a 7c 5c 0a  ris-sparc64-*|\.
1410: 09 09 66 72 65 65 62 73 64 2d 61 6d 64 36 34 7c  ..freebsd-amd64|
1420: 66 72 65 65 62 73 64 2d 61 6d 64 36 34 2d 2a 7c  freebsd-amd64-*|
1430: 5c 0a 09 09 6e 65 74 62 73 64 2d 69 33 38 36 7c  \...netbsd-i386|
1440: 6e 65 74 62 73 64 2d 69 33 38 36 2d 2a 7c 5c 0a  netbsd-i386-*|\.
1450: 09 09 6e 65 74 62 73 64 2d 61 6d 64 36 34 7c 6e  ..netbsd-amd64|n
1460: 65 74 62 73 64 2d 61 6d 64 36 34 2d 2a 7c 5c 0a  etbsd-amd64-*|\.
1470: 09 09 68 70 75 78 2d 68 70 70 61 36 34 7c 68 70  ..hpux-hppa64|hp
1480: 75 78 2d 68 70 70 61 36 34 2d 2a 29 0a 09 09 09  ux-hppa64-*)....
1490: 70 6c 61 74 66 6f 72 6d 3d 22 24 28 65 63 68 6f  platform="$(echo
14a0: 20 22 24 7b 6b 69 74 7d 22 20 7c 20 63 75 74 20   "${kit}" | cut 
14b0: 2d 66 20 31 2d 32 20 2d 64 20 27 2d 27 29 22 0a  -f 1-2 -d '-')".
14c0: 09 09 09 6b 69 74 63 72 65 61 74 6f 72 3d 22 2e  ...kitcreator=".
14d0: 2f 62 75 69 6c 64 2f 6d 61 6b 65 2d 6b 69 74 2d  /build/make-kit-
14e0: 24 7b 70 6c 61 74 66 6f 72 6d 7d 22 0a 09 09 09  ${platform}"....
14f0: 72 75 6e 6e 61 62 6c 65 3d 22 30 22 0a 09 09 09  runnable="0"....
1500: 78 63 6f 6d 70 69 6c 65 3d 22 31 22 0a 09 09 09  xcompile="1"....
1510: 69 73 7a 69 70 3d 22 30 22 0a 0a 09 09 09 3b 3b  iszip="0".....;;
1520: 0a 09 65 73 61 63 0a 0a 09 69 66 20 65 63 68 6f  ..esac...if echo
1530: 20 22 24 7b 6b 69 74 7d 22 20 7c 20 65 67 72 65   "${kit}" | egre
1540: 70 20 2d 2d 20 27 2d 28 68 70 70 61 36 34 7c 61  p -- '-(hppa64|a
1550: 6d 64 36 34 7c 73 70 61 72 63 36 34 29 28 2d 7c  md64|sparc64)(-|
1560: 24 29 27 20 3e 2f 64 65 76 2f 6e 75 6c 6c 3b 20  $)' >/dev/null; 
1570: 74 68 65 6e 0a 09 09 61 72 67 73 3d 22 24 7b 61  then...args="${a
1580: 72 67 73 7d 20 2d 2d 65 6e 61 62 6c 65 2d 36 34  rgs} --enable-64
1590: 62 69 74 22 0a 09 66 69 0a 0a 09 63 61 73 65 20  bit"..fi...case 
15a0: 22 24 7b 6b 69 74 72 75 6e 63 6d 64 7d 22 20 69  "${kitruncmd}" i
15b0: 6e 0a 09 09 77 69 6e 65 29 0a 09 09 09 57 49 4e  n...wine)....WIN
15c0: 45 50 52 45 46 49 58 3d 22 24 7b 57 49 4e 45 50  EPREFIX="${WINEP
15d0: 52 45 46 49 58 33 32 7d 22 0a 09 09 09 65 78 70  REFIX32}"....exp
15e0: 6f 72 74 20 57 49 4e 45 50 52 45 46 49 58 0a 09  ort WINEPREFIX..
15f0: 09 09 3b 3b 0a 09 09 77 69 6e 65 36 34 29 0a 09  ..;;...wine64)..
1600: 09 09 57 49 4e 45 50 52 45 46 49 58 3d 22 24 7b  ..WINEPREFIX="${
1610: 57 49 4e 45 50 52 45 46 49 58 36 34 7d 22 0a 09  WINEPREFIX64}"..
1620: 09 09 65 78 70 6f 72 74 20 57 49 4e 45 50 52 45  ..export WINEPRE
1630: 46 49 58 0a 09 09 09 3b 3b 0a 09 65 73 61 63 0a  FIX....;;..esac.
1640: 0a 09 69 66 20 5b 20 22 24 7b 78 63 6f 6d 70 69  ..if [ "${xcompi
1650: 6c 65 7d 22 20 21 3d 20 22 30 22 20 5d 3b 20 74  le}" != "0" ]; t
1660: 68 65 6e 0a 09 09 6b 69 74 3d 22 24 7b 6b 69 74  hen...kit="${kit
1670: 7d 2d 78 63 6f 6d 70 69 6c 65 22 0a 09 66 69 0a  }-xcompile"..fi.
1680: 0a 09 23 20 48 61 6e 64 6c 65 20 61 64 64 69 74  ..# Handle addit
1690: 69 6f 6e 61 6c 20 63 6f 6e 66 69 67 75 72 61 74  ional configurat
16a0: 69 6f 6e 0a 09 74 65 6d 70 6b 69 74 3d 22 2d 24  ion..tempkit="-$
16b0: 7b 6b 69 74 7d 2d 22 0a 09 66 6f 72 20 74 72 79  {kit}-"..for try
16c0: 20 69 6e 20 31 20 32 20 33 20 34 20 35 20 36 20   in 1 2 3 4 5 6 
16d0: 37 20 38 20 39 3b 20 64 6f 0a 09 09 63 61 73 65  7 8 9; do...case
16e0: 20 22 2d 24 7b 74 65 6d 70 6b 69 74 7d 2d 22 20   "-${tempkit}-" 
16f0: 69 6e 0a 09 09 09 2a 2d 74 68 72 65 61 64 65 64  in....*-threaded
1700: 2d 2a 29 0a 09 09 09 09 74 65 6d 70 6b 69 74 3d  -*).....tempkit=
1710: 22 24 28 65 63 68 6f 20 22 24 7b 74 65 6d 70 6b  "$(echo "${tempk
1720: 69 74 7d 22 20 7c 20 73 65 64 20 27 73 40 2d 74  it}" | sed 's@-t
1730: 68 72 65 61 64 65 64 2d 40 2d 40 27 29 22 0a 09  hreaded-@-@')"..
1740: 09 09 09 61 72 67 73 3d 22 24 7b 61 72 67 73 7d  ...args="${args}
1750: 20 2d 2d 65 6e 61 62 6c 65 2d 74 68 72 65 61 64   --enable-thread
1760: 73 22 0a 09 09 09 09 3b 3b 0a 09 09 09 2a 2d 7a  s".....;;....*-z
1770: 69 70 2d 2a 29 0a 09 09 09 09 74 65 6d 70 6b 69  ip-*).....tempki
1780: 74 3d 22 24 28 65 63 68 6f 20 22 24 7b 74 65 6d  t="$(echo "${tem
1790: 70 6b 69 74 7d 22 20 7c 20 73 65 64 20 27 73 40  pkit}" | sed 's@
17a0: 2d 7a 69 70 2d 40 2d 40 27 29 22 0a 09 09 09 09  -zip-@-@')".....
17b0: 61 72 67 73 3d 22 24 7b 61 72 67 73 7d 20 2d 2d  args="${args} --
17c0: 65 6e 61 62 6c 65 2d 6b 69 74 2d 73 74 6f 72 61  enable-kit-stora
17d0: 67 65 3d 7a 69 70 22 0a 09 09 09 09 69 73 7a 69  ge=zip".....iszi
17e0: 70 3d 22 31 22 0a 09 09 09 09 3b 3b 0a 09 09 09  p="1".....;;....
17f0: 2a 2d 73 74 61 74 69 63 74 6b 2d 2a 29 0a 09 09  *-statictk-*)...
1800: 09 09 74 65 6d 70 6b 69 74 3d 22 24 28 65 63 68  ..tempkit="$(ech
1810: 6f 20 22 24 7b 74 65 6d 70 6b 69 74 7d 22 20 7c  o "${tempkit}" |
1820: 20 73 65 64 20 27 73 40 2d 73 74 61 74 69 63 74   sed 's@-statict
1830: 6b 2d 40 2d 40 27 29 22 0a 09 09 09 09 69 66 20  k-@-@')".....if 
1840: 5b 20 22 24 7b 6e 6f 74 6b 7d 22 20 3d 20 22 30  [ "${notk}" = "0
1850: 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09 09 09 73  " ]; then......s
1860: 74 61 74 69 63 74 6b 3d 22 31 22 0a 09 09 09 09  tatictk="1".....
1870: 65 6c 73 65 0a 09 09 09 09 09 65 63 68 6f 20 22  else......echo "
1880: 24 7b 6b 69 74 7d 3a 20 55 6e 61 62 6c 65 20 74  ${kit}: Unable t
1890: 6f 20 63 72 65 61 74 65 20 53 74 61 74 69 63 54  o create StaticT
18a0: 6b 20 61 6e 64 20 4e 6f 54 6b 2c 20 69 67 6e 6f  k and NoTk, igno
18b0: 72 69 6e 67 20 53 74 61 74 69 63 54 6b 22 20 3e  ring StaticTk" >
18c0: 26 32 0a 09 09 09 09 66 69 0a 09 09 09 09 3b 3b  &2.....fi.....;;
18d0: 0a 09 09 09 2a 2d 6e 6f 74 6b 2d 2a 29 0a 09 09  ....*-notk-*)...
18e0: 09 09 74 65 6d 70 6b 69 74 3d 22 24 28 65 63 68  ..tempkit="$(ech
18f0: 6f 20 22 24 7b 74 65 6d 70 6b 69 74 7d 22 20 7c  o "${tempkit}" |
1900: 20 73 65 64 20 27 73 40 2d 6e 6f 74 6b 2d 40 2d   sed 's@-notk-@-
1910: 40 27 29 22 0a 09 09 09 09 69 66 20 5b 20 22 24  @')".....if [ "$
1920: 7b 73 74 61 74 69 63 74 6b 7d 22 20 3d 20 22 30  {statictk}" = "0
1930: 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09 09 09 6e  " ]; then......n
1940: 6f 74 6b 3d 22 31 22 0a 09 09 09 09 65 6c 73 65  otk="1".....else
1950: 0a 09 09 09 09 09 65 63 68 6f 20 22 24 7b 6b 69  ......echo "${ki
1960: 74 7d 3a 20 55 6e 61 62 6c 65 20 74 6f 20 63 72  t}: Unable to cr
1970: 65 61 74 65 20 53 74 61 74 69 63 54 6b 20 61 6e  eate StaticTk an
1980: 64 20 4e 6f 54 6b 2c 20 69 67 6e 6f 72 69 6e 67  d NoTk, ignoring
1990: 20 4e 6f 54 6b 22 20 3e 26 32 0a 09 09 09 09 66   NoTk" >&2.....f
19a0: 69 0a 09 09 09 09 3b 3b 0a 09 09 09 2a 2d 6e 6f  i.....;;....*-no
19b0: 6d 6b 34 2d 2a 29 0a 09 09 09 09 74 65 6d 70 6b  mk4-*).....tempk
19c0: 69 74 3d 22 24 28 65 63 68 6f 20 22 24 7b 74 65  it="$(echo "${te
19d0: 6d 70 6b 69 74 7d 22 20 7c 20 73 65 64 20 27 73  mpkit}" | sed 's
19e0: 40 2d 6e 6f 6d 6b 34 2d 40 2d 40 27 29 22 0a 09  @-nomk4-@-@')"..
19f0: 09 09 09 6e 6f 6d 6b 34 3d 22 31 22 0a 09 09 09  ...nomk4="1"....
1a00: 09 69 73 7a 69 70 3d 22 31 22 0a 09 09 09 09 3b  .iszip="1".....;
1a10: 3b 0a 09 09 09 2a 2d 6b 69 74 64 6c 6c 2d 2a 29  ;....*-kitdll-*)
1a20: 0a 09 09 09 09 74 65 6d 70 6b 69 74 3d 22 24 28  .....tempkit="$(
1a30: 65 63 68 6f 20 22 24 7b 74 65 6d 70 6b 69 74 7d  echo "${tempkit}
1a40: 22 20 7c 20 73 65 64 20 27 73 40 2d 6b 69 74 64  " | sed 's@-kitd
1a50: 6c 6c 2d 40 2d 40 27 29 22 0a 09 09 09 09 6b 69  ll-@-@')".....ki
1a60: 74 64 6c 6c 3d 22 31 22 0a 09 09 09 09 3b 3b 0a  tdll="1".....;;.
1a70: 09 09 09 2a 2d 64 65 62 75 67 2d 2a 29 0a 09 09  ...*-debug-*)...
1a80: 09 09 74 65 6d 70 6b 69 74 3d 22 24 28 65 63 68  ..tempkit="$(ech
1a90: 6f 20 22 24 7b 74 65 6d 70 6b 69 74 7d 22 20 7c  o "${tempkit}" |
1aa0: 20 73 65 64 20 27 73 40 2d 64 65 62 75 67 2d 40   sed 's@-debug-@
1ab0: 2d 40 27 29 22 0a 09 09 09 09 61 72 67 73 3d 22  -@')".....args="
1ac0: 24 7b 61 72 67 73 7d 20 2d 2d 65 6e 61 62 6c 65  ${args} --enable
1ad0: 2d 73 79 6d 62 6f 6c 73 22 0a 09 09 09 09 3b 3b  -symbols".....;;
1ae0: 0a 09 09 65 73 61 63 0a 09 64 6f 6e 65 0a 0a 09  ...esac..done...
1af0: 69 66 20 5b 20 22 24 7b 6b 69 74 64 6c 6c 7d 22  if [ "${kitdll}"
1b00: 20 3d 20 22 31 22 20 5d 3b 20 74 68 65 6e 0a 09   = "1" ]; then..
1b10: 09 23 20 43 75 72 72 65 6e 74 6c 79 20 6e 6f 20  .# Currently no 
1b20: 4b 69 74 44 4c 4c 20 75 73 65 73 20 5a 69 70 0a  KitDLL uses Zip.
1b30: 09 09 69 73 7a 69 70 3d 22 30 22 0a 09 66 69 0a  ..iszip="0"..fi.
1b40: 0a 09 66 6f 72 20 76 65 72 73 69 6f 6e 20 69 6e  ..for version in
1b50: 20 24 7b 56 45 52 53 49 4f 4e 53 7d 3b 20 64 6f   ${VERSIONS}; do
1b60: 0a 09 09 23 20 57 6f 72 6b 20 61 72 6f 75 6e 64  ...# Work around
1b70: 20 63 68 61 6e 67 65 73 20 69 6e 20 64 65 66 61   changes in defa
1b80: 75 6c 74 20 62 65 68 61 76 69 6f 75 72 0a 09 09  ult behaviour...
1b90: 63 61 73 65 20 22 24 7b 76 65 72 73 69 6f 6e 7d  case "${version}
1ba0: 22 20 69 6e 0a 09 09 09 38 2e 36 2e 2a 7c 63 76  " in....8.6.*|cv
1bb0: 73 5f 48 45 41 44 29 0a 09 09 09 09 6b 69 74 3d  s_HEAD).....kit=
1bc0: 22 24 28 65 63 68 6f 20 22 24 7b 6b 69 74 7d 22  "$(echo "${kit}"
1bd0: 20 7c 20 73 65 64 20 27 73 40 2d 74 68 72 65 61   | sed 's@-threa
1be0: 64 65 64 40 2d 75 6e 74 68 72 65 61 64 65 64 40  ded@-unthreaded@
1bf0: 27 29 22 0a 09 09 09 09 61 72 67 73 3d 22 24 28  ')".....args="$(
1c00: 65 63 68 6f 20 22 24 7b 61 72 67 73 7d 22 20 7c  echo "${args}" |
1c10: 20 73 65 64 20 27 73 40 20 2d 2d 65 6e 61 62 6c   sed 's@ --enabl
1c20: 65 2d 74 68 72 65 61 64 73 40 20 2d 2d 64 69 73  e-threads@ --dis
1c30: 61 62 6c 65 2d 74 68 72 65 61 64 73 40 27 29 22  able-threads@')"
1c40: 0a 09 09 09 09 3b 3b 0a 09 09 65 73 61 63 0a 0a  .....;;...esac..
1c50: 09 09 23 20 43 72 65 61 74 65 20 54 63 6c 6b 69  ..# Create Tclki
1c60: 74 0a 09 09 69 66 20 5b 20 22 24 7b 6b 69 74 64  t...if [ "${kitd
1c70: 6c 6c 7d 22 20 3d 20 22 31 22 20 5d 3b 20 74 68  ll}" = "1" ]; th
1c80: 65 6e 0a 09 09 09 63 72 65 61 74 65 64 6b 69 74  en....createdkit
1c90: 3d 22 6c 69 62 74 63 6c 6b 69 74 2a 2e 64 6c 6c  ="libtclkit*.dll
1ca0: 20 6c 69 62 74 63 6c 6b 69 74 2a 2e 2a 22 0a 09   libtclkit*.*"..
1cb0: 09 09 6f 75 74 70 75 74 6e 61 6d 65 3d 22 24 7b  ..outputname="${
1cc0: 54 45 53 54 44 49 52 7d 2f 6b 69 74 73 2f 6c 69  TESTDIR}/kits/li
1cd0: 62 74 63 6c 6b 69 74 2d 24 7b 76 65 72 73 69 6f  btclkit-${versio
1ce0: 6e 7d 2d 24 7b 6b 69 74 7d 22 0a 09 09 09 66 61  n}-${kit}"....fa
1cf0: 69 6c 6f 75 74 70 75 74 6e 61 6d 65 3d 22 24 7b  iloutputname="${
1d00: 54 45 53 54 44 49 52 7d 2f 6b 69 74 73 2f 66 61  TESTDIR}/kits/fa
1d10: 69 6c 65 64 2f 6c 69 62 74 63 6c 6b 69 74 2d 24  iled/libtclkit-$
1d20: 7b 76 65 72 73 69 6f 6e 7d 2d 24 7b 6b 69 74 7d  {version}-${kit}
1d30: 22 0a 09 09 09 73 64 6b 3d 22 6c 69 62 74 63 6c  "....sdk="libtcl
1d40: 6b 69 74 2d 73 64 6b 2d 24 7b 76 65 72 73 69 6f  kit-sdk-${versio
1d50: 6e 7d 2e 74 61 72 2e 67 7a 22 0a 09 09 65 6c 73  n}.tar.gz"...els
1d60: 65 0a 09 09 09 63 72 65 61 74 65 64 6b 69 74 3d  e....createdkit=
1d70: 22 74 63 6c 6b 69 74 2d 24 7b 76 65 72 73 69 6f  "tclkit-${versio
1d80: 6e 7d 22 0a 09 09 09 6f 75 74 70 75 74 6e 61 6d  n}"....outputnam
1d90: 65 3d 22 24 7b 54 45 53 54 44 49 52 7d 2f 6b 69  e="${TESTDIR}/ki
1da0: 74 73 2f 74 63 6c 6b 69 74 2d 24 7b 76 65 72 73  ts/tclkit-${vers
1db0: 69 6f 6e 7d 2d 24 7b 6b 69 74 7d 22 0a 09 09 09  ion}-${kit}"....
1dc0: 66 61 69 6c 6f 75 74 70 75 74 6e 61 6d 65 3d 22  failoutputname="
1dd0: 24 7b 54 45 53 54 44 49 52 7d 2f 6b 69 74 73 2f  ${TESTDIR}/kits/
1de0: 66 61 69 6c 65 64 2f 74 63 6c 6b 69 74 2d 24 7b  failed/tclkit-${
1df0: 76 65 72 73 69 6f 6e 7d 2d 24 7b 6b 69 74 7d 22  version}-${kit}"
1e00: 0a 09 09 09 73 64 6b 3d 27 27 0a 09 09 66 69 0a  ....sdk=''...fi.
1e10: 09 09 62 75 69 6c 64 6c 6f 67 3d 22 24 7b 6f 75  ..buildlog="${ou
1e20: 74 70 75 74 6e 61 6d 65 7d 2d 62 75 69 6c 64 2e  tputname}-build.
1e30: 6c 6f 67 22 0a 09 09 66 61 69 6c 62 75 69 6c 64  log"...failbuild
1e40: 6c 6f 67 3d 22 24 7b 66 61 69 6c 6f 75 74 70 75  log="${failoutpu
1e50: 74 6e 61 6d 65 7d 2d 62 75 69 6c 64 2e 6c 6f 67  tname}-build.log
1e60: 22 0a 09 09 74 65 73 74 72 65 73 75 6c 74 73 6c  "...testresultsl
1e70: 6f 67 3d 22 24 7b 6f 75 74 70 75 74 6e 61 6d 65  og="${outputname
1e80: 7d 2d 74 65 73 74 73 2e 6c 6f 67 22 0a 0a 09 09  }-tests.log"....
1e90: 69 66 20 5b 20 21 20 2d 66 20 22 24 7b 6f 75 74  if [ ! -f "${out
1ea0: 70 75 74 6e 61 6d 65 7d 22 20 5d 3b 20 74 68 65  putname}" ]; the
1eb0: 6e 0a 09 09 09 75 6e 73 65 74 20 4b 49 54 43 52  n....unset KITCR
1ec0: 45 41 54 4f 52 5f 50 4b 47 53 20 53 54 41 54 49  EATOR_PKGS STATI
1ed0: 43 54 4b 20 53 54 52 49 50 0a 0a 09 09 09 69 66  CTK STRIP.....if
1ee0: 20 5b 20 2d 66 20 22 24 7b 66 61 69 6c 6f 75 74   [ -f "${failout
1ef0: 70 75 74 6e 61 6d 65 7d 22 20 5d 3b 20 74 68 65  putname}" ]; the
1f00: 6e 0a 09 09 09 09 65 63 68 6f 20 22 53 6b 69 70  n.....echo "Skip
1f10: 70 69 6e 67 20 72 65 62 75 69 6c 64 69 6e 67 20  ping rebuilding 
1f20: 66 61 69 6c 65 64 20 6b 69 74 20 24 7b 76 65 72  failed kit ${ver
1f30: 73 69 6f 6e 7d 2f 24 7b 6b 69 74 7d 20 2e 2e 2e  sion}/${kit} ...
1f40: 22 0a 0a 09 09 09 09 66 61 69 6c 65 64 3d 22 24  "......failed="$
1f50: 7b 66 61 69 6c 65 64 7d 20 24 7b 76 65 72 73 69  {failed} ${versi
1f60: 6f 6e 7d 2f 24 7b 6b 69 74 7d 2d 62 75 69 6c 64  on}/${kit}-build
1f70: 22 0a 0a 09 09 09 09 63 6f 6e 74 69 6e 75 65 0a  "......continue.
1f80: 09 09 09 66 69 0a 0a 09 09 09 72 6d 20 2d 66 20  ...fi.....rm -f 
1f90: 74 63 6c 73 68 0a 09 09 09 2e 2f 6b 69 74 63 72  tclsh...../kitcr
1fa0: 65 61 74 6f 72 20 63 6c 65 61 6e 20 3e 2f 64 65  eator clean >/de
1fb0: 76 2f 6e 75 6c 6c 20 32 3e 2f 64 65 76 2f 6e 75  v/null 2>/dev/nu
1fc0: 6c 6c 0a 0a 09 09 09 65 63 68 6f 20 22 43 72 65  ll.....echo "Cre
1fd0: 61 74 69 6e 67 20 54 63 6c 6b 69 74 20 24 7b 76  ating Tclkit ${v
1fe0: 65 72 73 69 6f 6e 7d 2f 24 7b 6b 69 74 7d 2e 2e  ersion}/${kit}..
1ff0: 2e 22 0a 09 09 09 65 63 68 6f 20 22 20 2a 2a 2a  ."....echo " ***
2000: 20 42 75 69 6c 64 20 73 74 61 72 74 65 64 20 24   Build started $
2010: 28 77 68 6f 61 6d 69 29 40 24 28 68 6f 73 74 6e  (whoami)@$(hostn
2020: 61 6d 65 29 20 6f 6e 20 24 28 64 61 74 65 29 22  ame) on $(date)"
2030: 20 3e 20 22 24 7b 62 75 69 6c 64 6c 6f 67 7d 22   > "${buildlog}"
2040: 0a 09 09 09 65 63 68 6f 20 27 27 20 3e 3e 20 22  ....echo '' >> "
2050: 24 7b 62 75 69 6c 64 6c 6f 67 7d 22 0a 09 09 09  ${buildlog}"....
2060: 65 63 68 6f 20 22 20 2a 2a 2a 20 42 75 69 6c 64  echo " *** Build
2070: 20 53 63 72 69 70 74 22 20 3e 3e 20 22 24 7b 62   Script" >> "${b
2080: 75 69 6c 64 6c 6f 67 7d 22 0a 0a 09 09 09 69 66  uildlog}".....if
2090: 20 5b 20 22 24 7b 6e 6f 74 6b 7d 22 20 3d 20 22   [ "${notk}" = "
20a0: 31 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09 09 4b  1" ]; then.....K
20b0: 49 54 43 52 45 41 54 4f 52 5f 50 4b 47 53 3d 27  ITCREATOR_PKGS='
20c0: 69 74 63 6c 20 6d 6b 34 74 63 6c 27 0a 09 09 09  itcl mk4tcl'....
20d0: 66 69 0a 0a 09 09 09 69 66 20 5b 20 22 24 7b 6e  fi.....if [ "${n
20e0: 6f 6d 6b 34 7d 22 20 3d 20 22 31 22 20 5d 3b 20  omk4}" = "1" ]; 
20f0: 74 68 65 6e 0a 09 09 09 09 69 66 20 5b 20 2d 7a  then.....if [ -z
2100: 20 22 24 7b 4b 49 54 43 52 45 41 54 4f 52 5f 50   "${KITCREATOR_P
2110: 4b 47 53 7d 22 20 5d 3b 20 74 68 65 6e 0a 09 09  KGS}" ]; then...
2120: 09 09 09 4b 49 54 43 52 45 41 54 4f 52 5f 50 4b  ...KITCREATOR_PK
2130: 47 53 3d 27 69 74 63 6c 20 74 6b 27 0a 09 09 09  GS='itcl tk'....
2140: 09 65 6c 73 65 0a 09 09 09 09 09 4b 49 54 43 52  .else......KITCR
2150: 45 41 54 4f 52 5f 50 4b 47 53 3d 22 24 28 65 63  EATOR_PKGS="$(ec
2160: 68 6f 20 22 24 7b 4b 49 54 43 52 45 41 54 4f 52  ho "${KITCREATOR
2170: 5f 50 4b 47 53 7d 22 20 7c 20 73 65 64 20 27 73  _PKGS}" | sed 's
2180: 40 6d 6b 34 74 63 6c 40 40 27 29 22 0a 09 09 09  @mk4tcl@@')"....
2190: 09 66 69 0a 09 09 09 66 69 0a 0a 09 09 09 69 66  .fi....fi.....if
21a0: 20 5b 20 22 24 7b 6b 69 74 64 6c 6c 7d 22 20 3d   [ "${kitdll}" =
21b0: 20 22 31 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09   "1" ]; then....
21c0: 09 69 66 20 5b 20 2d 7a 20 22 24 7b 4b 49 54 43  .if [ -z "${KITC
21d0: 52 45 41 54 4f 52 5f 50 4b 47 53 7d 22 20 5d 3b  REATOR_PKGS}" ];
21e0: 20 74 68 65 6e 0a 09 09 09 09 09 4b 49 54 43 52   then......KITCR
21f0: 45 41 54 4f 52 5f 50 4b 47 53 3d 27 74 6b 20 69  EATOR_PKGS='tk i
2200: 74 63 6c 20 6d 6b 34 74 63 6c 20 6b 69 74 64 6c  tcl mk4tcl kitdl
2210: 6c 27 0a 09 09 09 09 65 6c 73 65 0a 09 09 09 09  l'.....else.....
2220: 09 4b 49 54 43 52 45 41 54 4f 52 5f 50 4b 47 53  .KITCREATOR_PKGS
2230: 3d 22 24 7b 4b 49 54 43 52 45 41 54 4f 52 5f 50  ="${KITCREATOR_P
2240: 4b 47 53 7d 20 6b 69 74 64 6c 6c 22 0a 09 09 09  KGS} kitdll"....
2250: 09 66 69 0a 09 09 09 66 69 0a 0a 09 09 09 65 78  .fi....fi.....ex
2260: 70 6f 72 74 20 4b 49 54 43 52 45 41 54 4f 52 5f  port KITCREATOR_
2270: 50 4b 47 53 0a 0a 09 09 09 69 66 20 5b 20 2d 6e  PKGS.....if [ -n
2280: 20 22 24 7b 4b 49 54 43 52 45 41 54 4f 52 5f 50   "${KITCREATOR_P
2290: 4b 47 53 7d 22 20 5d 3b 20 74 68 65 6e 0a 09 09  KGS}" ]; then...
22a0: 09 09 65 63 68 6f 20 22 20 20 4b 49 54 43 52 45  ..echo "  KITCRE
22b0: 41 54 4f 52 5f 50 4b 47 53 3d 5c 22 24 7b 4b 49  ATOR_PKGS=\"${KI
22c0: 54 43 52 45 41 54 4f 52 5f 50 4b 47 53 7d 5c 22  TCREATOR_PKGS}\"
22d0: 22 20 3e 3e 20 22 24 7b 62 75 69 6c 64 6c 6f 67  " >> "${buildlog
22e0: 7d 22 0a 09 09 09 09 65 63 68 6f 20 22 20 20 65  }".....echo "  e
22f0: 78 70 6f 72 74 20 4b 49 54 43 52 45 41 54 4f 52  xport KITCREATOR
2300: 5f 50 4b 47 53 22 20 3e 3e 20 22 24 7b 62 75 69  _PKGS" >> "${bui
2310: 6c 64 6c 6f 67 7d 22 0a 09 09 09 66 69 0a 0a 09  ldlog}"....fi...
2320: 09 09 69 66 20 5b 20 22 24 7b 73 74 61 74 69 63  ..if [ "${static
2330: 74 6b 7d 22 20 3d 20 22 31 22 20 5d 3b 20 74 68  tk}" = "1" ]; th
2340: 65 6e 0a 09 09 09 09 53 54 41 54 49 43 54 4b 3d  en.....STATICTK=
2350: 22 31 22 0a 09 09 09 09 65 78 70 6f 72 74 20 53  "1".....export S
2360: 54 41 54 49 43 54 4b 0a 0a 09 09 09 09 65 63 68  TATICTK......ech
2370: 6f 20 22 20 20 53 54 41 54 49 43 54 4b 3d 5c 22  o "  STATICTK=\"
2380: 24 7b 53 54 41 54 49 43 54 4b 7d 5c 22 22 20 3e  ${STATICTK}\"" >
2390: 3e 20 22 24 7b 62 75 69 6c 64 6c 6f 67 7d 22 0a  > "${buildlog}".
23a0: 09 09 09 09 65 63 68 6f 20 22 20 20 65 78 70 6f  ....echo "  expo
23b0: 72 74 20 53 54 41 54 49 43 54 4b 22 20 3e 3e 20  rt STATICTK" >> 
23c0: 22 24 7b 62 75 69 6c 64 6c 6f 67 7d 22 0a 09 09  "${buildlog}"...
23d0: 09 66 69 0a 0a 09 09 09 69 66 20 65 63 68 6f 20  .fi.....if echo 
23e0: 22 24 7b 61 72 67 73 7d 22 20 7c 20 67 72 65 70  "${args}" | grep
23f0: 20 2d 2d 20 27 2d 2d 65 6e 61 62 6c 65 2d 73 79   -- '--enable-sy
2400: 6d 62 6f 6c 73 27 20 3e 2f 64 65 76 2f 6e 75 6c  mbols' >/dev/nul
2410: 6c 3b 20 74 68 65 6e 0a 09 09 09 09 53 54 52 49  l; then.....STRI
2420: 50 3d 27 74 72 75 65 27 0a 09 09 09 09 65 78 70  P='true'.....exp
2430: 6f 72 74 20 53 54 52 49 50 0a 0a 09 09 09 09 65  ort STRIP......e
2440: 63 68 6f 20 22 20 20 53 54 52 49 50 3d 27 74 72  cho "  STRIP='tr
2450: 75 65 27 22 20 3e 3e 20 22 24 7b 62 75 69 6c 64  ue'" >> "${build
2460: 6c 6f 67 7d 22 0a 09 09 09 09 65 63 68 6f 20 22  log}".....echo "
2470: 20 20 65 78 70 6f 72 74 20 53 54 52 49 50 22 20    export STRIP" 
2480: 3e 3e 20 22 24 7b 62 75 69 6c 64 6c 6f 67 7d 22  >> "${buildlog}"
2490: 0a 09 09 09 66 69 0a 0a 09 09 09 69 66 20 5b 20  ....fi.....if [ 
24a0: 22 24 7b 6b 69 74 63 72 65 61 74 6f 72 7d 22 20  "${kitcreator}" 
24b0: 21 3d 20 22 2e 2f 6b 69 74 63 72 65 61 74 6f 72  != "./kitcreator
24c0: 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09 09 65 63  " ]; then.....ec
24d0: 68 6f 20 22 20 20 6d 6b 64 69 72 20 62 75 69 6c  ho "  mkdir buil
24e0: 64 22 20 3e 3e 20 22 24 7b 62 75 69 6c 64 6c 6f  d" >> "${buildlo
24f0: 67 7d 22 0a 0a 09 09 09 09 23 20 53 65 76 65 72  g}"......# Sever
2500: 61 6c 20 62 75 69 6c 64 20 73 63 72 69 70 74 73  al build scripts
2510: 20 72 65 6c 79 20 6f 6e 20 6d 69 6e 6b 69 74 20   rely on minkit 
2520: 74 6f 20 77 6f 72 6b 0a 09 09 09 09 69 66 20 67  to work.....if g
2530: 72 65 70 20 27 2e 2f 62 75 69 6c 64 2f 6d 61 6b  rep './build/mak
2540: 65 2d 6d 69 6e 6b 69 74 27 20 22 24 7b 6b 69 74  e-minkit' "${kit
2550: 63 72 65 61 74 6f 72 7d 22 20 3e 2f 64 65 76 2f  creator}" >/dev/
2560: 6e 75 6c 6c 20 32 3e 2f 64 65 76 2f 6e 75 6c 6c  null 2>/dev/null
2570: 3b 20 74 68 65 6e 0a 09 09 09 09 09 65 63 68 6f  ; then......echo
2580: 20 22 20 20 63 61 74 20 3c 3c 20 5c 5f 5f 45 4f   "  cat << \__EO
2590: 46 5f 5f 20 3e 20 2e 2f 62 75 69 6c 64 2f 6d 61  F__ > ./build/ma
25a0: 6b 65 2d 6d 69 6e 6b 69 74 22 20 3e 3e 20 22 24  ke-minkit" >> "$
25b0: 7b 62 75 69 6c 64 6c 6f 67 7d 22 0a 09 09 09 09  {buildlog}".....
25c0: 09 73 65 64 20 27 73 40 5e 40 20 20 40 27 20 20  .sed 's@^@  @'  
25d0: 27 2e 2f 62 75 69 6c 64 2f 6d 61 6b 65 2d 6d 69  './build/make-mi
25e0: 6e 6b 69 74 27 20 3e 3e 20 22 24 7b 62 75 69 6c  nkit' >> "${buil
25f0: 64 6c 6f 67 7d 22 0a 09 09 09 09 09 65 63 68 6f  dlog}"......echo
2600: 20 22 20 20 5f 5f 45 4f 46 5f 5f 22 20 3e 3e 20   "  __EOF__" >> 
2610: 22 24 7b 62 75 69 6c 64 6c 6f 67 7d 22 0a 09 09  "${buildlog}"...
2620: 09 09 09 65 63 68 6f 20 27 27 20 3e 3e 20 22 24  ...echo '' >> "$
2630: 7b 62 75 69 6c 64 6c 6f 67 7d 22 0a 09 09 09 09  {buildlog}".....
2640: 66 69 0a 0a 09 09 09 09 23 20 53 65 76 65 72 61  fi......# Severa
2650: 6c 20 62 75 69 6c 64 20 73 63 72 69 70 74 73 20  l build scripts 
2660: 72 65 6c 79 20 6f 6e 20 6d 61 6b 65 2d 6b 69 74  rely on make-kit
2670: 2d 63 72 6f 73 73 63 6f 6d 70 69 6c 65 20 74 6f  -crosscompile to
2680: 20 77 6f 72 6b 0a 09 09 09 09 69 66 20 67 72 65   work.....if gre
2690: 70 20 27 2e 2f 62 75 69 6c 64 2f 6d 61 6b 65 2d  p './build/make-
26a0: 6b 69 74 2d 63 72 6f 73 73 63 6f 6d 70 69 6c 65  kit-crosscompile
26b0: 27 20 22 24 7b 6b 69 74 63 72 65 61 74 6f 72 7d  ' "${kitcreator}
26c0: 22 20 3e 2f 64 65 76 2f 6e 75 6c 6c 20 32 3e 2f  " >/dev/null 2>/
26d0: 64 65 76 2f 6e 75 6c 6c 3b 20 74 68 65 6e 0a 09  dev/null; then..
26e0: 09 09 09 09 65 63 68 6f 20 22 20 20 63 61 74 20  ....echo "  cat 
26f0: 3c 3c 20 5c 5f 5f 45 4f 46 5f 5f 20 3e 20 2e 2f  << \__EOF__ > ./
2700: 62 75 69 6c 64 2f 6d 61 6b 65 2d 6b 69 74 2d 63  build/make-kit-c
2710: 72 6f 73 73 63 6f 6d 70 69 6c 65 22 20 3e 3e 20  rosscompile" >> 
2720: 22 24 7b 62 75 69 6c 64 6c 6f 67 7d 22 0a 09 09  "${buildlog}"...
2730: 09 09 09 73 65 64 20 27 73 40 5e 40 20 20 40 27  ...sed 's@^@  @'
2740: 20 20 27 2e 2f 62 75 69 6c 64 2f 6d 61 6b 65 2d    './build/make-
2750: 6b 69 74 2d 63 72 6f 73 73 63 6f 6d 70 69 6c 65  kit-crosscompile
2760: 27 20 3e 3e 20 22 24 7b 62 75 69 6c 64 6c 6f 67  ' >> "${buildlog
2770: 7d 22 0a 09 09 09 09 09 65 63 68 6f 20 22 20 20  }"......echo "  
2780: 5f 5f 45 4f 46 5f 5f 22 20 3e 3e 20 22 24 7b 62  __EOF__" >> "${b
2790: 75 69 6c 64 6c 6f 67 7d 22 0a 09 09 09 09 09 65  uildlog}"......e
27a0: 63 68 6f 20 27 27 20 3e 3e 20 22 24 7b 62 75 69  cho '' >> "${bui
27b0: 6c 64 6c 6f 67 7d 22 0a 09 09 09 09 66 69 0a 0a  ldlog}".....fi..
27c0: 09 09 09 09 65 63 68 6f 20 22 20 20 63 61 74 20  ....echo "  cat 
27d0: 3c 3c 20 5c 5f 5f 45 4f 46 5f 5f 20 3e 20 24 7b  << \__EOF__ > ${
27e0: 6b 69 74 63 72 65 61 74 6f 72 7d 22 20 3e 3e 20  kitcreator}" >> 
27f0: 22 24 7b 62 75 69 6c 64 6c 6f 67 7d 22 0a 09 09  "${buildlog}"...
2800: 09 09 73 65 64 20 27 73 40 5e 40 20 20 40 27 20  ..sed 's@^@  @' 
2810: 20 22 24 7b 6b 69 74 63 72 65 61 74 6f 72 7d 22   "${kitcreator}"
2820: 20 3e 3e 20 22 24 7b 62 75 69 6c 64 6c 6f 67 7d   >> "${buildlog}
2830: 22 0a 09 09 09 09 65 63 68 6f 20 22 20 20 5f 5f  ".....echo "  __
2840: 45 4f 46 5f 5f 22 20 3e 3e 20 22 24 7b 62 75 69  EOF__" >> "${bui
2850: 6c 64 6c 6f 67 7d 22 0a 09 09 09 09 65 63 68 6f  ldlog}".....echo
2860: 20 27 27 20 3e 3e 20 22 24 7b 62 75 69 6c 64 6c   '' >> "${buildl
2870: 6f 67 7d 22 0a 09 09 09 66 69 0a 09 09 09 65 63  og}"....fi....ec
2880: 68 6f 20 22 20 20 5c 22 24 7b 6b 69 74 63 72 65  ho "  \"${kitcre
2890: 61 74 6f 72 7d 5c 22 20 5c 22 24 7b 76 65 72 73  ator}\" \"${vers
28a0: 69 6f 6e 7d 5c 22 20 24 7b 61 72 67 73 7d 22 20  ion}\" ${args}" 
28b0: 3e 3e 20 22 24 7b 62 75 69 6c 64 6c 6f 67 7d 22  >> "${buildlog}"
28c0: 0a 09 09 09 65 63 68 6f 20 27 27 20 3e 3e 20 22  ....echo '' >> "
28d0: 24 7b 62 75 69 6c 64 6c 6f 67 7d 22 0a 09 09 09  ${buildlog}"....
28e0: 65 63 68 6f 20 27 27 20 3e 3e 20 22 24 7b 62 75  echo '' >> "${bu
28f0: 69 6c 64 6c 6f 67 7d 22 0a 09 09 09 65 63 68 6f  ildlog}"....echo
2900: 20 27 27 20 3e 3e 20 22 24 7b 62 75 69 6c 64 6c   '' >> "${buildl
2910: 6f 67 7d 22 0a 09 09 09 65 63 68 6f 20 22 20 2a  og}"....echo " *
2920: 2a 2a 20 42 75 69 6c 64 20 52 65 73 75 6c 74 73  ** Build Results
2930: 22 20 3e 3e 20 22 24 7b 62 75 69 6c 64 6c 6f 67  " >> "${buildlog
2940: 7d 22 0a 09 09 09 65 63 68 6f 20 27 27 20 3e 3e  }"....echo '' >>
2950: 20 22 24 7b 62 75 69 6c 64 6c 6f 67 7d 22 0a 0a   "${buildlog}"..
2960: 09 09 09 62 75 69 6c 64 66 61 69 6c 65 64 3d 22  ...buildfailed="
2970: 30 22 0a 09 09 09 22 24 7b 6b 69 74 63 72 65 61  0"...."${kitcrea
2980: 74 6f 72 7d 22 20 22 24 7b 76 65 72 73 69 6f 6e  tor}" "${version
2990: 7d 22 20 24 7b 61 72 67 73 7d 20 3e 3e 20 22 24  }" ${args} >> "$
29a0: 7b 62 75 69 6c 64 6c 6f 67 7d 22 20 32 3e 26 31  {buildlog}" 2>&1
29b0: 20 7c 7c 20 62 75 69 6c 64 66 61 69 6c 65 64 3d   || buildfailed=
29c0: 22 31 22 0a 09 09 09 67 72 65 70 20 2d 6e 20 27  "1"....grep -n '
29d0: 5e 27 20 2a 2f 62 75 69 6c 64 2e 6c 6f 67 20 3e  ^' */build.log >
29e0: 3e 20 22 24 7b 62 75 69 6c 64 6c 6f 67 7d 22 20  > "${buildlog}" 
29f0: 32 3e 26 31 0a 0a 09 09 09 69 66 20 5b 20 22 24  2>&1.....if [ "$
2a00: 7b 6b 69 74 64 6c 6c 7d 22 20 3d 20 22 31 22 20  {kitdll}" = "1" 
2a10: 5d 3b 20 74 68 65 6e 0a 09 09 09 09 23 20 43 72  ]; then.....# Cr
2a20: 65 61 74 65 20 74 65 73 74 20 64 72 69 76 65 72  eate test driver
2a30: 73 20 66 6f 72 20 4b 69 74 44 4c 4c 0a 09 09 09  s for KitDLL....
2a40: 09 28 0a 09 09 09 09 09 65 63 68 6f 20 22 22 0a  .(......echo "".
2a50: 09 09 09 09 09 65 63 68 6f 20 22 22 0a 09 09 09  .....echo ""....
2a60: 09 09 65 63 68 6f 20 22 22 0a 09 09 09 09 09 65  ..echo ""......e
2a70: 63 68 6f 20 22 20 2a 2a 2a 20 42 75 69 6c 64 69  cho " *** Buildi
2a80: 6e 67 20 4b 69 74 44 4c 4c 20 74 65 73 74 20 64  ng KitDLL test d
2a90: 72 69 76 65 72 20 28 74 63 6c 73 68 29 22 0a 09  river (tclsh)"..
2aa0: 09 09 09 09 65 63 68 6f 20 22 22 0a 0a 09 09 09  ....echo "".....
2ab0: 09 09 63 64 20 6b 69 74 73 68 2f 62 75 69 6c 64  ..cd kitsh/build
2ac0: 2f 6b 69 74 73 68 2d 2a 2f 20 7c 7c 20 65 78 69  /kitsh-*/ || exi
2ad0: 74 20 31 0a 09 09 09 09 09 6d 61 6b 65 20 74 63  t 1......make tc
2ae0: 6c 73 68 0a 09 09 09 09 09 63 70 20 74 63 6c 73  lsh......cp tcls
2af0: 68 20 2e 2e 2f 2e 2e 2f 2e 2e 2f 0a 09 09 09 09  h ../../../.....
2b00: 29 20 3e 3e 20 22 24 7b 62 75 69 6c 64 6c 6f 67  ) >> "${buildlog
2b10: 7d 22 20 32 3e 26 31 0a 09 09 09 66 69 0a 0a 09  }" 2>&1....fi...
2b20: 09 09 23 20 50 65 72 66 6f 72 6d 20 77 69 6c 64  ..# Perform wild
2b30: 63 61 72 64 20 65 78 70 61 6e 73 69 6f 6e 0a 09  card expansion..
2b40: 09 09 63 72 65 61 74 65 64 6b 69 74 3d 22 24 28  ..createdkit="$(
2b50: 6c 73 20 2d 66 31 20 24 7b 63 72 65 61 74 65 64  ls -f1 ${created
2b60: 6b 69 74 7d 20 32 3e 2f 64 65 76 2f 6e 75 6c 6c  kit} 2>/dev/null
2b70: 20 7c 20 67 72 65 70 20 2d 76 20 27 5c 2e 74 61   | grep -v '\.ta
2b80: 72 5c 2e 67 7a 24 27 20 7c 20 68 65 61 64 20 2d  r\.gz$' | head -
2b90: 6e 20 31 29 22 0a 0a 09 09 09 69 66 20 5b 20 21  n 1)".....if [ !
2ba0: 20 2d 66 20 22 24 7b 63 72 65 61 74 65 64 6b 69   -f "${createdki
2bb0: 74 7d 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09 09  t}" ]; then.....
2bc0: 65 63 68 6f 20 22 46 61 69 6c 65 64 20 74 6f 20  echo "Failed to 
2bd0: 63 72 65 61 74 65 20 6b 69 74 20 24 7b 76 65 72  create kit ${ver
2be0: 73 69 6f 6e 7d 2f 24 7b 6b 69 74 7d 22 20 3e 26  sion}/${kit}" >&
2bf0: 32 0a 0a 09 09 09 09 66 61 69 6c 65 64 3d 22 24  2......failed="$
2c00: 7b 66 61 69 6c 65 64 7d 20 24 7b 76 65 72 73 69  {failed} ${versi
2c10: 6f 6e 7d 2f 24 7b 6b 69 74 7d 2d 62 75 69 6c 64  on}/${kit}-build
2c20: 22 0a 0a 09 09 09 09 74 6f 75 63 68 20 22 24 7b  "......touch "${
2c30: 66 61 69 6c 6f 75 74 70 75 74 6e 61 6d 65 7d 22  failoutputname}"
2c40: 0a 09 09 09 09 6d 76 20 22 24 7b 62 75 69 6c 64  .....mv "${build
2c50: 6c 6f 67 7d 22 20 22 24 7b 66 61 69 6c 62 75 69  log}" "${failbui
2c60: 6c 64 6c 6f 67 7d 22 0a 0a 09 09 09 09 72 6d 20  ldlog}"......rm 
2c70: 2d 66 20 74 63 6c 73 68 0a 0a 09 09 09 09 63 6f  -f tclsh......co
2c80: 6e 74 69 6e 75 65 0a 09 09 09 66 69 0a 0a 09 09  ntinue....fi....
2c90: 09 23 20 56 65 72 69 66 79 20 73 61 6e 69 74 79  .# Verify sanity
2ca0: 20 6f 66 20 63 72 65 61 74 65 64 20 6b 69 74 0a   of created kit.
2cb0: 09 09 09 69 73 73 61 6e 65 3d 31 0a 0a 09 09 09  ...issane=1.....
2cc0: 23 23 20 56 65 72 69 66 79 20 74 68 61 74 20 57  ## Verify that W
2cd0: 69 6e 33 32 20 62 75 69 6c 64 73 20 61 72 65 20  in32 builds are 
2ce0: 6f 66 20 63 6f 72 72 65 63 74 20 74 79 70 65 0a  of correct type.
2cf0: 09 09 09 23 23 20 56 65 72 69 66 79 20 74 68 61  ...## Verify tha
2d00: 74 20 44 4c 4c 20 62 75 69 6c 64 73 20 61 72 65  t DLL builds are
2d10: 20 6f 66 20 63 6f 72 72 65 63 74 20 74 79 70 65   of correct type
2d20: 0a 09 09 09 63 61 73 65 20 22 2d 24 7b 76 65 72  ....case "-${ver
2d30: 73 69 6f 6e 7d 2d 24 7b 6b 69 74 7d 2d 22 20 69  sion}-${kit}-" i
2d40: 6e 0a 09 09 09 09 2a 2d 77 69 6e 5b 33 36 5d 5b  n.....*-win[36][
2d50: 32 34 5d 2d 6b 69 74 64 6c 6c 2d 2a 7c 2a 2d 77  24]-kitdll-*|*-w
2d60: 69 6e 5b 33 36 5d 5b 32 34 5d 2d 2a 2d 6b 69 74  in[36][24]-*-kit
2d70: 64 6c 6c 2d 2a 29 0a 09 09 09 09 09 69 66 20 21  dll-*)......if !
2d80: 20 66 69 6c 65 20 22 24 7b 63 72 65 61 74 65 64   file "${created
2d90: 6b 69 74 7d 22 20 7c 20 67 72 65 70 20 27 4d 53  kit}" | grep 'MS
2da0: 20 57 69 6e 64 6f 77 73 27 20 7c 20 67 72 65 70   Windows' | grep
2db0: 20 27 28 44 4c 4c 29 27 20 3e 2f 64 65 76 2f 6e   '(DLL)' >/dev/n
2dc0: 75 6c 6c 3b 20 74 68 65 6e 0a 09 09 09 09 09 09  ull; then.......
2dd0: 69 73 73 61 6e 65 3d 30 0a 09 09 09 09 09 66 69  issane=0......fi
2de0: 0a 09 09 09 09 09 3b 3b 0a 09 09 09 09 2a 2d 6b  ......;;.....*-k
2df0: 69 74 64 6c 6c 2d 2a 29 0a 09 09 09 09 09 69 66  itdll-*)......if
2e00: 20 21 20 66 69 6c 65 20 22 24 7b 63 72 65 61 74   ! file "${creat
2e10: 65 64 6b 69 74 7d 22 20 7c 20 67 72 65 70 20 27  edkit}" | grep '
2e20: 73 68 61 72 65 64 20 6f 62 6a 65 63 74 27 20 3e  shared object' >
2e30: 2f 64 65 76 2f 6e 75 6c 6c 3b 20 74 68 65 6e 0a  /dev/null; then.
2e40: 09 09 09 09 09 09 69 73 73 61 6e 65 3d 30 0a 09  ......issane=0..
2e50: 09 09 09 09 66 69 0a 09 09 09 09 09 3b 3b 0a 09  ....fi......;;..
2e60: 09 09 09 2a 2d 77 69 6e 5b 33 36 5d 5b 32 34 5d  ...*-win[36][24]
2e70: 2d 6e 6f 74 6b 2d 2a 7c 2a 2d 77 69 6e 5b 33 36  -notk-*|*-win[36
2e80: 5d 5b 32 34 5d 2d 2a 2d 6e 6f 74 6b 2d 2a 29 0a  ][24]-*-notk-*).
2e90: 09 09 09 09 09 69 66 20 21 20 66 69 6c 65 20 22  .....if ! file "
2ea0: 24 7b 63 72 65 61 74 65 64 6b 69 74 7d 22 20 7c  ${createdkit}" |
2eb0: 20 67 72 65 70 20 27 4d 53 20 57 69 6e 64 6f 77   grep 'MS Window
2ec0: 73 27 20 7c 20 67 72 65 70 20 27 28 63 6f 6e 73  s' | grep '(cons
2ed0: 6f 6c 65 29 27 20 3e 2f 64 65 76 2f 6e 75 6c 6c  ole)' >/dev/null
2ee0: 3b 20 74 68 65 6e 0a 09 09 09 09 09 09 65 63 68  ; then.......ech
2ef0: 6f 20 22 4b 69 74 20 66 61 69 6c 65 64 20 73 61  o "Kit failed sa
2f00: 6e 69 74 79 20 63 68 65 63 6b 20 66 6f 72 20 62  nity check for b
2f10: 65 69 6e 67 20 61 20 63 6f 6e 73 6f 6c 65 20 61  eing a console a
2f20: 70 70 6c 69 63 61 74 69 6f 6e 22 20 3e 26 32 0a  pplication" >&2.
2f30: 09 09 09 09 09 09 69 73 73 61 6e 65 3d 30 0a 09  ......issane=0..
2f40: 09 09 09 09 66 69 0a 09 09 09 09 09 3b 3b 0a 09  ....fi......;;..
2f50: 09 09 09 2a 2d 77 69 6e 5b 33 36 5d 5b 32 34 5d  ...*-win[36][24]
2f60: 2d 2a 29 0a 09 09 09 09 09 69 66 20 21 20 66 69  -*)......if ! fi
2f70: 6c 65 20 22 24 7b 63 72 65 61 74 65 64 6b 69 74  le "${createdkit
2f80: 7d 22 20 7c 20 67 72 65 70 20 27 4d 53 20 57 69  }" | grep 'MS Wi
2f90: 6e 64 6f 77 73 27 20 7c 20 67 72 65 70 20 27 28  ndows' | grep '(
2fa0: 47 55 49 29 27 20 3e 2f 64 65 76 2f 6e 75 6c 6c  GUI)' >/dev/null
2fb0: 3b 20 74 68 65 6e 0a 09 09 09 09 09 09 65 63 68  ; then.......ech
2fc0: 6f 20 22 4b 69 74 20 66 61 69 6c 65 64 20 73 61  o "Kit failed sa
2fd0: 6e 69 74 79 20 63 68 65 63 6b 20 66 6f 72 20 62  nity check for b
2fe0: 65 69 6e 67 20 61 20 47 55 49 20 61 70 70 6c 69  eing a GUI appli
2ff0: 63 61 74 69 6f 6e 22 20 3e 26 32 0a 09 09 09 09  cation" >&2.....
3000: 09 09 69 73 73 61 6e 65 3d 30 0a 09 09 09 09 09  ..issane=0......
3010: 66 69 0a 09 09 09 09 09 3b 3b 0a 09 09 09 65 73  fi......;;....es
3020: 61 63 0a 0a 09 09 09 23 23 20 56 65 72 69 66 79  ac.....## Verify
3030: 20 74 68 65 20 62 75 69 6c 64 20 63 6f 6d 70 6c   the build compl
3040: 65 74 65 64 20 77 69 74 68 6f 75 74 20 77 61 72  eted without war
3050: 6e 69 6e 67 73 0a 09 09 09 69 66 20 5b 20 22 24  nings....if [ "$
3060: 7b 62 75 69 6c 64 66 61 69 6c 65 64 7d 22 20 3d  {buildfailed}" =
3070: 20 22 31 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09   "1" ]; then....
3080: 09 65 63 68 6f 20 22 4b 69 74 20 66 61 69 6c 65  .echo "Kit faile
3090: 64 20 73 61 6e 69 74 79 20 63 68 65 63 6b 20 66  d sanity check f
30a0: 6f 72 20 42 75 69 6c 64 69 6e 67 22 20 3e 26 32  or Building" >&2
30b0: 0a 0a 09 09 09 09 69 73 73 61 6e 65 3d 30 0a 09  ......issane=0..
30c0: 09 09 66 69 0a 0a 09 09 09 23 20 4d 61 6b 65 20  ..fi.....# Make 
30d0: 6e 6f 74 65 20 6f 66 20 73 61 6e 69 74 79 20 66  note of sanity f
30e0: 61 69 6c 75 72 65 0a 09 09 09 69 66 20 5b 20 22  ailure....if [ "
30f0: 24 7b 69 73 73 61 6e 65 7d 22 20 21 3d 20 22 31  ${issane}" != "1
3100: 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09 09 65 63  " ]; then.....ec
3110: 68 6f 20 22 4b 69 74 20 66 61 69 6c 65 64 20 73  ho "Kit failed s
3120: 61 6e 69 74 79 20 24 7b 76 65 72 73 69 6f 6e 7d  anity ${version}
3130: 2f 24 7b 6b 69 74 7d 22 20 3e 26 32 0a 0a 09 09  /${kit}" >&2....
3140: 09 09 66 61 69 6c 65 64 3d 22 24 7b 66 61 69 6c  ..failed="${fail
3150: 65 64 7d 20 24 7b 76 65 72 73 69 6f 6e 7d 2f 24  ed} ${version}/$
3160: 7b 6b 69 74 7d 2d 73 61 6e 69 74 79 22 0a 0a 09  {kit}-sanity"...
3170: 09 09 09 6d 76 20 22 24 7b 63 72 65 61 74 65 64  ...mv "${created
3180: 6b 69 74 7d 22 20 22 24 7b 66 61 69 6c 6f 75 74  kit}" "${failout
3190: 70 75 74 6e 61 6d 65 7d 22 0a 09 09 09 09 6d 76  putname}".....mv
31a0: 20 22 24 7b 62 75 69 6c 64 6c 6f 67 7d 22 20 22   "${buildlog}" "
31b0: 24 7b 66 61 69 6c 62 75 69 6c 64 6c 6f 67 7d 22  ${failbuildlog}"
31c0: 0a 0a 09 09 09 09 72 6d 20 2d 66 20 74 63 6c 73  ......rm -f tcls
31d0: 68 0a 0a 09 09 09 09 63 6f 6e 74 69 6e 75 65 0a  h......continue.
31e0: 09 09 09 66 69 0a 0a 09 09 09 23 20 52 65 6e 61  ...fi.....# Rena
31f0: 6d 65 20 63 72 65 61 74 65 64 20 6b 69 74 20 74  me created kit t
3200: 6f 20 66 69 6e 61 6c 20 64 65 73 74 69 6e 61 74  o final destinat
3210: 69 6f 6e 0a 09 09 09 6d 76 20 22 24 7b 63 72 65  ion....mv "${cre
3220: 61 74 65 64 6b 69 74 7d 22 20 22 24 7b 6f 75 74  atedkit}" "${out
3230: 70 75 74 6e 61 6d 65 7d 22 0a 09 09 09 69 66 20  putname}"....if 
3240: 5b 20 2d 66 20 22 74 63 6c 73 68 22 20 5d 3b 20  [ -f "tclsh" ]; 
3250: 74 68 65 6e 0a 09 09 09 09 6d 76 20 22 74 63 6c  then.....mv "tcl
3260: 73 68 22 20 22 24 7b 6f 75 74 70 75 74 6e 61 6d  sh" "${outputnam
3270: 65 7d 2d 74 63 6c 73 68 22 0a 09 09 09 66 69 0a  e}-tclsh"....fi.
3280: 0a 09 09 09 23 20 46 6f 72 20 4b 69 74 44 4c 4c  ....# For KitDLL
3290: 2c 20 6d 61 6b 65 20 61 20 6e 6f 74 65 20 6f 66  , make a note of
32a0: 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 6e 61   the original na
32b0: 6d 65 0a 09 09 09 69 66 20 5b 20 22 24 7b 6b 69  me....if [ "${ki
32c0: 74 64 6c 6c 7d 22 20 3d 20 22 31 22 20 5d 3b 20  tdll}" = "1" ]; 
32d0: 74 68 65 6e 0a 09 09 09 09 65 63 68 6f 20 22 24  then.....echo "$
32e0: 7b 63 72 65 61 74 65 64 6b 69 74 7d 22 20 3e 20  {createdkit}" > 
32f0: 22 24 7b 6f 75 74 70 75 74 6e 61 6d 65 7d 2d 6f  "${outputname}-o
3300: 72 69 67 6e 61 6d 65 22 0a 0a 09 09 09 09 69 66  rigname"......if
3310: 20 5b 20 2d 66 20 22 24 7b 73 64 6b 7d 22 20 5d   [ -f "${sdk}" ]
3320: 3b 20 74 68 65 6e 0a 09 09 09 09 09 6d 76 20 22  ; then......mv "
3330: 24 7b 73 64 6b 7d 22 20 22 24 7b 6f 75 74 70 75  ${sdk}" "${outpu
3340: 74 6e 61 6d 65 7d 2d 73 64 6b 2e 74 61 72 2e 67  tname}-sdk.tar.g
3350: 7a 22 0a 09 09 09 09 09 6f 70 65 6e 73 73 6c 20  z"......openssl 
3360: 73 68 61 31 20 22 24 7b 6f 75 74 70 75 74 6e 61  sha1 "${outputna
3370: 6d 65 7d 2d 73 64 6b 2e 74 61 72 2e 67 7a 22 20  me}-sdk.tar.gz" 
3380: 7c 20 73 65 64 20 27 73 40 5e 2e 2a 3d 20 40 40  | sed 's@^.*= @@
3390: 27 20 3e 20 22 24 7b 6f 75 74 70 75 74 6e 61 6d  ' > "${outputnam
33a0: 65 7d 2d 73 64 6b 2e 74 61 72 2e 67 7a 2e 73 68  e}-sdk.tar.gz.sh
33b0: 61 31 22 0a 09 09 09 09 66 69 0a 09 09 09 66 69  a1".....fi....fi
33c0: 0a 0a 09 09 09 6f 70 65 6e 73 73 6c 20 73 68 61  .....openssl sha
33d0: 31 20 22 24 7b 6f 75 74 70 75 74 6e 61 6d 65 7d  1 "${outputname}
33e0: 22 20 7c 20 73 65 64 20 27 73 40 5e 2e 2a 3d 20  " | sed 's@^.*= 
33f0: 40 40 27 20 3e 20 22 24 7b 6f 75 74 70 75 74 6e  @@' > "${outputn
3400: 61 6d 65 7d 2e 73 68 61 31 22 0a 09 09 66 69 0a  ame}.sha1"...fi.
3410: 0a 09 09 23 20 4e 6f 74 65 20 74 68 65 20 53 48  ...# Note the SH
3420: 41 31 20 68 61 73 20 6f 66 20 74 68 65 20 66 69  A1 has of the fi
3430: 6c 65 0a 09 09 69 66 20 5b 20 2d 66 20 22 24 7b  le...if [ -f "${
3440: 6f 75 74 70 75 74 6e 61 6d 65 7d 2e 73 68 61 31  outputname}.sha1
3450: 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09 65 63 68  " ]; then....ech
3460: 6f 20 22 53 48 41 31 3a 20 24 28 63 61 74 20 22  o "SHA1: $(cat "
3470: 24 7b 6f 75 74 70 75 74 6e 61 6d 65 7d 2e 73 68  ${outputname}.sh
3480: 61 31 22 29 22 0a 09 09 65 6c 73 65 0a 09 09 09  a1")"...else....
3490: 65 63 68 6f 20 22 53 48 41 31 3a 20 6e 6f 74 20  echo "SHA1: not 
34a0: 72 65 63 6f 72 64 65 64 22 0a 09 09 66 69 0a 0a  recorded"...fi..
34b0: 09 09 69 66 20 5b 20 2d 66 20 22 24 7b 6f 75 74  ..if [ -f "${out
34c0: 70 75 74 6e 61 6d 65 7d 2d 73 64 6b 2e 74 61 72  putname}-sdk.tar
34d0: 2e 67 7a 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09  .gz" ]; then....
34e0: 69 66 20 5b 20 2d 66 20 22 24 7b 6f 75 74 70 75  if [ -f "${outpu
34f0: 74 6e 61 6d 65 7d 2d 73 64 6b 2e 74 61 72 2e 67  tname}-sdk.tar.g
3500: 7a 2e 73 68 61 31 22 20 5d 3b 20 74 68 65 6e 0a  z.sha1" ]; then.
3510: 09 09 09 09 65 63 68 6f 20 22 53 44 4b 20 53 48  ....echo "SDK SH
3520: 41 31 3a 20 24 28 63 61 74 20 22 24 7b 6f 75 74  A1: $(cat "${out
3530: 70 75 74 6e 61 6d 65 7d 2d 73 64 6b 2e 74 61 72  putname}-sdk.tar
3540: 2e 67 7a 2e 73 68 61 31 22 29 22 0a 09 09 09 65  .gz.sha1")"....e
3550: 6c 73 65 0a 09 09 09 09 65 63 68 6f 20 22 53 44  lse.....echo "SD
3560: 4b 20 53 48 41 31 3a 20 6e 6f 74 20 72 65 63 6f  K SHA1: not reco
3570: 72 64 65 64 22 0a 09 09 09 66 69 0a 09 09 66 69  rded"....fi...fi
3580: 0a 0a 09 09 23 20 54 65 73 74 20 7a 69 70 20 73  ....# Test zip s
3590: 74 61 74 75 73 0a 09 09 69 66 20 75 6e 7a 69 70  tatus...if unzip
35a0: 20 2d 6c 20 22 24 7b 6f 75 74 70 75 74 6e 61 6d   -l "${outputnam
35b0: 65 7d 22 20 32 3e 26 31 20 7c 20 67 72 65 70 20  e}" 2>&1 | grep 
35c0: 27 62 6f 6f 74 5c 2e 74 63 6c 27 20 3e 2f 64 65  'boot\.tcl' >/de
35d0: 76 2f 6e 75 6c 6c 3b 20 74 68 65 6e 0a 09 09 09  v/null; then....
35e0: 63 61 6e 75 6e 7a 69 70 3d 22 31 22 0a 09 09 65  canunzip="1"...e
35f0: 6c 73 65 0a 09 09 09 63 61 6e 75 6e 7a 69 70 3d  lse....canunzip=
3600: 22 30 22 0a 09 09 66 69 0a 0a 09 09 69 66 20 5b  "0"...fi....if [
3610: 20 22 24 7b 69 73 7a 69 70 7d 22 20 21 3d 20 22   "${iszip}" != "
3620: 24 7b 63 61 6e 75 6e 7a 69 70 7d 22 20 5d 3b 20  ${canunzip}" ]; 
3630: 74 68 65 6e 0a 09 09 09 65 63 68 6f 20 22 46 61  then....echo "Fa
3640: 69 6c 65 64 20 74 6f 20 75 6e 7a 69 70 20 7a 69  iled to unzip zi
3650: 70 6b 69 74 20 6f 72 20 77 61 73 20 61 62 6c 65  pkit or was able
3660: 20 74 6f 20 75 6e 7a 69 70 20 6e 6f 6e 2d 7a 69   to unzip non-zi
3670: 70 6b 69 74 20 24 7b 76 65 72 73 69 6f 6e 7d 2f  pkit ${version}/
3680: 24 7b 6b 69 74 7d 22 20 3e 26 32 0a 0a 09 09 09  ${kit}" >&2.....
3690: 66 61 69 6c 65 64 3d 22 24 7b 66 61 69 6c 65 64  failed="${failed
36a0: 7d 20 24 7b 76 65 72 73 69 6f 6e 7d 2f 24 7b 6b  } ${version}/${k
36b0: 69 74 7d 2d 7a 69 70 22 0a 0a 09 09 09 63 6f 6e  it}-zip".....con
36c0: 74 69 6e 75 65 0a 09 09 66 69 0a 0a 09 09 23 20  tinue...fi....# 
36d0: 44 6f 20 6e 6f 74 20 63 6f 6e 74 69 6e 75 65 20  Do not continue 
36e0: 70 61 73 74 20 68 65 72 65 20 66 6f 72 20 75 6e  past here for un
36f0: 2d 72 75 6e 6e 61 62 6c 65 20 6b 69 74 73 0a 09  -runnable kits..
3700: 09 69 66 20 5b 20 22 24 7b 72 75 6e 6e 61 62 6c  .if [ "${runnabl
3710: 65 7d 22 20 21 3d 20 22 31 22 20 5d 3b 20 74 68  e}" != "1" ]; th
3720: 65 6e 0a 09 09 09 63 6f 6e 74 69 6e 75 65 0a 09  en....continue..
3730: 09 66 69 0a 0a 09 09 23 20 49 66 20 74 68 65 20  .fi....# If the 
3740: 6e 61 6d 65 20 6f 66 20 74 68 65 20 6f 72 69 67  name of the orig
3750: 69 6e 61 6c 20 62 75 69 6c 64 20 6d 61 74 74 65  inal build matte
3760: 72 73 2c 20 73 79 6d 6c 69 6e 6b 20 69 74 20 75  rs, symlink it u
3770: 70 0a 09 09 69 66 20 5b 20 2d 66 20 22 24 7b 6f  p...if [ -f "${o
3780: 75 74 70 75 74 6e 61 6d 65 7d 2d 6f 72 69 67 6e  utputname}-orign
3790: 61 6d 65 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09  ame" ]; then....
37a0: 63 72 65 61 74 65 64 6b 69 74 3d 22 24 28 63 61  createdkit="$(ca
37b0: 74 20 22 24 7b 6f 75 74 70 75 74 6e 61 6d 65 7d  t "${outputname}
37c0: 2d 6f 72 69 67 6e 61 6d 65 22 29 22 0a 0a 09 09  -origname")"....
37d0: 09 6c 6e 20 2d 73 20 22 24 7b 6f 75 74 70 75 74  .ln -s "${output
37e0: 6e 61 6d 65 7d 22 20 22 24 7b 63 72 65 61 74 65  name}" "${create
37f0: 64 6b 69 74 7d 22 0a 09 09 66 69 0a 0a 09 09 23  dkit}"...fi....#
3800: 20 50 65 72 66 6f 72 6d 20 62 61 74 74 65 72 79   Perform battery
3810: 20 6f 66 20 74 65 73 74 73 0a 09 09 23 23 20 43   of tests...## C
3820: 6c 65 61 6e 20 74 65 73 74 73 20 6c 6f 67 0a 09  lean tests log..
3830: 09 72 6d 20 2d 66 20 22 24 7b 74 65 73 74 72 65  .rm -f "${testre
3840: 73 75 6c 74 73 6c 6f 67 7d 22 0a 09 09 66 6f 72  sultslog}"...for
3850: 20 74 65 73 74 73 63 70 20 69 6e 20 22 24 7b 54   testscp in "${T
3860: 45 53 54 44 49 52 7d 22 2f 74 65 73 74 73 2f 2a  ESTDIR}"/tests/*
3870: 2e 74 63 6c 3b 20 64 6f 0a 09 09 09 74 65 73 74  .tcl; do....test
3880: 73 63 70 5f 74 61 67 3d 22 24 28 62 61 73 65 6e  scp_tag="$(basen
3890: 61 6d 65 20 22 24 7b 74 65 73 74 73 63 70 7d 22  ame "${testscp}"
38a0: 20 2e 74 63 6c 29 22 0a 09 09 09 74 65 73 74 73   .tcl)"....tests
38b0: 63 70 70 72 65 3d 22 24 28 64 69 72 6e 61 6d 65  cppre="$(dirname
38c0: 20 22 24 7b 74 65 73 74 73 63 70 7d 22 29 2f 24   "${testscp}")/$
38d0: 7b 74 65 73 74 73 63 70 5f 74 61 67 7d 2e 73 68  {testscp_tag}.sh
38e0: 22 0a 09 09 09 73 63 70 6c 6f 67 66 69 6c 65 3d  "....scplogfile=
38f0: 22 24 7b 6f 75 74 70 75 74 6e 61 6d 65 7d 2d 24  "${outputname}-$
3900: 7b 74 65 73 74 73 63 70 5f 74 61 67 7d 2e 6c 6f  {testscp_tag}.lo
3910: 67 22 0a 0a 09 09 09 23 20 49 66 20 61 20 63 6f  g".....# If a co
3920: 6d 6d 61 6e 64 20 69 73 20 72 65 71 75 69 72 65  mmand is require
3930: 64 20 74 6f 20 73 74 61 72 74 20 74 68 65 20 6b  d to start the k
3940: 69 74 2c 20 70 72 65 70 61 72 65 20 74 6f 20 6b  it, prepare to k
3950: 69 6c 6c 20 69 74 0a 09 09 09 23 20 69 6e 20 63  ill it....# in c
3960: 61 73 65 20 6f 66 20 74 69 6d 65 6f 75 74 2e 0a  ase of timeout..
3970: 09 09 09 23 23 20 54 65 6d 70 6f 72 61 72 69 6c  ...## Temporaril
3980: 79 20 64 69 73 61 62 6c 65 64 20 73 69 6e 63 65  y disabled since
3990: 20 63 75 72 72 65 6e 74 6c 79 20 69 74 20 69 73   currently it is
39a0: 20 63 61 75 73 69 6e 67 0a 09 09 09 23 23 20 6d   causing....## m
39b0: 6f 72 65 20 70 72 6f 62 6c 65 6d 73 20 69 6e 20  ore problems in 
39c0: 74 68 65 20 66 6f 72 6d 20 6f 66 20 74 65 73 74  the form of test
39d0: 73 20 62 65 69 6e 67 20 6b 69 6c 6c 65 64 0a 09  s being killed..
39e0: 09 09 23 23 20 70 72 65 6d 61 74 75 72 65 6c 79  ..## prematurely
39f0: 20 74 68 61 6e 20 77 65 20 61 72 65 20 68 61 76   than we are hav
3a00: 69 6e 67 20 69 73 73 75 65 73 20 77 69 74 68 20  ing issues with 
3a10: 74 65 73 74 73 0a 09 09 09 23 23 20 68 61 6e 67  tests....## hang
3a20: 69 6e 67 0a 09 09 09 6b 69 74 72 75 6e 6b 69 6c  ing....kitrunkil
3a30: 6c 70 69 64 3d 22 22 0a 09 09 09 69 66 20 5b 20  lpid=""....if [ 
3a40: 22 31 22 20 3d 20 22 30 22 20 2d 61 20 2d 6e 20  "1" = "0" -a -n 
3a50: 22 24 7b 6b 69 74 72 75 6e 63 6d 64 7d 22 20 5d  "${kitruncmd}" ]
3a60: 3b 20 74 68 65 6e 0a 09 09 09 09 28 0a 09 09 09  ; then.....(....
3a70: 09 09 73 6c 65 65 70 20 31 32 30 0a 09 09 09 09  ..sleep 120.....
3a80: 09 6b 69 6c 6c 61 6c 6c 20 22 24 28 62 61 73 65  .killall "$(base
3a90: 6e 61 6d 65 20 22 24 7b 6f 75 74 70 75 74 6e 61  name "${outputna
3aa0: 6d 65 7d 22 29 22 20 3e 2f 64 65 76 2f 6e 75 6c  me}")" >/dev/nul
3ab0: 6c 20 32 3e 2f 64 65 76 2f 6e 75 6c 6c 0a 09 09  l 2>/dev/null...
3ac0: 09 09 29 20 3e 2f 64 65 76 2f 6e 75 6c 6c 20 32  ..) >/dev/null 2
3ad0: 3e 2f 64 65 76 2f 6e 75 6c 6c 20 26 0a 09 09 09  >/dev/null &....
3ae0: 09 6b 69 74 72 75 6e 6b 69 6c 6c 70 69 64 3d 22  .kitrunkillpid="
3af0: 24 21 22 0a 09 09 09 66 69 0a 0a 09 09 09 28 0a  $!"....fi.....(.
3b00: 09 09 09 09 69 66 20 5b 20 2d 66 20 22 24 7b 74  ....if [ -f "${t
3b10: 65 73 74 73 63 70 70 72 65 7d 22 20 5d 3b 20 74  estscppre}" ]; t
3b20: 68 65 6e 0a 09 09 09 09 09 2e 20 22 24 7b 74 65  hen....... "${te
3b30: 73 74 73 63 70 70 72 65 7d 22 0a 09 09 09 09 66  stscppre}".....f
3b40: 69 0a 0a 09 09 09 09 69 66 20 5b 20 22 24 7b 6b  i......if [ "${k
3b50: 69 74 64 6c 6c 7d 22 20 3d 20 22 31 22 20 5d 3b  itdll}" = "1" ];
3b60: 20 74 68 65 6e 0a 09 09 09 09 09 24 7b 6b 69 74   then......${kit
3b70: 72 75 6e 63 6d 64 7d 20 22 24 7b 6f 75 74 70 75  runcmd} "${outpu
3b80: 74 6e 61 6d 65 7d 2d 74 63 6c 73 68 22 20 22 24  tname}-tclsh" "$
3b90: 7b 74 65 73 74 73 63 70 7d 22 20 22 24 7b 6f 75  {testscp}" "${ou
3ba0: 74 70 75 74 6e 61 6d 65 7d 22 20 22 24 7b 6b 69  tputname}" "${ki
3bb0: 74 7d 22 20 22 24 7b 76 65 72 73 69 6f 6e 7d 22  t}" "${version}"
3bc0: 0a 09 09 09 09 65 6c 73 65 0a 09 09 09 09 09 24  .....else......$
3bd0: 7b 6b 69 74 72 75 6e 63 6d 64 7d 20 22 24 7b 6f  {kitruncmd} "${o
3be0: 75 74 70 75 74 6e 61 6d 65 7d 22 20 22 24 7b 74  utputname}" "${t
3bf0: 65 73 74 73 63 70 7d 22 20 22 24 7b 6f 75 74 70  estscp}" "${outp
3c00: 75 74 6e 61 6d 65 7d 22 20 22 24 7b 6b 69 74 7d  utname}" "${kit}
3c10: 22 20 22 24 7b 76 65 72 73 69 6f 6e 7d 22 0a 09  " "${version}"..
3c20: 09 09 09 66 69 0a 09 09 09 29 20 3e 20 22 24 7b  ...fi....) > "${
3c30: 73 63 70 6c 6f 67 66 69 6c 65 7d 22 20 32 3e 26  scplogfile}" 2>&
3c40: 31 0a 0a 09 09 09 69 66 20 5b 20 22 24 3f 22 20  1.....if [ "$?" 
3c50: 21 3d 20 22 30 22 20 5d 3b 20 74 68 65 6e 0a 09  != "0" ]; then..
3c60: 09 09 09 65 63 68 6f 20 22 53 63 72 69 70 74 20  ...echo "Script 
3c70: 66 61 69 6c 65 64 3a 20 24 7b 74 65 73 74 73 63  failed: ${testsc
3c80: 70 5f 74 61 67 7d 20 6f 6e 20 24 7b 76 65 72 73  p_tag} on ${vers
3c90: 69 6f 6e 7d 2f 24 7b 6b 69 74 7d 22 20 3e 26 32  ion}/${kit}" >&2
3ca0: 0a 0a 09 09 09 09 66 61 69 6c 65 64 3d 22 24 7b  ......failed="${
3cb0: 66 61 69 6c 65 64 7d 20 24 7b 76 65 72 73 69 6f  failed} ${versio
3cc0: 6e 7d 2f 24 7b 6b 69 74 7d 2d 74 65 73 74 2d 24  n}/${kit}-test-$
3cd0: 7b 74 65 73 74 73 63 70 5f 74 61 67 7d 22 0a 0a  {testscp_tag}"..
3ce0: 09 09 09 09 65 63 68 6f 20 22 24 7b 74 65 73 74  ....echo "${test
3cf0: 73 63 70 5f 74 61 67 7d 3a 20 46 41 49 4c 22 20  scp_tag}: FAIL" 
3d00: 3e 3e 20 20 22 24 7b 74 65 73 74 72 65 73 75 6c  >>  "${testresul
3d10: 74 73 6c 6f 67 7d 22 0a 0a 09 09 09 09 63 6f 6e  tslog}"......con
3d20: 74 69 6e 75 65 0a 09 09 09 66 69 0a 0a 09 09 09  tinue....fi.....
3d30: 23 20 4b 69 6c 6c 20 74 68 65 20 77 61 74 63 68  # Kill the watch
3d40: 64 6f 67 20 66 6f 72 20 74 68 69 73 20 69 74 65  dog for this ite
3d50: 72 61 74 69 6f 6e 0a 09 09 09 69 66 20 5b 20 2d  ration....if [ -
3d60: 6e 20 22 24 7b 6b 69 74 72 75 6e 6b 69 6c 6c 70  n "${kitrunkillp
3d70: 69 64 7d 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09  id}" ]; then....
3d80: 09 6b 69 6c 6c 20 2d 39 20 22 24 7b 6b 69 74 72  .kill -9 "${kitr
3d90: 75 6e 6b 69 6c 6c 70 69 64 7d 22 20 3e 2f 64 65  unkillpid}" >/de
3da0: 76 2f 6e 75 6c 6c 20 32 3e 2f 64 65 76 2f 6e 75  v/null 2>/dev/nu
3db0: 6c 6c 0a 09 09 09 66 69 0a 0a 09 09 09 65 63 68  ll....fi.....ech
3dc0: 6f 20 22 24 7b 74 65 73 74 73 63 70 5f 74 61 67  o "${testscp_tag
3dd0: 7d 3a 20 50 41 53 53 22 20 3e 3e 20 20 22 24 7b  }: PASS" >>  "${
3de0: 74 65 73 74 72 65 73 75 6c 74 73 6c 6f 67 7d 22  testresultslog}"
3df0: 0a 0a 09 09 09 72 6d 20 2d 66 20 22 24 7b 73 63  .....rm -f "${sc
3e00: 70 6c 6f 67 66 69 6c 65 7d 22 0a 09 09 64 6f 6e  plogfile}"...don
3e10: 65 0a 0a 09 09 69 66 20 5b 20 2d 66 20 22 24 7b  e....if [ -f "${
3e20: 6f 75 74 70 75 74 6e 61 6d 65 7d 2d 6f 72 69 67  outputname}-orig
3e30: 6e 61 6d 65 22 20 5d 3b 20 74 68 65 6e 0a 09 09  name" ]; then...
3e40: 09 72 6d 20 2d 66 20 22 24 7b 63 72 65 61 74 65  .rm -f "${create
3e50: 64 6b 69 74 7d 22 0a 09 09 66 69 0a 09 64 6f 6e  dkit}"...fi..don
3e60: 65 0a 64 6f 6e 65 0a 0a 69 66 20 5b 20 2d 6e 20  e.done..if [ -n 
3e70: 22 24 7b 66 61 69 6c 65 64 7d 22 20 5d 3b 20 74  "${failed}" ]; t
3e80: 68 65 6e 0a 09 65 63 68 6f 20 22 46 61 69 6c 65  hen..echo "Faile
3e90: 64 3a 20 24 7b 66 61 69 6c 65 64 7d 22 0a 66 69  d: ${failed}".fi
3ea0: 0a 0a 23 20 43 6c 65 61 6e 75 70 0a 23 23 20 54  ..# Cleanup.## T
3eb0: 65 72 6d 69 6e 61 74 65 20 58 76 66 62 0a 6b 69  erminate Xvfb.ki
3ec0: 6c 6c 20 2d 39 20 22 24 7b 58 56 46 42 5f 50 49  ll -9 "${XVFB_PI
3ed0: 44 7d 22 0a 0a 23 23 20 52 65 6d 6f 76 65 20 77  D}"..## Remove w
3ee0: 69 6e 65 0a 72 6d 20 2d 72 66 20 22 24 7b 57 49  ine.rm -rf "${WI
3ef0: 4e 45 50 52 45 46 49 58 33 32 7d 22 20 22 24 7b  NEPREFIX32}" "${
3f00: 57 49 4e 45 50 52 45 46 49 58 36 34 7d 22 0a 0a  WINEPREFIX64}"..
3f10: 2e 2f 6b 69 74 63 72 65 61 74 6f 72 20 63 6c 65  ./kitcreator cle
3f20: 61 6e 0a 72 6d 20 2d 66 20 74 63 6c 73 68 0a     an.rm -f tclsh.