Hex Artifact Content

Artifact 6aeacbd961b250b7d72114165db0e30e513f3848:


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 35 20 38  RSIONS="8.5.15 8
0020: 2e 36 2e 31 20 63 76 73 5f 48 45 41 44 22 0a 0a  .6.1 cvs_HEAD"..
0030: 23 20 46 69 6e 64 20 74 68 65 20 62 61 73 65 20  # Find the base 
0040: 64 69 72 65 63 74 6f 72 79 0a 66 6f 72 20 78 20  directory.for x 
0050: 69 6e 20 31 20 32 20 33 20 34 20 5f 5f 66 61 69  in 1 2 3 4 __fai
0060: 6c 5f 5f 3b 20 64 6f 0a 09 69 66 20 5b 20 22 24  l__; do..if [ "$
0070: 7b 78 7d 22 20 3d 20 22 5f 5f 66 61 69 6c 5f 5f  {x}" = "__fail__
0080: 22 20 5d 3b 20 74 68 65 6e 0a 09 09 65 63 68 6f  " ]; then...echo
0090: 20 27 55 6e 61 62 6c 65 20 74 6f 20 66 69 6e 64   'Unable to find
00a0: 20 4b 69 74 43 72 65 61 74 6f 72 2c 20 61 62 6f   KitCreator, abo
00b0: 72 74 69 6e 67 2e 27 20 3e 26 32 0a 0a 09 09 65  rting.' >&2....e
00c0: 78 69 74 20 31 0a 09 66 69 0a 0a 09 69 66 20 5b  xit 1..fi...if [
00d0: 20 2d 78 20 6b 69 74 63 72 65 61 74 6f 72 20 5d   -x kitcreator ]
00e0: 3b 20 74 68 65 6e 0a 09 09 62 72 65 61 6b 0a 09  ; then...break..
00f0: 66 69 0a 0a 09 63 64 20 2e 2e 0a 64 6f 6e 65 0a  fi...cd ...done.
0100: 0a 52 4f 4f 54 44 49 52 3d 22 24 28 70 77 64 29  .ROOTDIR="$(pwd)
0110: 22 0a 54 45 53 54 44 49 52 3d 22 24 7b 52 4f 4f  ".TESTDIR="${ROO
0120: 54 44 49 52 7d 2f 62 75 69 6c 64 2f 74 65 73 74  TDIR}/build/test
0130: 22 0a 65 78 70 6f 72 74 20 52 4f 4f 54 44 49 52  ".export ROOTDIR
0140: 20 54 45 53 54 44 49 52 0a 0a 23 20 48 61 6e 64   TESTDIR..# Hand
0150: 6c 65 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20  le command-line 
0160: 61 72 67 75 6d 65 6e 74 73 0a 69 66 20 5b 20 22  arguments.if [ "
0170: 24 31 22 20 3d 20 22 63 6c 65 61 6e 22 20 5d 3b  $1" = "clean" ];
0180: 20 74 68 65 6e 0a 09 72 6d 20 2d 72 66 20 22 24   then..rm -rf "$
0190: 7b 54 45 53 54 44 49 52 7d 2f 6b 69 74 73 22 0a  {TESTDIR}/kits".
01a0: 66 69 0a 0a 23 20 43 72 65 61 74 65 20 70 6c 61  fi..# Create pla
01b0: 63 65 20 74 6f 20 70 75 74 20 6b 69 74 73 0a 6d  ce to put kits.m
01c0: 6b 64 69 72 20 22 24 7b 54 45 53 54 44 49 52 7d  kdir "${TESTDIR}
01d0: 2f 6b 69 74 73 22 20 3e 2f 64 65 76 2f 6e 75 6c  /kits" >/dev/nul
01e0: 6c 20 32 3e 2f 64 65 76 2f 6e 75 6c 6c 0a 6d 6b  l 2>/dev/null.mk
01f0: 64 69 72 20 22 24 7b 54 45 53 54 44 49 52 7d 2f  dir "${TESTDIR}/
0200: 6b 69 74 73 2f 66 61 69 6c 65 64 22 20 3e 2f 64  kits/failed" >/d
0210: 65 76 2f 6e 75 6c 6c 20 32 3e 2f 64 65 76 2f 6e  ev/null 2>/dev/n
0220: 75 6c 6c 0a 69 66 20 5b 20 21 20 2d 64 20 22 24  ull.if [ ! -d "$
0230: 7b 54 45 53 54 44 49 52 7d 2f 6b 69 74 73 22 20  {TESTDIR}/kits" 
0240: 5d 3b 20 74 68 65 6e 0a 09 65 63 68 6f 20 27 55  ]; then..echo 'U
0250: 6e 61 62 6c 65 20 74 6f 20 63 72 65 61 74 65 20  nable to create 
0260: 6b 69 74 73 2f 20 64 69 72 65 63 74 6f 72 79 2c  kits/ directory,
0270: 20 61 62 6f 72 74 69 6e 67 2e 27 20 3e 26 32 0a   aborting.' >&2.
0280: 0a 09 65 78 69 74 20 31 0a 66 69 0a 0a 23 20 43  ..exit 1.fi..# C
0290: 6c 65 61 6e 75 70 0a 66 6f 72 20 66 69 6c 65 20  leanup.for file 
02a0: 69 6e 20 22 24 7b 54 45 53 54 44 49 52 7d 22 2f  in "${TESTDIR}"/
02b0: 6b 69 74 73 2f 2a 2e 6c 6f 67 3b 20 64 6f 0a 09  kits/*.log; do..
02c0: 69 66 20 65 63 68 6f 20 22 24 7b 66 69 6c 65 7d  if echo "${file}
02d0: 22 20 7c 20 67 72 65 70 20 2d 2d 20 27 2d 62 75  " | grep -- '-bu
02e0: 69 6c 64 2e 6c 6f 67 24 27 20 3e 2f 64 65 76 2f  ild.log$' >/dev/
02f0: 6e 75 6c 6c 3b 20 74 68 65 6e 0a 09 09 63 6f 6e  null; then...con
0300: 74 69 6e 75 65 0a 09 66 69 0a 0a 09 72 6d 20 2d  tinue..fi...rm -
0310: 66 20 22 24 7b 66 69 6c 65 7d 22 0a 64 6f 6e 65  f "${file}".done
0320: 0a 0a 23 20 44 69 73 61 62 6c 65 20 57 49 4e 45  ..# Disable WINE
0330: 20 64 65 62 75 67 67 69 6e 67 0a 57 49 4e 45 50   debugging.WINEP
0340: 52 45 46 49 58 33 32 3d 22 24 7b 54 45 53 54 44  REFIX32="${TESTD
0350: 49 52 7d 2f 2e 77 69 6e 65 22 0a 57 49 4e 45 50  IR}/.wine".WINEP
0360: 52 45 46 49 58 36 34 3d 22 24 7b 54 45 53 54 44  REFIX64="${TESTD
0370: 49 52 7d 2f 2e 77 69 6e 65 36 34 22 0a 65 78 70  IR}/.wine64".exp
0380: 6f 72 74 20 57 49 4e 45 50 52 45 46 49 58 33 32  ort WINEPREFIX32
0390: 20 57 49 4e 45 50 52 45 46 49 58 36 34 0a 72 6d   WINEPREFIX64.rm
03a0: 20 2d 72 66 20 22 24 7b 57 49 4e 45 50 52 45 46   -rf "${WINEPREF
03b0: 49 58 33 32 7d 22 20 22 24 7b 57 49 4e 45 50 52  IX32}" "${WINEPR
03c0: 45 46 49 58 36 34 7d 22 0a 6d 6b 64 69 72 20 22  EFIX64}".mkdir "
03d0: 24 7b 57 49 4e 45 50 52 45 46 49 58 33 32 7d 22  ${WINEPREFIX32}"
03e0: 20 22 24 7b 57 49 4e 45 50 52 45 46 49 58 36 34   "${WINEPREFIX64
03f0: 7d 22 0a 0a 63 61 74 20 3c 3c 20 5c 5f 45 4f 46  }"..cat << \_EOF
0400: 5f 20 3e 20 22 24 7b 57 49 4e 45 50 52 45 46 49  _ > "${WINEPREFI
0410: 58 33 32 7d 2f 75 70 64 61 74 65 2d 72 65 67 22  X32}/update-reg"
0420: 0a 5b 48 4b 45 59 5f 4c 4f 43 41 4c 5f 4d 41 43  .[HKEY_LOCAL_MAC
0430: 48 49 4e 45 5c 53 6f 66 74 77 61 72 65 5c 4d 69  HINE\Software\Mi
0440: 63 72 6f 73 6f 66 74 5c 57 69 6e 64 6f 77 73 20  crosoft\Windows 
0450: 4e 54 5c 43 75 72 72 65 6e 74 56 65 72 73 69 6f  NT\CurrentVersio
0460: 6e 5c 41 65 44 65 62 75 67 5d 0a 22 41 75 74 6f  n\AeDebug]."Auto
0470: 22 3d 64 77 6f 72 64 3a 30 30 30 30 30 30 30 31  "=dword:00000001
0480: 0a 22 44 65 62 75 67 67 65 72 22 3d 22 66 61 6c  ."Debugger"="fal
0490: 73 65 22 0a 5f 45 4f 46 5f 0a 63 70 20 22 24 7b  se"._EOF_.cp "${
04a0: 57 49 4e 45 50 52 45 46 49 58 33 32 7d 2f 75 70  WINEPREFIX32}/up
04b0: 64 61 74 65 2d 72 65 67 22 20 22 24 7b 57 49 4e  date-reg" "${WIN
04c0: 45 50 52 45 46 49 58 36 34 7d 2f 75 70 64 61 74  EPREFIX64}/updat
04d0: 65 2d 72 65 67 22 0a 0a 72 65 67 65 64 69 74 20  e-reg"..regedit 
04e0: 22 24 7b 57 49 4e 45 50 52 45 46 49 58 33 32 7d  "${WINEPREFIX32}
04f0: 2f 75 70 64 61 74 65 2d 72 65 67 22 20 3e 2f 64  /update-reg" >/d
0500: 65 76 2f 6e 75 6c 6c 20 32 3e 2f 64 65 76 2f 6e  ev/null 2>/dev/n
0510: 75 6c 6c 0a 72 65 67 65 64 69 74 20 22 24 7b 57  ull.regedit "${W
0520: 49 4e 45 50 52 45 46 49 58 36 34 7d 2f 75 70 64  INEPREFIX64}/upd
0530: 61 74 65 2d 72 65 67 22 20 3e 2f 64 65 76 2f 6e  ate-reg" >/dev/n
0540: 75 6c 6c 20 32 3e 2f 64 65 76 2f 6e 75 6c 6c 0a  ull 2>/dev/null.
0550: 0a 23 20 53 74 61 72 74 20 58 76 66 62 20 66 6f  .# Start Xvfb fo
0560: 72 20 58 31 31 2d 62 61 73 65 64 20 74 65 73 74  r X11-based test
0570: 73 0a 58 56 46 42 5f 50 49 44 3d 22 24 28 0a 09  s.XVFB_PID="$(..
0580: 58 76 66 62 20 3a 33 31 20 2d 73 63 72 65 65 6e  Xvfb :31 -screen
0590: 20 30 20 38 30 30 78 36 30 30 78 32 34 20 2d 6e   0 800x600x24 -n
05a0: 6f 6c 69 73 74 65 6e 20 74 63 70 20 3e 2f 64 65  olisten tcp >/de
05b0: 76 2f 6e 75 6c 6c 20 32 3e 2f 64 65 76 2f 6e 75  v/null 2>/dev/nu
05c0: 6c 6c 20 26 0a 09 65 63 68 6f 20 22 24 21 22 0a  ll &..echo "$!".
05d0: 29 22 0a 44 49 53 50 4c 41 59 3d 3a 33 31 0a 65  )".DISPLAY=:31.e
05e0: 78 70 6f 72 74 20 44 49 53 50 4c 41 59 0a 0a 69  xport DISPLAY..i
05f0: 66 20 5b 20 22 24 7b 42 49 47 42 55 49 4c 44 7d  f [ "${BIGBUILD}
0600: 22 20 3d 20 22 31 22 20 5d 3b 20 74 68 65 6e 0a  " = "1" ]; then.
0610: 09 6b 69 74 73 3d 22 24 28 65 63 68 6f 20 6e 6f  .kits="$(echo no
0620: 72 6d 61 6c 7b 2c 2d 7a 69 70 2c 2d 6e 6f 6d 6b  rmal{,-zip,-nomk
0630: 34 7d 7b 2c 2d 74 68 72 65 61 64 65 64 7d 7b 2c  4}{,-threaded}{,
0640: 2d 73 74 61 74 69 63 74 6b 2c 2d 6e 6f 74 6b 7d  -statictk,-notk}
0650: 20 6e 6f 72 6d 61 6c 7b 2c 2d 74 68 72 65 61 64   normal{,-thread
0660: 65 64 7d 7b 2c 2d 6e 6f 74 6b 7d 7b 2c 2d 6e 6f  ed}{,-notk}{,-no
0670: 6d 6b 34 7d 7b 2c 2d 64 65 62 75 67 7d 2d 6b 69  mk4}{,-debug}-ki
0680: 74 64 6c 6c 20 77 69 6e 33 32 2d 69 35 38 36 7b  tdll win32-i586{
0690: 2c 2d 7a 69 70 2c 2d 6e 6f 6d 6b 34 7d 7b 2c 2d  ,-zip,-nomk4}{,-
06a0: 74 68 72 65 61 64 65 64 7d 7b 2c 2d 6e 6f 74 6b  threaded}{,-notk
06b0: 7d 20 77 69 6e 33 32 2d 69 35 38 36 7b 2c 2d 74  } win32-i586{,-t
06c0: 68 72 65 61 64 65 64 7d 7b 2c 2d 6e 6f 74 6b 7d  hreaded}{,-notk}
06d0: 7b 2c 2d 6e 6f 6d 6b 34 7d 2d 6b 69 74 64 6c 6c  {,-nomk4}-kitdll
06e0: 20 6d 69 6e 7b 2c 2d 73 74 61 74 69 63 7d 20 7b   min{,-static} {
06f0: 6c 69 6e 75 78 2d 6d 69 70 73 65 6c 2d 6d 69 6e  linux-mipsel-min
0700: 7d 7b 2c 2d 64 65 62 75 67 7d 7b 2c 2d 6b 69 74  }{,-debug}{,-kit
0710: 64 6c 6c 7d 20 7b 6c 69 6e 75 78 2d 69 33 38 36  dll} {linux-i386
0720: 2c 73 6f 6c 61 72 69 73 2d 69 33 38 36 2c 73 6f  ,solaris-i386,so
0730: 6c 61 72 69 73 2d 61 6d 64 36 34 2c 73 6f 6c 61  laris-amd64,sola
0740: 72 69 73 2d 73 70 61 72 63 2c 73 6f 6c 61 72 69  ris-sparc,solari
0750: 73 2d 73 70 61 72 63 36 34 2c 66 72 65 65 62 73  s-sparc64,freebs
0760: 64 2d 61 6d 64 36 34 2c 6e 65 74 62 73 64 2d 61  d-amd64,netbsd-a
0770: 6d 64 36 34 7d 7b 2c 2d 7a 69 70 2c 2d 6e 6f 6d  md64}{,-zip,-nom
0780: 6b 34 7d 7b 2c 2d 74 68 72 65 61 64 65 64 7d 7b  k4}{,-threaded}{
0790: 2c 2d 73 74 61 74 69 63 74 6b 2c 2d 6e 6f 74 6b  ,-statictk,-notk
07a0: 7d 7b 2c 64 65 62 75 67 7d 20 7b 73 6f 6c 61 72  }{,debug} {solar
07b0: 69 73 2d 69 33 38 36 2c 73 6f 6c 61 72 69 73 2d  is-i386,solaris-
07c0: 61 6d 64 36 34 2c 73 6f 6c 61 72 69 73 2d 73 70  amd64,solaris-sp
07d0: 61 72 63 2c 73 6f 6c 61 72 69 73 2d 73 70 61 72  arc,solaris-spar
07e0: 63 36 34 2c 66 72 65 65 62 73 64 2d 61 6d 64 36  c64,freebsd-amd6
07f0: 34 2c 6e 65 74 62 73 64 2d 61 6d 64 36 34 7d 7b  4,netbsd-amd64}{
0800: 2c 2d 74 68 72 65 61 64 65 64 7d 7b 2c 2d 6e 6f  ,-threaded}{,-no
0810: 74 6b 7d 7b 2c 2d 6e 6f 6d 6b 34 7d 7b 2c 64 65  tk}{,-nomk4}{,de
0820: 62 75 67 7d 2d 6b 69 74 64 6c 6c 20 6e 65 74 62  bug}-kitdll netb
0830: 73 64 2d 69 33 38 36 7b 2c 2d 7a 69 70 2c 2d 6e  sd-i386{,-zip,-n
0840: 6f 6d 6b 34 7d 7b 2c 2d 74 68 72 65 61 64 65 64  omk4}{,-threaded
0850: 7d 7b 2c 64 65 62 75 67 7d 2d 6e 6f 74 6b 20 6e  }{,debug}-notk n
0860: 65 74 62 73 64 2d 69 33 38 36 7b 2c 2d 74 68 72  etbsd-i386{,-thr
0870: 65 61 64 65 64 7d 7b 2c 2d 6e 6f 6d 6b 34 7d 7b  eaded}{,-nomk4}{
0880: 2c 64 65 62 75 67 7d 2d 6e 6f 74 6b 2d 6b 69 74  ,debug}-notk-kit
0890: 64 6c 6c 20 61 6e 64 72 6f 69 64 2d 61 72 6d 2d  dll android-arm-
08a0: 6e 6f 74 6b 7b 2c 2d 64 65 62 75 67 7d 20 61 6e  notk{,-debug} an
08b0: 64 6f 69 64 2d 61 72 6d 2d 6e 6f 74 6b 7b 2c 2d  doid-arm-notk{,-
08c0: 64 65 62 75 67 7d 2d 6b 69 74 64 6c 6c 29 22 0a  debug}-kitdll)".
08d0: 65 6c 73 65 0a 09 6b 69 74 73 3d 22 6e 6f 72 6d  else..kits="norm
08e0: 61 6c 20 6e 6f 72 6d 61 6c 2d 7a 69 70 20 6e 6f  al normal-zip no
08f0: 72 6d 61 6c 2d 74 68 72 65 61 64 65 64 20 6e 6f  rmal-threaded no
0900: 72 6d 61 6c 2d 74 68 72 65 61 64 65 64 2d 7a 69  rmal-threaded-zi
0910: 70 20 6e 6f 72 6d 61 6c 2d 73 74 61 74 69 63 74  p normal-statict
0920: 6b 20 6e 6f 72 6d 61 6c 2d 6e 6f 74 6b 20 6e 6f  k normal-notk no
0930: 72 6d 61 6c 2d 74 68 72 65 61 64 65 64 2d 6e 6f  rmal-threaded-no
0940: 74 6b 20 6e 6f 72 6d 61 6c 2d 74 68 72 65 61 64  tk normal-thread
0950: 65 64 2d 7a 69 70 2d 6e 6f 74 6b 20 6e 6f 72 6d  ed-zip-notk norm
0960: 61 6c 2d 6e 6f 6d 6b 34 20 6e 6f 72 6d 61 6c 2d  al-nomk4 normal-
0970: 64 65 62 75 67 20 6d 69 6e 20 6d 69 6e 2d 73 74  debug min min-st
0980: 61 74 69 63 20 6e 6f 72 6d 61 6c 2d 6b 69 74 64  atic normal-kitd
0990: 6c 6c 20 6e 6f 72 6d 61 6c 2d 74 68 72 65 61 64  ll normal-thread
09a0: 65 64 2d 6b 69 74 64 6c 6c 20 6e 6f 72 6d 61 6c  ed-kitdll normal
09b0: 2d 6e 6f 74 6b 2d 6b 69 74 64 6c 6c 20 6e 6f 72  -notk-kitdll nor
09c0: 6d 61 6c 2d 6e 6f 6d 6b 34 2d 6b 69 74 64 6c 6c  mal-nomk4-kitdll
09d0: 20 6e 6f 72 6d 61 6c 2d 6e 6f 6d 6b 34 2d 6e 6f   normal-nomk4-no
09e0: 74 6b 2d 6b 69 74 64 6c 6c 20 6e 6f 72 6d 61 6c  tk-kitdll normal
09f0: 2d 74 68 72 65 61 64 65 64 2d 6e 6f 6d 6b 34 2d  -threaded-nomk4-
0a00: 6b 69 74 64 6c 6c 20 6e 6f 72 6d 61 6c 2d 74 68  kitdll normal-th
0a10: 72 65 61 64 65 64 2d 6e 6f 74 6b 2d 6e 6f 6d 6b  readed-notk-nomk
0a20: 34 2d 6b 69 74 64 6c 6c 20 6e 6f 72 6d 61 6c 2d  4-kitdll normal-
0a30: 64 65 62 75 67 2d 6b 69 74 64 6c 6c 20 6d 69 6e  debug-kitdll min
0a40: 2d 6b 69 74 64 6c 6c 20 77 69 6e 33 32 2d 69 35  -kitdll win32-i5
0a50: 38 36 20 77 69 6e 33 32 2d 69 35 38 36 2d 7a 69  86 win32-i586-zi
0a60: 70 20 77 69 6e 33 32 2d 69 35 38 36 2d 74 68 72  p win32-i586-thr
0a70: 65 61 64 65 64 20 77 69 6e 33 32 2d 69 35 38 36  eaded win32-i586
0a80: 2d 74 68 72 65 61 64 65 64 2d 7a 69 70 20 77 69  -threaded-zip wi
0a90: 6e 33 32 2d 69 35 38 36 2d 6e 6f 74 6b 20 77 69  n32-i586-notk wi
0aa0: 6e 33 32 2d 69 35 38 36 2d 74 68 72 65 61 64 65  n32-i586-threade
0ab0: 64 2d 6e 6f 74 6b 20 77 69 6e 33 32 2d 69 35 38  d-notk win32-i58
0ac0: 36 2d 6e 6f 6d 6b 34 20 77 69 6e 33 32 2d 69 35  6-nomk4 win32-i5
0ad0: 38 36 2d 6b 69 74 64 6c 6c 20 77 69 6e 33 32 2d  86-kitdll win32-
0ae0: 69 35 38 36 2d 74 68 72 65 61 64 65 64 2d 6b 69  i586-threaded-ki
0af0: 74 64 6c 6c 20 77 69 6e 33 32 2d 69 35 38 36 2d  tdll win32-i586-
0b00: 6e 6f 74 6b 2d 6b 69 74 64 6c 6c 20 77 69 6e 33  notk-kitdll win3
0b10: 32 2d 69 35 38 36 2d 6e 6f 6d 6b 34 2d 6b 69 74  2-i586-nomk4-kit
0b20: 64 6c 6c 20 77 69 6e 33 32 2d 69 35 38 36 2d 6e  dll win32-i586-n
0b30: 6f 6d 6b 34 2d 6e 6f 74 6b 2d 6b 69 74 64 6c 6c  omk4-notk-kitdll
0b40: 20 77 69 6e 33 32 2d 69 35 38 36 2d 74 68 72 65   win32-i586-thre
0b50: 61 64 65 64 2d 6e 6f 6d 6b 34 2d 6b 69 74 64 6c  aded-nomk4-kitdl
0b60: 6c 20 77 69 6e 33 32 2d 69 35 38 36 2d 74 68 72  l win32-i586-thr
0b70: 65 61 64 65 64 2d 6e 6f 74 6b 2d 6e 6f 6d 6b 34  eaded-notk-nomk4
0b80: 2d 6b 69 74 64 6c 6c 20 77 69 6e 36 34 2d 61 6d  -kitdll win64-am
0b90: 64 36 34 20 77 69 6e 36 34 2d 61 6d 64 36 34 2d  d64 win64-amd64-
0ba0: 7a 69 70 20 77 69 6e 36 34 2d 61 6d 64 36 34 2d  zip win64-amd64-
0bb0: 74 68 72 65 61 64 65 64 20 77 69 6e 36 34 2d 61  threaded win64-a
0bc0: 6d 64 36 34 2d 74 68 72 65 61 64 65 64 2d 7a 69  md64-threaded-zi
0bd0: 70 20 77 69 6e 36 34 2d 61 6d 64 36 34 2d 6e 6f  p win64-amd64-no
0be0: 74 6b 20 77 69 6e 36 34 2d 61 6d 64 36 34 2d 74  tk win64-amd64-t
0bf0: 68 72 65 61 64 65 64 2d 6e 6f 74 6b 20 77 69 6e  hreaded-notk win
0c00: 36 34 2d 61 6d 64 36 34 2d 6e 6f 6d 6b 34 20 77  64-amd64-nomk4 w
0c10: 69 6e 36 34 2d 61 6d 64 36 34 2d 6b 69 74 64 6c  in64-amd64-kitdl
0c20: 6c 20 77 69 6e 36 34 2d 61 6d 64 36 34 2d 74 68  l win64-amd64-th
0c30: 72 65 61 64 65 64 2d 6b 69 74 64 6c 6c 20 77 69  readed-kitdll wi
0c40: 6e 36 34 2d 61 6d 64 36 34 2d 6e 6f 74 6b 2d 6b  n64-amd64-notk-k
0c50: 69 74 64 6c 6c 20 77 69 6e 36 34 2d 61 6d 64 36  itdll win64-amd6
0c60: 34 2d 6e 6f 6d 6b 34 2d 6b 69 74 64 6c 6c 20 77  4-nomk4-kitdll w
0c70: 69 6e 36 34 2d 61 6d 64 36 34 2d 6e 6f 6d 6b 34  in64-amd64-nomk4
0c80: 2d 6e 6f 74 6b 2d 6b 69 74 64 6c 6c 20 77 69 6e  -notk-kitdll win
0c90: 36 34 2d 61 6d 64 36 34 2d 74 68 72 65 61 64 65  64-amd64-threade
0ca0: 64 2d 6e 6f 6d 6b 34 2d 6b 69 74 64 6c 6c 20 77  d-nomk4-kitdll w
0cb0: 69 6e 36 34 2d 61 6d 64 36 34 2d 74 68 72 65 61  in64-amd64-threa
0cc0: 64 65 64 2d 6e 6f 74 6b 2d 6e 6f 6d 6b 34 2d 6b  ded-notk-nomk4-k
0cd0: 69 74 64 6c 6c 20 6c 69 6e 75 78 2d 6d 69 70 73  itdll linux-mips
0ce0: 65 6c 2d 6e 6f 74 6b 20 6c 69 6e 75 78 2d 6d 69  el-notk linux-mi
0cf0: 70 73 65 6c 2d 6e 6f 74 6b 2d 6b 69 74 64 6c 6c  psel-notk-kitdll
0d00: 20 6c 69 6e 75 78 2d 69 33 38 36 20 6c 69 6e 75   linux-i386 linu
0d10: 78 2d 69 33 38 36 2d 64 65 62 75 67 20 6c 69 6e  x-i386-debug lin
0d20: 75 78 2d 69 33 38 36 2d 6b 69 74 64 6c 6c 20 6c  ux-i386-kitdll l
0d30: 69 6e 75 78 2d 69 33 38 36 2d 64 65 62 75 67 2d  inux-i386-debug-
0d40: 6b 69 74 64 6c 6c 20 6c 69 6e 75 78 2d 69 33 38  kitdll linux-i38
0d50: 36 2d 6e 6f 74 6b 20 6c 69 6e 75 78 2d 69 33 38  6-notk linux-i38
0d60: 36 2d 6e 6f 74 6b 2d 64 65 62 75 67 20 6c 69 6e  6-notk-debug lin
0d70: 75 78 2d 69 33 38 36 2d 6e 6f 74 6b 2d 6b 69 74  ux-i386-notk-kit
0d80: 64 6c 6c 20 6c 69 6e 75 78 2d 69 33 38 36 2d 6e  dll linux-i386-n
0d90: 6f 74 6b 2d 64 65 62 75 67 2d 6b 69 74 64 6c 6c  otk-debug-kitdll
0da0: 20 73 6f 6c 61 72 69 73 2d 69 33 38 36 20 73 6f   solaris-i386 so
0db0: 6c 61 72 69 73 2d 69 33 38 36 2d 64 65 62 75 67  laris-i386-debug
0dc0: 20 73 6f 6c 61 72 69 73 2d 69 33 38 36 2d 6b 69   solaris-i386-ki
0dd0: 74 64 6c 6c 20 73 6f 6c 61 72 69 73 2d 69 33 38  tdll solaris-i38
0de0: 36 2d 64 65 62 75 67 2d 6b 69 74 64 6c 6c 20 73  6-debug-kitdll s
0df0: 6f 6c 61 72 69 73 2d 61 6d 64 36 34 20 73 6f 6c  olaris-amd64 sol
0e00: 61 72 69 73 2d 61 6d 64 36 34 2d 64 65 62 75 67  aris-amd64-debug
0e10: 20 73 6f 6c 61 72 69 73 2d 61 6d 64 36 34 2d 6b   solaris-amd64-k
0e20: 69 74 64 6c 6c 20 73 6f 6c 61 72 69 73 2d 61 6d  itdll solaris-am
0e30: 64 36 34 2d 64 65 62 75 67 2d 6b 69 74 64 6c 6c  d64-debug-kitdll
0e40: 20 73 6f 6c 61 72 69 73 2d 73 70 61 72 63 20 73   solaris-sparc s
0e50: 6f 6c 61 72 69 73 2d 73 70 61 72 63 2d 64 65 62  olaris-sparc-deb
0e60: 75 67 20 73 6f 6c 61 72 69 73 2d 73 70 61 72 63  ug solaris-sparc
0e70: 2d 6b 69 74 64 6c 6c 20 73 6f 6c 61 72 69 73 2d  -kitdll solaris-
0e80: 73 70 61 72 63 2d 64 65 62 75 67 2d 6b 69 74 64  sparc-debug-kitd
0e90: 6c 6c 20 73 6f 6c 61 72 69 73 2d 73 70 61 72 63  ll solaris-sparc
0ea0: 36 34 20 73 6f 6c 61 72 69 73 2d 73 70 61 72 63  64 solaris-sparc
0eb0: 36 34 2d 64 65 62 75 67 20 73 6f 6c 61 72 69 73  64-debug solaris
0ec0: 2d 73 70 61 72 63 36 34 2d 6b 69 74 64 6c 6c 20  -sparc64-kitdll 
0ed0: 73 6f 6c 61 72 69 73 2d 73 70 61 72 63 36 34 2d  solaris-sparc64-
0ee0: 64 65 62 75 67 2d 6b 69 74 64 6c 6c 20 66 72 65  debug-kitdll fre
0ef0: 65 62 73 64 2d 61 6d 64 36 34 20 66 72 65 65 62  ebsd-amd64 freeb
0f00: 73 64 2d 61 6d 64 36 34 2d 64 65 62 75 67 20 66  sd-amd64-debug f
0f10: 72 65 65 62 73 64 2d 61 6d 64 36 34 2d 6b 69 74  reebsd-amd64-kit
0f20: 64 6c 6c 20 66 72 65 65 62 73 64 2d 61 6d 64 36  dll freebsd-amd6
0f30: 34 2d 64 65 62 75 67 2d 6b 69 74 64 6c 6c 20 6e  4-debug-kitdll n
0f40: 65 74 62 73 64 2d 69 33 38 36 2d 6e 6f 74 6b 20  etbsd-i386-notk 
0f50: 6e 65 74 62 73 64 2d 69 33 38 36 2d 6e 6f 74 6b  netbsd-i386-notk
0f60: 2d 64 65 62 75 67 20 6e 65 74 62 73 64 2d 69 33  -debug netbsd-i3
0f70: 38 36 2d 6e 6f 74 6b 2d 6b 69 74 64 6c 6c 20 6e  86-notk-kitdll n
0f80: 65 74 62 73 64 2d 69 33 38 36 2d 6e 6f 74 6b 2d  etbsd-i386-notk-
0f90: 64 65 62 75 67 2d 6b 69 74 64 6c 6c 20 6e 65 74  debug-kitdll net
0fa0: 62 73 64 2d 61 6d 64 36 34 20 6e 65 74 62 73 64  bsd-amd64 netbsd
0fb0: 2d 61 6d 64 36 34 2d 64 65 62 75 67 20 6e 65 74  -amd64-debug net
0fc0: 62 73 64 2d 61 6d 64 36 34 2d 6b 69 74 64 6c 6c  bsd-amd64-kitdll
0fd0: 20 6e 65 74 62 73 64 2d 61 6d 64 36 34 2d 64 65   netbsd-amd64-de
0fe0: 62 75 67 2d 6b 69 74 64 6c 6c 20 61 6e 64 72 6f  bug-kitdll andro
0ff0: 69 64 2d 61 72 6d 2d 6e 6f 74 6b 20 61 6e 64 72  id-arm-notk andr
1000: 6f 69 64 2d 61 72 6d 2d 6e 6f 74 6b 2d 64 65 62  oid-arm-notk-deb
1010: 75 67 20 61 6e 64 72 6f 69 64 2d 61 72 6d 2d 6e  ug android-arm-n
1020: 6f 74 6b 2d 6b 69 74 64 6c 6c 20 61 6e 64 72 6f  otk-kitdll andro
1030: 69 64 2d 61 72 6d 2d 6e 6f 74 6b 2d 64 65 62 75  id-arm-notk-debu
1040: 67 2d 6b 69 74 64 6c 6c 22 0a 66 69 0a 0a 66 61  g-kitdll".fi..fa
1050: 69 6c 65 64 3d 22 22 0a 66 6f 72 20 6b 69 74 20  iled="".for kit 
1060: 69 6e 20 24 6b 69 74 73 3b 20 64 6f 0a 09 6b 69  in $kits; do..ki
1070: 74 63 72 65 61 74 6f 72 3d 22 2e 2f 6b 69 74 63  tcreator="./kitc
1080: 72 65 61 74 6f 72 22 0a 09 61 72 67 73 3d 22 22  reator"..args=""
1090: 0a 09 72 75 6e 6e 61 62 6c 65 3d 22 31 22 0a 09  ..runnable="1"..
10a0: 69 73 7a 69 70 3d 22 30 22 0a 09 73 74 61 74 69  iszip="0"..stati
10b0: 63 74 6b 3d 22 30 22 0a 09 6e 6f 74 6b 3d 22 30  ctk="0"..notk="0
10c0: 22 0a 09 6e 6f 6d 6b 34 3d 22 30 22 0a 09 78 63  "..nomk4="0"..xc
10d0: 6f 6d 70 69 6c 65 3d 22 30 22 0a 09 6b 69 74 64  ompile="0"..kitd
10e0: 6c 6c 3d 22 30 22 0a 09 6b 69 74 72 75 6e 63 6d  ll="0"..kitruncm
10f0: 64 3d 22 22 0a 0a 09 23 20 48 61 6e 64 6c 65 20  d=""...# Handle 
1100: 62 61 73 65 20 63 6f 6e 66 69 67 75 72 61 74 69  base configurati
1110: 6f 6e 0a 09 6f 73 3d 22 24 28 75 6e 61 6d 65 20  on..os="$(uname 
1120: 2d 73 20 7c 20 64 64 20 63 6f 6e 76 3d 6c 63 61  -s | dd conv=lca
1130: 73 65 20 32 3e 2f 64 65 76 2f 6e 75 6c 6c 29 22  se 2>/dev/null)"
1140: 0a 09 63 70 75 3d 22 24 28 75 6e 61 6d 65 20 2d  ..cpu="$(uname -
1150: 6d 20 7c 20 64 64 20 63 6f 6e 76 3d 6c 63 61 73  m | dd conv=lcas
1160: 65 20 32 3e 2f 64 65 76 2f 6e 75 6c 6c 20 7c 20  e 2>/dev/null | 
1170: 73 65 64 20 27 73 40 78 38 36 5f 36 34 40 61 6d  sed 's@x86_64@am
1180: 64 36 34 40 3b 73 40 69 2e 38 36 40 69 33 38 36  d64@;s@i.86@i386
1190: 40 27 29 22 0a 09 63 61 73 65 20 22 24 7b 6b 69  @')"..case "${ki
11a0: 74 7d 22 20 69 6e 0a 09 09 6e 6f 72 6d 61 6c 7c  t}" in...normal|
11b0: 6e 6f 72 6d 61 6c 2d 2a 29 0a 09 09 09 6b 69 74  normal-*)....kit
11c0: 3d 22 24 28 65 63 68 6f 20 22 24 7b 6b 69 74 7d  ="$(echo "${kit}
11d0: 22 20 7c 20 73 65 64 20 22 73 40 5e 6e 6f 72 6d  " | sed "s@^norm
11e0: 61 6c 40 24 6f 73 2d 24 63 70 75 40 22 29 22 0a  al@$os-$cpu@")".
11f0: 09 09 09 3b 3b 0a 09 09 6d 69 6e 7c 6d 69 6e 2d  ...;;...min|min-
1200: 6b 69 74 64 6c 6c 29 0a 09 09 09 6b 69 74 63 72  kitdll)....kitcr
1210: 65 61 74 6f 72 3d 22 2e 2f 62 75 69 6c 64 2f 6d  eator="./build/m
1220: 61 6b 65 2d 6d 69 6e 6b 69 74 22 0a 09 09 09 69  ake-minkit"....i
1230: 73 7a 69 70 3d 22 31 22 0a 09 09 09 6e 6f 74 6b  szip="1"....notk
1240: 3d 22 31 22 0a 09 09 09 6b 69 74 3d 22 24 28 65  ="1"....kit="$(e
1250: 63 68 6f 20 22 24 7b 6b 69 74 7d 22 20 7c 20 73  cho "${kit}" | s
1260: 65 64 20 22 73 40 5e 6d 69 6e 40 24 6f 73 2d 24  ed "s@^min@$os-$
1270: 63 70 75 2d 6d 69 6e 40 22 29 22 0a 09 09 09 3b  cpu-min@")"....;
1280: 3b 0a 09 09 6d 69 6e 2d 73 74 61 74 69 63 29 0a  ;...min-static).
1290: 09 09 09 6b 69 74 63 72 65 61 74 6f 72 3d 22 2e  ...kitcreator=".
12a0: 2f 62 75 69 6c 64 2f 6d 61 6b 65 2d 6d 69 6e 6b  /build/make-mink
12b0: 69 74 2d 73 74 61 74 69 63 22 0a 09 09 09 69 73  it-static"....is
12c0: 7a 69 70 3d 22 31 22 0a 09 09 09 6e 6f 74 6b 3d  zip="1"....notk=
12d0: 22 31 22 0a 09 09 09 6b 69 74 3d 22 24 7b 6f 73  "1"....kit="${os
12e0: 7d 2d 24 7b 63 70 75 7d 2d 6d 69 6e 2d 73 74 61  }-${cpu}-min-sta
12f0: 74 69 63 22 0a 09 09 09 3b 3b 0a 09 09 77 69 6e  tic"....;;...win
1300: 33 32 7c 77 69 6e 33 32 2d 2a 29 0a 09 09 09 6b  32|win32-*)....k
1310: 69 74 63 72 65 61 74 6f 72 3d 22 2e 2f 62 75 69  itcreator="./bui
1320: 6c 64 2f 6d 61 6b 65 2d 6b 69 74 2d 77 69 6e 33  ld/make-kit-win3
1330: 32 22 0a 09 09 09 78 63 6f 6d 70 69 6c 65 3d 22  2"....xcompile="
1340: 31 22 0a 09 09 09 72 75 6e 6e 61 62 6c 65 3d 22  1"....runnable="
1350: 31 22 0a 09 09 09 6b 69 74 72 75 6e 63 6d 64 3d  1"....kitruncmd=
1360: 22 77 69 6e 65 22 0a 09 09 09 3b 3b 0a 09 09 77  "wine"....;;...w
1370: 69 6e 36 34 7c 77 69 6e 36 34 2d 2a 29 0a 09 09  in64|win64-*)...
1380: 09 6b 69 74 63 72 65 61 74 6f 72 3d 22 2e 2f 62  .kitcreator="./b
1390: 75 69 6c 64 2f 6d 61 6b 65 2d 6b 69 74 2d 77 69  uild/make-kit-wi
13a0: 6e 33 32 22 0a 09 09 09 78 63 6f 6d 70 69 6c 65  n32"....xcompile
13b0: 3d 22 31 22 0a 09 09 09 72 75 6e 6e 61 62 6c 65  ="1"....runnable
13c0: 3d 22 31 22 0a 09 09 09 6b 69 74 72 75 6e 63 6d  ="1"....kitruncm
13d0: 64 3d 22 77 69 6e 65 36 34 22 0a 09 09 09 61 72  d="wine64"....ar
13e0: 67 73 3d 22 24 7b 61 72 67 73 7d 20 2d 2d 65 6e  gs="${args} --en
13f0: 61 62 6c 65 2d 36 34 62 69 74 22 0a 09 09 09 3b  able-64bit"....;
1400: 3b 0a 09 09 6c 69 6e 75 78 2d 6d 69 70 73 65 6c  ;...linux-mipsel
1410: 2d 6d 69 6e 7c 6c 69 6e 75 78 2d 6d 69 70 73 65  -min|linux-mipse
1420: 6c 2d 6d 69 6e 2d 6b 69 74 64 6c 6c 29 0a 09 09  l-min-kitdll)...
1430: 09 6b 69 74 63 72 65 61 74 6f 72 3d 22 2e 2f 62  .kitcreator="./b
1440: 75 69 6c 64 2f 6d 61 6b 65 2d 6b 69 74 2d 6c 69  uild/make-kit-li
1450: 6e 75 78 2d 6d 69 70 73 65 6c 22 0a 09 09 09 72  nux-mipsel"....r
1460: 75 6e 6e 61 62 6c 65 3d 22 30 22 0a 09 09 09 78  unnable="0"....x
1470: 63 6f 6d 70 69 6c 65 3d 22 31 22 0a 09 09 09 6e  compile="1"....n
1480: 6f 74 6b 3d 22 31 22 0a 09 09 09 69 73 7a 69 70  otk="1"....iszip
1490: 3d 22 31 22 0a 09 09 09 3b 3b 0a 09 09 6c 69 6e  ="1"....;;...lin
14a0: 75 78 2d 69 33 38 36 7c 6c 69 6e 75 78 2d 69 33  ux-i386|linux-i3
14b0: 38 36 2d 2a 29 0a 09 09 09 6b 69 74 63 72 65 61  86-*)....kitcrea
14c0: 74 6f 72 3d 22 2e 2f 62 75 69 6c 64 2f 6d 61 6b  tor="./build/mak
14d0: 65 2d 6b 69 74 2d 6c 69 6e 75 78 2d 69 33 38 36  e-kit-linux-i386
14e0: 22 0a 09 09 09 78 63 6f 6d 70 69 6c 65 3d 22 31  "....xcompile="1
14f0: 22 0a 09 09 09 3b 3b 0a 09 09 61 6e 64 72 6f 69  "....;;...androi
1500: 64 2d 61 72 6d 7c 61 6e 64 72 6f 69 64 2d 61 72  d-arm|android-ar
1510: 6d 2d 2a 7c 5c 0a 09 09 6c 69 6e 75 78 2d 6d 69  m-*|\...linux-mi
1520: 70 73 65 6c 7c 6c 69 6e 75 78 2d 6d 69 70 73 65  psel|linux-mipse
1530: 6c 2d 2a 7c 5c 0a 09 09 6c 69 6e 75 78 2d 61 6d  l-*|\...linux-am
1540: 64 36 34 7c 6c 69 6e 75 78 2d 61 6d 64 36 34 2d  d64|linux-amd64-
1550: 2a 7c 5c 0a 09 09 73 6f 6c 61 72 69 73 2d 69 33  *|\...solaris-i3
1560: 38 36 7c 73 6f 6c 61 72 69 73 2d 69 33 38 36 2d  86|solaris-i386-
1570: 2a 7c 5c 0a 09 09 73 6f 6c 61 72 69 73 2d 61 6d  *|\...solaris-am
1580: 64 36 34 7c 73 6f 6c 61 72 69 73 2d 61 6d 64 36  d64|solaris-amd6
1590: 34 2d 2a 7c 5c 0a 09 09 73 6f 6c 61 72 69 73 2d  4-*|\...solaris-
15a0: 73 70 61 72 63 7c 73 6f 6c 61 72 69 73 2d 73 70  sparc|solaris-sp
15b0: 61 72 63 2d 2a 7c 5c 0a 09 09 73 6f 6c 61 72 69  arc-*|\...solari
15c0: 73 2d 73 70 61 72 63 36 34 7c 73 6f 6c 61 72 69  s-sparc64|solari
15d0: 73 2d 73 70 61 72 63 36 34 2d 2a 7c 5c 0a 09 09  s-sparc64-*|\...
15e0: 66 72 65 65 62 73 64 2d 61 6d 64 36 34 7c 66 72  freebsd-amd64|fr
15f0: 65 65 62 73 64 2d 61 6d 64 36 34 2d 2a 7c 5c 0a  eebsd-amd64-*|\.
1600: 09 09 6e 65 74 62 73 64 2d 69 33 38 36 7c 6e 65  ..netbsd-i386|ne
1610: 74 62 73 64 2d 69 33 38 36 2d 2a 7c 5c 0a 09 09  tbsd-i386-*|\...
1620: 6e 65 74 62 73 64 2d 61 6d 64 36 34 7c 6e 65 74  netbsd-amd64|net
1630: 62 73 64 2d 61 6d 64 36 34 2d 2a 7c 5c 0a 09 09  bsd-amd64-*|\...
1640: 68 70 75 78 2d 68 70 70 61 36 34 7c 68 70 75 78  hpux-hppa64|hpux
1650: 2d 68 70 70 61 36 34 2d 2a 29 0a 09 09 09 70 6c  -hppa64-*)....pl
1660: 61 74 66 6f 72 6d 3d 22 24 28 65 63 68 6f 20 22  atform="$(echo "
1670: 24 7b 6b 69 74 7d 22 20 7c 20 63 75 74 20 2d 66  ${kit}" | cut -f
1680: 20 31 2d 32 20 2d 64 20 27 2d 27 29 22 0a 09 09   1-2 -d '-')"...
1690: 09 6b 69 74 63 72 65 61 74 6f 72 3d 22 2e 2f 62  .kitcreator="./b
16a0: 75 69 6c 64 2f 6d 61 6b 65 2d 6b 69 74 2d 24 7b  uild/make-kit-${
16b0: 70 6c 61 74 66 6f 72 6d 7d 22 0a 09 09 09 72 75  platform}"....ru
16c0: 6e 6e 61 62 6c 65 3d 22 30 22 0a 09 09 09 78 63  nnable="0"....xc
16d0: 6f 6d 70 69 6c 65 3d 22 31 22 0a 09 09 09 69 73  ompile="1"....is
16e0: 7a 69 70 3d 22 30 22 0a 0a 09 09 09 69 66 20 65  zip="0".....if e
16f0: 63 68 6f 20 22 24 7b 6b 69 74 7d 22 20 7c 20 65  cho "${kit}" | e
1700: 67 72 65 70 20 2d 2d 20 27 2d 28 68 70 70 61 36  grep -- '-(hppa6
1710: 34 7c 61 6d 64 36 34 7c 73 70 61 72 63 36 34 29  4|amd64|sparc64)
1720: 2d 27 20 3e 2f 64 65 76 2f 6e 75 6c 6c 3b 20 74  -' >/dev/null; t
1730: 68 65 6e 0a 09 09 09 09 61 72 67 73 3d 22 24 7b  hen.....args="${
1740: 61 72 67 73 7d 20 2d 2d 65 6e 61 62 6c 65 2d 36  args} --enable-6
1750: 34 62 69 74 22 0a 09 09 09 66 69 0a 09 09 09 3b  4bit"....fi....;
1760: 3b 0a 09 65 73 61 63 0a 0a 09 63 61 73 65 20 22  ;..esac...case "
1770: 24 7b 6b 69 74 72 75 6e 63 6d 64 7d 22 20 69 6e  ${kitruncmd}" in
1780: 0a 09 09 77 69 6e 65 29 0a 09 09 09 57 49 4e 45  ...wine)....WINE
1790: 50 52 45 46 49 58 3d 22 24 7b 57 49 4e 45 50 52  PREFIX="${WINEPR
17a0: 45 46 49 58 33 32 7d 22 0a 09 09 09 65 78 70 6f  EFIX32}"....expo
17b0: 72 74 20 57 49 4e 45 50 52 45 46 49 58 0a 09 09  rt WINEPREFIX...
17c0: 09 3b 3b 0a 09 09 77 69 6e 65 36 34 29 0a 09 09  .;;...wine64)...
17d0: 09 57 49 4e 45 50 52 45 46 49 58 3d 22 24 7b 57  .WINEPREFIX="${W
17e0: 49 4e 45 50 52 45 46 49 58 36 34 7d 22 0a 09 09  INEPREFIX64}"...
17f0: 09 65 78 70 6f 72 74 20 57 49 4e 45 50 52 45 46  .export WINEPREF
1800: 49 58 0a 09 09 09 3b 3b 0a 09 65 73 61 63 0a 0a  IX....;;..esac..
1810: 09 69 66 20 5b 20 22 24 7b 78 63 6f 6d 70 69 6c  .if [ "${xcompil
1820: 65 7d 22 20 21 3d 20 22 30 22 20 5d 3b 20 74 68  e}" != "0" ]; th
1830: 65 6e 0a 09 09 6b 69 74 3d 22 24 7b 6b 69 74 7d  en...kit="${kit}
1840: 2d 78 63 6f 6d 70 69 6c 65 22 0a 09 66 69 0a 0a  -xcompile"..fi..
1850: 09 23 20 48 61 6e 64 6c 65 20 61 64 64 69 74 69  .# Handle additi
1860: 6f 6e 61 6c 20 63 6f 6e 66 69 67 75 72 61 74 69  onal configurati
1870: 6f 6e 0a 09 74 65 6d 70 6b 69 74 3d 22 2d 24 7b  on..tempkit="-${
1880: 6b 69 74 7d 2d 22 0a 09 66 6f 72 20 74 72 79 20  kit}-"..for try 
1890: 69 6e 20 31 20 32 20 33 20 34 20 35 20 36 20 37  in 1 2 3 4 5 6 7
18a0: 20 38 20 39 3b 20 64 6f 0a 09 09 63 61 73 65 20   8 9; do...case 
18b0: 22 2d 24 7b 74 65 6d 70 6b 69 74 7d 2d 22 20 69  "-${tempkit}-" i
18c0: 6e 0a 09 09 09 2a 2d 74 68 72 65 61 64 65 64 2d  n....*-threaded-
18d0: 2a 29 0a 09 09 09 09 74 65 6d 70 6b 69 74 3d 22  *).....tempkit="
18e0: 24 28 65 63 68 6f 20 22 24 7b 74 65 6d 70 6b 69  $(echo "${tempki
18f0: 74 7d 22 20 7c 20 73 65 64 20 27 73 40 2d 74 68  t}" | sed 's@-th
1900: 72 65 61 64 65 64 2d 40 2d 40 27 29 22 0a 09 09  readed-@-@')"...
1910: 09 09 61 72 67 73 3d 22 24 7b 61 72 67 73 7d 20  ..args="${args} 
1920: 2d 2d 65 6e 61 62 6c 65 2d 74 68 72 65 61 64 73  --enable-threads
1930: 22 0a 09 09 09 09 3b 3b 0a 09 09 09 2a 2d 7a 69  ".....;;....*-zi
1940: 70 2d 2a 29 0a 09 09 09 09 74 65 6d 70 6b 69 74  p-*).....tempkit
1950: 3d 22 24 28 65 63 68 6f 20 22 24 7b 74 65 6d 70  ="$(echo "${temp
1960: 6b 69 74 7d 22 20 7c 20 73 65 64 20 27 73 40 2d  kit}" | sed 's@-
1970: 7a 69 70 2d 40 2d 40 27 29 22 0a 09 09 09 09 61  zip-@-@')".....a
1980: 72 67 73 3d 22 24 7b 61 72 67 73 7d 20 2d 2d 65  rgs="${args} --e
1990: 6e 61 62 6c 65 2d 6b 69 74 2d 73 74 6f 72 61 67  nable-kit-storag
19a0: 65 3d 7a 69 70 22 0a 09 09 09 09 69 73 7a 69 70  e=zip".....iszip
19b0: 3d 22 31 22 0a 09 09 09 09 3b 3b 0a 09 09 09 2a  ="1".....;;....*
19c0: 2d 73 74 61 74 69 63 74 6b 2d 2a 29 0a 09 09 09  -statictk-*)....
19d0: 09 74 65 6d 70 6b 69 74 3d 22 24 28 65 63 68 6f  .tempkit="$(echo
19e0: 20 22 24 7b 74 65 6d 70 6b 69 74 7d 22 20 7c 20   "${tempkit}" | 
19f0: 73 65 64 20 27 73 40 2d 73 74 61 74 69 63 74 6b  sed 's@-statictk
1a00: 2d 40 2d 40 27 29 22 0a 09 09 09 09 69 66 20 5b  -@-@')".....if [
1a10: 20 22 24 7b 6e 6f 74 6b 7d 22 20 3d 20 22 30 22   "${notk}" = "0"
1a20: 20 5d 3b 20 74 68 65 6e 0a 09 09 09 09 09 73 74   ]; then......st
1a30: 61 74 69 63 74 6b 3d 22 31 22 0a 09 09 09 09 65  atictk="1".....e
1a40: 6c 73 65 0a 09 09 09 09 09 65 63 68 6f 20 22 24  lse......echo "$
1a50: 7b 6b 69 74 7d 3a 20 55 6e 61 62 6c 65 20 74 6f  {kit}: Unable to
1a60: 20 63 72 65 61 74 65 20 53 74 61 74 69 63 54 6b   create StaticTk
1a70: 20 61 6e 64 20 4e 6f 54 6b 2c 20 69 67 6e 6f 72   and NoTk, ignor
1a80: 69 6e 67 20 53 74 61 74 69 63 54 6b 22 20 3e 26  ing StaticTk" >&
1a90: 32 0a 09 09 09 09 66 69 0a 09 09 09 09 3b 3b 0a  2.....fi.....;;.
1aa0: 09 09 09 2a 2d 6e 6f 74 6b 2d 2a 29 0a 09 09 09  ...*-notk-*)....
1ab0: 09 74 65 6d 70 6b 69 74 3d 22 24 28 65 63 68 6f  .tempkit="$(echo
1ac0: 20 22 24 7b 74 65 6d 70 6b 69 74 7d 22 20 7c 20   "${tempkit}" | 
1ad0: 73 65 64 20 27 73 40 2d 6e 6f 74 6b 2d 40 2d 40  sed 's@-notk-@-@
1ae0: 27 29 22 0a 09 09 09 09 69 66 20 5b 20 22 24 7b  ')".....if [ "${
1af0: 73 74 61 74 69 63 74 6b 7d 22 20 3d 20 22 30 22  statictk}" = "0"
1b00: 20 5d 3b 20 74 68 65 6e 0a 09 09 09 09 09 6e 6f   ]; then......no
1b10: 74 6b 3d 22 31 22 0a 09 09 09 09 65 6c 73 65 0a  tk="1".....else.
1b20: 09 09 09 09 09 65 63 68 6f 20 22 24 7b 6b 69 74  .....echo "${kit
1b30: 7d 3a 20 55 6e 61 62 6c 65 20 74 6f 20 63 72 65  }: Unable to cre
1b40: 61 74 65 20 53 74 61 74 69 63 54 6b 20 61 6e 64  ate StaticTk and
1b50: 20 4e 6f 54 6b 2c 20 69 67 6e 6f 72 69 6e 67 20   NoTk, ignoring 
1b60: 4e 6f 54 6b 22 20 3e 26 32 0a 09 09 09 09 66 69  NoTk" >&2.....fi
1b70: 0a 09 09 09 09 3b 3b 0a 09 09 09 2a 2d 6e 6f 6d  .....;;....*-nom
1b80: 6b 34 2d 2a 29 0a 09 09 09 09 74 65 6d 70 6b 69  k4-*).....tempki
1b90: 74 3d 22 24 28 65 63 68 6f 20 22 24 7b 74 65 6d  t="$(echo "${tem
1ba0: 70 6b 69 74 7d 22 20 7c 20 73 65 64 20 27 73 40  pkit}" | sed 's@
1bb0: 2d 6e 6f 6d 6b 34 2d 40 2d 40 27 29 22 0a 09 09  -nomk4-@-@')"...
1bc0: 09 09 6e 6f 6d 6b 34 3d 22 31 22 0a 09 09 09 09  ..nomk4="1".....
1bd0: 69 73 7a 69 70 3d 22 31 22 0a 09 09 09 09 3b 3b  iszip="1".....;;
1be0: 0a 09 09 09 2a 2d 6b 69 74 64 6c 6c 2d 2a 29 0a  ....*-kitdll-*).
1bf0: 09 09 09 09 74 65 6d 70 6b 69 74 3d 22 24 28 65  ....tempkit="$(e
1c00: 63 68 6f 20 22 24 7b 74 65 6d 70 6b 69 74 7d 22  cho "${tempkit}"
1c10: 20 7c 20 73 65 64 20 27 73 40 2d 6b 69 74 64 6c   | sed 's@-kitdl
1c20: 6c 2d 40 2d 40 27 29 22 0a 09 09 09 09 6b 69 74  l-@-@')".....kit
1c30: 64 6c 6c 3d 22 31 22 0a 09 09 09 09 3b 3b 0a 09  dll="1".....;;..
1c40: 09 09 2a 2d 64 65 62 75 67 2d 2a 29 0a 09 09 09  ..*-debug-*)....
1c50: 09 74 65 6d 70 6b 69 74 3d 22 24 28 65 63 68 6f  .tempkit="$(echo
1c60: 20 22 24 7b 74 65 6d 70 6b 69 74 7d 22 20 7c 20   "${tempkit}" | 
1c70: 73 65 64 20 27 73 40 2d 64 65 62 75 67 2d 40 2d  sed 's@-debug-@-
1c80: 40 27 29 22 0a 09 09 09 09 61 72 67 73 3d 22 24  @')".....args="$
1c90: 7b 61 72 67 73 7d 20 2d 2d 65 6e 61 62 6c 65 2d  {args} --enable-
1ca0: 73 79 6d 62 6f 6c 73 22 0a 09 09 09 09 3b 3b 0a  symbols".....;;.
1cb0: 09 09 65 73 61 63 0a 09 64 6f 6e 65 0a 0a 09 69  ..esac..done...i
1cc0: 66 20 5b 20 22 24 7b 6b 69 74 64 6c 6c 7d 22 20  f [ "${kitdll}" 
1cd0: 3d 20 22 31 22 20 5d 3b 20 74 68 65 6e 0a 09 09  = "1" ]; then...
1ce0: 23 20 43 75 72 72 65 6e 74 6c 79 20 6e 6f 20 4b  # Currently no K
1cf0: 69 74 44 4c 4c 20 75 73 65 73 20 5a 69 70 0a 09  itDLL uses Zip..
1d00: 09 69 73 7a 69 70 3d 22 30 22 0a 09 66 69 0a 0a  .iszip="0"..fi..
1d10: 09 66 6f 72 20 76 65 72 73 69 6f 6e 20 69 6e 20  .for version in 
1d20: 24 7b 56 45 52 53 49 4f 4e 53 7d 3b 20 64 6f 0a  ${VERSIONS}; do.
1d30: 09 09 23 20 57 6f 72 6b 20 61 72 6f 75 6e 64 20  ..# Work around 
1d40: 63 68 61 6e 67 65 73 20 69 6e 20 64 65 66 61 75  changes in defau
1d50: 6c 74 20 62 65 68 61 76 69 6f 75 72 0a 09 09 69  lt behaviour...i
1d60: 66 20 5b 20 22 24 7b 76 65 72 73 69 6f 6e 7d 22  f [ "${version}"
1d70: 20 3d 20 22 63 76 73 5f 48 45 41 44 22 20 5d 3b   = "cvs_HEAD" ];
1d80: 20 74 68 65 6e 0a 09 09 09 6b 69 74 3d 22 24 28   then....kit="$(
1d90: 65 63 68 6f 20 22 24 7b 6b 69 74 7d 22 20 7c 20  echo "${kit}" | 
1da0: 73 65 64 20 27 73 40 2d 74 68 72 65 61 64 65 64  sed 's@-threaded
1db0: 40 2d 75 6e 74 68 72 65 61 64 65 64 40 27 29 22  @-unthreaded@')"
1dc0: 0a 09 09 09 61 72 67 73 3d 22 24 28 65 63 68 6f  ....args="$(echo
1dd0: 20 22 24 7b 61 72 67 73 7d 22 20 7c 20 73 65 64   "${args}" | sed
1de0: 20 27 73 40 20 2d 2d 65 6e 61 62 6c 65 2d 74 68   's@ --enable-th
1df0: 72 65 61 64 73 40 20 2d 2d 64 69 73 61 62 6c 65  reads@ --disable
1e00: 2d 74 68 72 65 61 64 73 40 27 29 22 0a 09 09 66  -threads@')"...f
1e10: 69 0a 0a 09 09 23 20 43 72 65 61 74 65 20 54 63  i....# Create Tc
1e20: 6c 6b 69 74 0a 09 09 69 66 20 5b 20 22 24 7b 6b  lkit...if [ "${k
1e30: 69 74 64 6c 6c 7d 22 20 3d 20 22 31 22 20 5d 3b  itdll}" = "1" ];
1e40: 20 74 68 65 6e 0a 09 09 09 63 72 65 61 74 65 64   then....created
1e50: 6b 69 74 3d 22 6c 69 62 74 63 6c 6b 69 74 2a 2e  kit="libtclkit*.
1e60: 64 6c 6c 20 6c 69 62 74 63 6c 6b 69 74 2a 2e 2a  dll libtclkit*.*
1e70: 22 0a 09 09 09 6f 75 74 70 75 74 6e 61 6d 65 3d  "....outputname=
1e80: 22 24 7b 54 45 53 54 44 49 52 7d 2f 6b 69 74 73  "${TESTDIR}/kits
1e90: 2f 6c 69 62 74 63 6c 6b 69 74 2d 24 7b 76 65 72  /libtclkit-${ver
1ea0: 73 69 6f 6e 7d 2d 24 7b 6b 69 74 7d 22 0a 09 09  sion}-${kit}"...
1eb0: 09 66 61 69 6c 6f 75 74 70 75 74 6e 61 6d 65 3d  .failoutputname=
1ec0: 22 24 7b 54 45 53 54 44 49 52 7d 2f 6b 69 74 73  "${TESTDIR}/kits
1ed0: 2f 66 61 69 6c 65 64 2f 6c 69 62 74 63 6c 6b 69  /failed/libtclki
1ee0: 74 2d 24 7b 76 65 72 73 69 6f 6e 7d 2d 24 7b 6b  t-${version}-${k
1ef0: 69 74 7d 22 0a 09 09 09 73 64 6b 3d 22 6c 69 62  it}"....sdk="lib
1f00: 74 63 6c 6b 69 74 2d 73 64 6b 2d 24 7b 76 65 72  tclkit-sdk-${ver
1f10: 73 69 6f 6e 7d 2e 74 61 72 2e 67 7a 22 0a 09 09  sion}.tar.gz"...
1f20: 65 6c 73 65 0a 09 09 09 63 72 65 61 74 65 64 6b  else....createdk
1f30: 69 74 3d 22 74 63 6c 6b 69 74 2d 24 7b 76 65 72  it="tclkit-${ver
1f40: 73 69 6f 6e 7d 22 0a 09 09 09 6f 75 74 70 75 74  sion}"....output
1f50: 6e 61 6d 65 3d 22 24 7b 54 45 53 54 44 49 52 7d  name="${TESTDIR}
1f60: 2f 6b 69 74 73 2f 74 63 6c 6b 69 74 2d 24 7b 76  /kits/tclkit-${v
1f70: 65 72 73 69 6f 6e 7d 2d 24 7b 6b 69 74 7d 22 0a  ersion}-${kit}".
1f80: 09 09 09 66 61 69 6c 6f 75 74 70 75 74 6e 61 6d  ...failoutputnam
1f90: 65 3d 22 24 7b 54 45 53 54 44 49 52 7d 2f 6b 69  e="${TESTDIR}/ki
1fa0: 74 73 2f 66 61 69 6c 65 64 2f 74 63 6c 6b 69 74  ts/failed/tclkit
1fb0: 2d 24 7b 76 65 72 73 69 6f 6e 7d 2d 24 7b 6b 69  -${version}-${ki
1fc0: 74 7d 22 0a 09 09 09 73 64 6b 3d 27 27 0a 09 09  t}"....sdk=''...
1fd0: 66 69 0a 09 09 62 75 69 6c 64 6c 6f 67 3d 22 24  fi...buildlog="$
1fe0: 7b 6f 75 74 70 75 74 6e 61 6d 65 7d 2d 62 75 69  {outputname}-bui
1ff0: 6c 64 2e 6c 6f 67 22 0a 09 09 66 61 69 6c 62 75  ld.log"...failbu
2000: 69 6c 64 6c 6f 67 3d 22 24 7b 66 61 69 6c 6f 75  ildlog="${failou
2010: 74 70 75 74 6e 61 6d 65 7d 2d 62 75 69 6c 64 2e  tputname}-build.
2020: 6c 6f 67 22 0a 09 09 74 65 73 74 72 65 73 75 6c  log"...testresul
2030: 74 73 6c 6f 67 3d 22 24 7b 6f 75 74 70 75 74 6e  tslog="${outputn
2040: 61 6d 65 7d 2d 74 65 73 74 73 2e 6c 6f 67 22 0a  ame}-tests.log".
2050: 0a 09 09 69 66 20 5b 20 21 20 2d 66 20 22 24 7b  ...if [ ! -f "${
2060: 6f 75 74 70 75 74 6e 61 6d 65 7d 22 20 5d 3b 20  outputname}" ]; 
2070: 74 68 65 6e 0a 09 09 09 75 6e 73 65 74 20 4b 49  then....unset KI
2080: 54 43 52 45 41 54 4f 52 5f 50 4b 47 53 20 53 54  TCREATOR_PKGS ST
2090: 41 54 49 43 54 4b 20 53 54 52 49 50 0a 0a 09 09  ATICTK STRIP....
20a0: 09 69 66 20 5b 20 2d 66 20 22 24 7b 66 61 69 6c  .if [ -f "${fail
20b0: 6f 75 74 70 75 74 6e 61 6d 65 7d 22 20 5d 3b 20  outputname}" ]; 
20c0: 74 68 65 6e 0a 09 09 09 09 65 63 68 6f 20 22 53  then.....echo "S
20d0: 6b 69 70 70 69 6e 67 20 72 65 62 75 69 6c 64 69  kipping rebuildi
20e0: 6e 67 20 66 61 69 6c 65 64 20 6b 69 74 20 24 7b  ng failed kit ${
20f0: 76 65 72 73 69 6f 6e 7d 2f 24 7b 6b 69 74 7d 20  version}/${kit} 
2100: 2e 2e 2e 22 0a 0a 09 09 09 09 66 61 69 6c 65 64  ..."......failed
2110: 3d 22 24 7b 66 61 69 6c 65 64 7d 20 24 7b 76 65  ="${failed} ${ve
2120: 72 73 69 6f 6e 7d 2f 24 7b 6b 69 74 7d 2d 62 75  rsion}/${kit}-bu
2130: 69 6c 64 22 0a 0a 09 09 09 09 63 6f 6e 74 69 6e  ild"......contin
2140: 75 65 0a 09 09 09 66 69 0a 0a 09 09 09 72 6d 20  ue....fi.....rm 
2150: 2d 66 20 74 63 6c 73 68 0a 09 09 09 2e 2f 6b 69  -f tclsh...../ki
2160: 74 63 72 65 61 74 6f 72 20 63 6c 65 61 6e 20 3e  tcreator clean >
2170: 2f 64 65 76 2f 6e 75 6c 6c 20 32 3e 2f 64 65 76  /dev/null 2>/dev
2180: 2f 6e 75 6c 6c 0a 0a 09 09 09 65 63 68 6f 20 22  /null.....echo "
2190: 43 72 65 61 74 69 6e 67 20 54 63 6c 6b 69 74 20  Creating Tclkit 
21a0: 24 7b 76 65 72 73 69 6f 6e 7d 2f 24 7b 6b 69 74  ${version}/${kit
21b0: 7d 2e 2e 2e 22 0a 09 09 09 65 63 68 6f 20 22 20  }..."....echo " 
21c0: 2a 2a 2a 20 42 75 69 6c 64 20 73 74 61 72 74 65  *** Build starte
21d0: 64 20 24 28 77 68 6f 61 6d 69 29 40 24 28 68 6f  d $(whoami)@$(ho
21e0: 73 74 6e 61 6d 65 29 20 6f 6e 20 24 28 64 61 74  stname) on $(dat
21f0: 65 29 22 20 3e 20 22 24 7b 62 75 69 6c 64 6c 6f  e)" > "${buildlo
2200: 67 7d 22 0a 09 09 09 65 63 68 6f 20 27 27 20 3e  g}"....echo '' >
2210: 3e 20 22 24 7b 62 75 69 6c 64 6c 6f 67 7d 22 0a  > "${buildlog}".
2220: 09 09 09 65 63 68 6f 20 22 20 2a 2a 2a 20 42 75  ...echo " *** Bu
2230: 69 6c 64 20 53 63 72 69 70 74 22 20 3e 3e 20 22  ild Script" >> "
2240: 24 7b 62 75 69 6c 64 6c 6f 67 7d 22 0a 0a 09 09  ${buildlog}"....
2250: 09 69 66 20 5b 20 22 24 7b 6e 6f 74 6b 7d 22 20  .if [ "${notk}" 
2260: 3d 20 22 31 22 20 5d 3b 20 74 68 65 6e 0a 09 09  = "1" ]; then...
2270: 09 09 4b 49 54 43 52 45 41 54 4f 52 5f 50 4b 47  ..KITCREATOR_PKG
2280: 53 3d 27 69 74 63 6c 20 6d 6b 34 74 63 6c 27 0a  S='itcl mk4tcl'.
2290: 09 09 09 66 69 0a 0a 09 09 09 69 66 20 5b 20 22  ...fi.....if [ "
22a0: 24 7b 6e 6f 6d 6b 34 7d 22 20 3d 20 22 31 22 20  ${nomk4}" = "1" 
22b0: 5d 3b 20 74 68 65 6e 0a 09 09 09 09 69 66 20 5b  ]; then.....if [
22c0: 20 2d 7a 20 22 24 7b 4b 49 54 43 52 45 41 54 4f   -z "${KITCREATO
22d0: 52 5f 50 4b 47 53 7d 22 20 5d 3b 20 74 68 65 6e  R_PKGS}" ]; then
22e0: 0a 09 09 09 09 09 4b 49 54 43 52 45 41 54 4f 52  ......KITCREATOR
22f0: 5f 50 4b 47 53 3d 27 69 74 63 6c 20 74 6b 27 0a  _PKGS='itcl tk'.
2300: 09 09 09 09 65 6c 73 65 0a 09 09 09 09 09 4b 49  ....else......KI
2310: 54 43 52 45 41 54 4f 52 5f 50 4b 47 53 3d 22 24  TCREATOR_PKGS="$
2320: 28 65 63 68 6f 20 22 24 7b 4b 49 54 43 52 45 41  (echo "${KITCREA
2330: 54 4f 52 5f 50 4b 47 53 7d 22 20 7c 20 73 65 64  TOR_PKGS}" | sed
2340: 20 27 73 40 6d 6b 34 74 63 6c 40 40 27 29 22 0a   's@mk4tcl@@')".
2350: 09 09 09 09 66 69 0a 09 09 09 66 69 0a 0a 09 09  ....fi....fi....
2360: 09 69 66 20 5b 20 22 24 7b 6b 69 74 64 6c 6c 7d  .if [ "${kitdll}
2370: 22 20 3d 20 22 31 22 20 5d 3b 20 74 68 65 6e 0a  " = "1" ]; then.
2380: 09 09 09 09 69 66 20 5b 20 2d 7a 20 22 24 7b 4b  ....if [ -z "${K
2390: 49 54 43 52 45 41 54 4f 52 5f 50 4b 47 53 7d 22  ITCREATOR_PKGS}"
23a0: 20 5d 3b 20 74 68 65 6e 0a 09 09 09 09 09 4b 49   ]; then......KI
23b0: 54 43 52 45 41 54 4f 52 5f 50 4b 47 53 3d 27 74  TCREATOR_PKGS='t
23c0: 6b 20 69 74 63 6c 20 6d 6b 34 74 63 6c 20 6b 69  k itcl mk4tcl ki
23d0: 74 64 6c 6c 27 0a 09 09 09 09 65 6c 73 65 0a 09  tdll'.....else..
23e0: 09 09 09 09 4b 49 54 43 52 45 41 54 4f 52 5f 50  ....KITCREATOR_P
23f0: 4b 47 53 3d 22 24 7b 4b 49 54 43 52 45 41 54 4f  KGS="${KITCREATO
2400: 52 5f 50 4b 47 53 7d 20 6b 69 74 64 6c 6c 22 0a  R_PKGS} kitdll".
2410: 09 09 09 09 66 69 0a 09 09 09 66 69 0a 0a 09 09  ....fi....fi....
2420: 09 65 78 70 6f 72 74 20 4b 49 54 43 52 45 41 54  .export KITCREAT
2430: 4f 52 5f 50 4b 47 53 0a 0a 09 09 09 69 66 20 5b  OR_PKGS.....if [
2440: 20 2d 6e 20 22 24 7b 4b 49 54 43 52 45 41 54 4f   -n "${KITCREATO
2450: 52 5f 50 4b 47 53 7d 22 20 5d 3b 20 74 68 65 6e  R_PKGS}" ]; then
2460: 0a 09 09 09 09 65 63 68 6f 20 22 20 20 4b 49 54  .....echo "  KIT
2470: 43 52 45 41 54 4f 52 5f 50 4b 47 53 3d 5c 22 24  CREATOR_PKGS=\"$
2480: 7b 4b 49 54 43 52 45 41 54 4f 52 5f 50 4b 47 53  {KITCREATOR_PKGS
2490: 7d 5c 22 22 20 3e 3e 20 22 24 7b 62 75 69 6c 64  }\"" >> "${build
24a0: 6c 6f 67 7d 22 0a 09 09 09 09 65 63 68 6f 20 22  log}".....echo "
24b0: 20 20 65 78 70 6f 72 74 20 4b 49 54 43 52 45 41    export KITCREA
24c0: 54 4f 52 5f 50 4b 47 53 22 20 3e 3e 20 22 24 7b  TOR_PKGS" >> "${
24d0: 62 75 69 6c 64 6c 6f 67 7d 22 0a 09 09 09 66 69  buildlog}"....fi
24e0: 0a 0a 09 09 09 69 66 20 5b 20 22 24 7b 73 74 61  .....if [ "${sta
24f0: 74 69 63 74 6b 7d 22 20 3d 20 22 31 22 20 5d 3b  tictk}" = "1" ];
2500: 20 74 68 65 6e 0a 09 09 09 09 53 54 41 54 49 43   then.....STATIC
2510: 54 4b 3d 22 31 22 0a 09 09 09 09 65 78 70 6f 72  TK="1".....expor
2520: 74 20 53 54 41 54 49 43 54 4b 0a 0a 09 09 09 09  t STATICTK......
2530: 65 63 68 6f 20 22 20 20 53 54 41 54 49 43 54 4b  echo "  STATICTK
2540: 3d 5c 22 24 7b 53 54 41 54 49 43 54 4b 7d 5c 22  =\"${STATICTK}\"
2550: 22 20 3e 3e 20 22 24 7b 62 75 69 6c 64 6c 6f 67  " >> "${buildlog
2560: 7d 22 0a 09 09 09 09 65 63 68 6f 20 22 20 20 65  }".....echo "  e
2570: 78 70 6f 72 74 20 53 54 41 54 49 43 54 4b 22 20  xport STATICTK" 
2580: 3e 3e 20 22 24 7b 62 75 69 6c 64 6c 6f 67 7d 22  >> "${buildlog}"
2590: 0a 09 09 09 66 69 0a 0a 09 09 09 69 66 20 65 63  ....fi.....if ec
25a0: 68 6f 20 22 24 7b 61 72 67 73 7d 22 20 7c 20 67  ho "${args}" | g
25b0: 72 65 70 20 2d 2d 20 27 2d 2d 65 6e 61 62 6c 65  rep -- '--enable
25c0: 2d 73 79 6d 62 6f 6c 73 27 20 3e 2f 64 65 76 2f  -symbols' >/dev/
25d0: 6e 75 6c 6c 3b 20 74 68 65 6e 0a 09 09 09 09 53  null; then.....S
25e0: 54 52 49 50 3d 27 74 72 75 65 27 0a 09 09 09 09  TRIP='true'.....
25f0: 65 78 70 6f 72 74 20 53 54 52 49 50 0a 0a 09 09  export STRIP....
2600: 09 09 65 63 68 6f 20 22 20 20 53 54 52 49 50 3d  ..echo "  STRIP=
2610: 27 74 72 75 65 27 22 20 3e 3e 20 22 24 7b 62 75  'true'" >> "${bu
2620: 69 6c 64 6c 6f 67 7d 22 0a 09 09 09 09 65 63 68  ildlog}".....ech
2630: 6f 20 22 20 20 65 78 70 6f 72 74 20 53 54 52 49  o "  export STRI
2640: 50 22 20 3e 3e 20 22 24 7b 62 75 69 6c 64 6c 6f  P" >> "${buildlo
2650: 67 7d 22 0a 09 09 09 66 69 0a 0a 09 09 09 69 66  g}"....fi.....if
2660: 20 5b 20 22 24 7b 6b 69 74 63 72 65 61 74 6f 72   [ "${kitcreator
2670: 7d 22 20 21 3d 20 22 2e 2f 6b 69 74 63 72 65 61  }" != "./kitcrea
2680: 74 6f 72 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09  tor" ]; then....
2690: 09 65 63 68 6f 20 22 20 20 6d 6b 64 69 72 20 62  .echo "  mkdir b
26a0: 75 69 6c 64 22 20 3e 3e 20 22 24 7b 62 75 69 6c  uild" >> "${buil
26b0: 64 6c 6f 67 7d 22 0a 0a 09 09 09 09 23 20 53 65  dlog}"......# Se
26c0: 76 65 72 61 6c 20 62 75 69 6c 64 20 73 63 72 69  veral build scri
26d0: 70 74 73 20 72 65 6c 79 20 6f 6e 20 6d 69 6e 6b  pts rely on mink
26e0: 69 74 20 74 6f 20 77 6f 72 6b 0a 09 09 09 09 69  it to work.....i
26f0: 66 20 67 72 65 70 20 27 2e 2f 62 75 69 6c 64 2f  f grep './build/
2700: 6d 61 6b 65 2d 6d 69 6e 6b 69 74 27 20 22 24 7b  make-minkit' "${
2710: 6b 69 74 63 72 65 61 74 6f 72 7d 22 20 3e 2f 64  kitcreator}" >/d
2720: 65 76 2f 6e 75 6c 6c 20 32 3e 2f 64 65 76 2f 6e  ev/null 2>/dev/n
2730: 75 6c 6c 3b 20 74 68 65 6e 0a 09 09 09 09 09 65  ull; then......e
2740: 63 68 6f 20 22 20 20 63 61 74 20 3c 3c 20 5c 5f  cho "  cat << \_
2750: 5f 45 4f 46 5f 5f 20 3e 20 2e 2f 62 75 69 6c 64  _EOF__ > ./build
2760: 2f 6d 61 6b 65 2d 6d 69 6e 6b 69 74 22 20 3e 3e  /make-minkit" >>
2770: 20 22 24 7b 62 75 69 6c 64 6c 6f 67 7d 22 0a 09   "${buildlog}"..
2780: 09 09 09 09 73 65 64 20 27 73 40 5e 40 20 20 40  ....sed 's@^@  @
2790: 27 20 20 27 2e 2f 62 75 69 6c 64 2f 6d 61 6b 65  '  './build/make
27a0: 2d 6d 69 6e 6b 69 74 27 20 3e 3e 20 22 24 7b 62  -minkit' >> "${b
27b0: 75 69 6c 64 6c 6f 67 7d 22 0a 09 09 09 09 09 65  uildlog}"......e
27c0: 63 68 6f 20 22 20 20 5f 5f 45 4f 46 5f 5f 22 20  cho "  __EOF__" 
27d0: 3e 3e 20 22 24 7b 62 75 69 6c 64 6c 6f 67 7d 22  >> "${buildlog}"
27e0: 0a 09 09 09 09 09 65 63 68 6f 20 27 27 20 3e 3e  ......echo '' >>
27f0: 20 22 24 7b 62 75 69 6c 64 6c 6f 67 7d 22 0a 09   "${buildlog}"..
2800: 09 09 09 66 69 0a 0a 09 09 09 09 23 20 53 65 76  ...fi......# Sev
2810: 65 72 61 6c 20 62 75 69 6c 64 20 73 63 72 69 70  eral build scrip
2820: 74 73 20 72 65 6c 79 20 6f 6e 20 6d 61 6b 65 2d  ts rely on make-
2830: 6b 69 74 2d 63 72 6f 73 73 63 6f 6d 70 69 6c 65  kit-crosscompile
2840: 20 74 6f 20 77 6f 72 6b 0a 09 09 09 09 69 66 20   to work.....if 
2850: 67 72 65 70 20 27 2e 2f 62 75 69 6c 64 2f 6d 61  grep './build/ma
2860: 6b 65 2d 6b 69 74 2d 63 72 6f 73 73 63 6f 6d 70  ke-kit-crosscomp
2870: 69 6c 65 27 20 22 24 7b 6b 69 74 63 72 65 61 74  ile' "${kitcreat
2880: 6f 72 7d 22 20 3e 2f 64 65 76 2f 6e 75 6c 6c 20  or}" >/dev/null 
2890: 32 3e 2f 64 65 76 2f 6e 75 6c 6c 3b 20 74 68 65  2>/dev/null; the
28a0: 6e 0a 09 09 09 09 09 65 63 68 6f 20 22 20 20 63  n......echo "  c
28b0: 61 74 20 3c 3c 20 5c 5f 5f 45 4f 46 5f 5f 20 3e  at << \__EOF__ >
28c0: 20 2e 2f 62 75 69 6c 64 2f 6d 61 6b 65 2d 6b 69   ./build/make-ki
28d0: 74 2d 63 72 6f 73 73 63 6f 6d 70 69 6c 65 22 20  t-crosscompile" 
28e0: 3e 3e 20 22 24 7b 62 75 69 6c 64 6c 6f 67 7d 22  >> "${buildlog}"
28f0: 0a 09 09 09 09 09 73 65 64 20 27 73 40 5e 40 20  ......sed 's@^@ 
2900: 20 40 27 20 20 27 2e 2f 62 75 69 6c 64 2f 6d 61   @'  './build/ma
2910: 6b 65 2d 6b 69 74 2d 63 72 6f 73 73 63 6f 6d 70  ke-kit-crosscomp
2920: 69 6c 65 27 20 3e 3e 20 22 24 7b 62 75 69 6c 64  ile' >> "${build
2930: 6c 6f 67 7d 22 0a 09 09 09 09 09 65 63 68 6f 20  log}"......echo 
2940: 22 20 20 5f 5f 45 4f 46 5f 5f 22 20 3e 3e 20 22  "  __EOF__" >> "
2950: 24 7b 62 75 69 6c 64 6c 6f 67 7d 22 0a 09 09 09  ${buildlog}"....
2960: 09 09 65 63 68 6f 20 27 27 20 3e 3e 20 22 24 7b  ..echo '' >> "${
2970: 62 75 69 6c 64 6c 6f 67 7d 22 0a 09 09 09 09 66  buildlog}".....f
2980: 69 0a 0a 09 09 09 09 65 63 68 6f 20 22 20 20 63  i......echo "  c
2990: 61 74 20 3c 3c 20 5c 5f 5f 45 4f 46 5f 5f 20 3e  at << \__EOF__ >
29a0: 20 24 7b 6b 69 74 63 72 65 61 74 6f 72 7d 22 20   ${kitcreator}" 
29b0: 3e 3e 20 22 24 7b 62 75 69 6c 64 6c 6f 67 7d 22  >> "${buildlog}"
29c0: 0a 09 09 09 09 73 65 64 20 27 73 40 5e 40 20 20  .....sed 's@^@  
29d0: 40 27 20 20 22 24 7b 6b 69 74 63 72 65 61 74 6f  @'  "${kitcreato
29e0: 72 7d 22 20 3e 3e 20 22 24 7b 62 75 69 6c 64 6c  r}" >> "${buildl
29f0: 6f 67 7d 22 0a 09 09 09 09 65 63 68 6f 20 22 20  og}".....echo " 
2a00: 20 5f 5f 45 4f 46 5f 5f 22 20 3e 3e 20 22 24 7b   __EOF__" >> "${
2a10: 62 75 69 6c 64 6c 6f 67 7d 22 0a 09 09 09 09 65  buildlog}".....e
2a20: 63 68 6f 20 27 27 20 3e 3e 20 22 24 7b 62 75 69  cho '' >> "${bui
2a30: 6c 64 6c 6f 67 7d 22 0a 09 09 09 66 69 0a 09 09  ldlog}"....fi...
2a40: 09 65 63 68 6f 20 22 20 20 5c 22 24 7b 6b 69 74  .echo "  \"${kit
2a50: 63 72 65 61 74 6f 72 7d 5c 22 20 5c 22 24 7b 76  creator}\" \"${v
2a60: 65 72 73 69 6f 6e 7d 5c 22 20 24 7b 61 72 67 73  ersion}\" ${args
2a70: 7d 22 20 3e 3e 20 22 24 7b 62 75 69 6c 64 6c 6f  }" >> "${buildlo
2a80: 67 7d 22 0a 09 09 09 65 63 68 6f 20 27 27 20 3e  g}"....echo '' >
2a90: 3e 20 22 24 7b 62 75 69 6c 64 6c 6f 67 7d 22 0a  > "${buildlog}".
2aa0: 09 09 09 65 63 68 6f 20 27 27 20 3e 3e 20 22 24  ...echo '' >> "$
2ab0: 7b 62 75 69 6c 64 6c 6f 67 7d 22 0a 09 09 09 65  {buildlog}"....e
2ac0: 63 68 6f 20 27 27 20 3e 3e 20 22 24 7b 62 75 69  cho '' >> "${bui
2ad0: 6c 64 6c 6f 67 7d 22 0a 09 09 09 65 63 68 6f 20  ldlog}"....echo 
2ae0: 22 20 2a 2a 2a 20 42 75 69 6c 64 20 52 65 73 75  " *** Build Resu
2af0: 6c 74 73 22 20 3e 3e 20 22 24 7b 62 75 69 6c 64  lts" >> "${build
2b00: 6c 6f 67 7d 22 0a 09 09 09 65 63 68 6f 20 27 27  log}"....echo ''
2b10: 20 3e 3e 20 22 24 7b 62 75 69 6c 64 6c 6f 67 7d   >> "${buildlog}
2b20: 22 0a 0a 09 09 09 62 75 69 6c 64 66 61 69 6c 65  ".....buildfaile
2b30: 64 3d 22 30 22 0a 09 09 09 22 24 7b 6b 69 74 63  d="0"...."${kitc
2b40: 72 65 61 74 6f 72 7d 22 20 22 24 7b 76 65 72 73  reator}" "${vers
2b50: 69 6f 6e 7d 22 20 24 7b 61 72 67 73 7d 20 3e 3e  ion}" ${args} >>
2b60: 20 22 24 7b 62 75 69 6c 64 6c 6f 67 7d 22 20 32   "${buildlog}" 2
2b70: 3e 26 31 20 7c 7c 20 62 75 69 6c 64 66 61 69 6c  >&1 || buildfail
2b80: 65 64 3d 22 31 22 0a 09 09 09 67 72 65 70 20 2d  ed="1"....grep -
2b90: 6e 20 27 5e 27 20 2a 2f 62 75 69 6c 64 2e 6c 6f  n '^' */build.lo
2ba0: 67 20 3e 3e 20 22 24 7b 62 75 69 6c 64 6c 6f 67  g >> "${buildlog
2bb0: 7d 22 20 32 3e 26 31 0a 0a 09 09 09 69 66 20 5b  }" 2>&1.....if [
2bc0: 20 22 24 7b 6b 69 74 64 6c 6c 7d 22 20 3d 20 22   "${kitdll}" = "
2bd0: 31 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09 09 23  1" ]; then.....#
2be0: 20 43 72 65 61 74 65 20 74 65 73 74 20 64 72 69   Create test dri
2bf0: 76 65 72 73 20 66 6f 72 20 4b 69 74 44 4c 4c 0a  vers for KitDLL.
2c00: 09 09 09 09 28 0a 09 09 09 09 09 65 63 68 6f 20  ....(......echo 
2c10: 22 22 0a 09 09 09 09 09 65 63 68 6f 20 22 22 0a  ""......echo "".
2c20: 09 09 09 09 09 65 63 68 6f 20 22 22 0a 09 09 09  .....echo ""....
2c30: 09 09 65 63 68 6f 20 22 20 2a 2a 2a 20 42 75 69  ..echo " *** Bui
2c40: 6c 64 69 6e 67 20 4b 69 74 44 4c 4c 20 74 65 73  lding KitDLL tes
2c50: 74 20 64 72 69 76 65 72 20 28 74 63 6c 73 68 29  t driver (tclsh)
2c60: 22 0a 09 09 09 09 09 65 63 68 6f 20 22 22 0a 0a  "......echo ""..
2c70: 09 09 09 09 09 63 64 20 6b 69 74 73 68 2f 62 75  .....cd kitsh/bu
2c80: 69 6c 64 2f 6b 69 74 73 68 2d 2a 2f 20 7c 7c 20  ild/kitsh-*/ || 
2c90: 65 78 69 74 20 31 0a 09 09 09 09 09 6d 61 6b 65  exit 1......make
2ca0: 20 74 63 6c 73 68 0a 09 09 09 09 09 63 70 20 74   tclsh......cp t
2cb0: 63 6c 73 68 20 2e 2e 2f 2e 2e 2f 2e 2e 2f 0a 09  clsh ../../../..
2cc0: 09 09 09 29 20 3e 3e 20 22 24 7b 62 75 69 6c 64  ...) >> "${build
2cd0: 6c 6f 67 7d 22 20 32 3e 26 31 0a 09 09 09 66 69  log}" 2>&1....fi
2ce0: 0a 0a 09 09 09 23 20 50 65 72 66 6f 72 6d 20 77  .....# Perform w
2cf0: 69 6c 64 63 61 72 64 20 65 78 70 61 6e 73 69 6f  ildcard expansio
2d00: 6e 0a 09 09 09 63 72 65 61 74 65 64 6b 69 74 3d  n....createdkit=
2d10: 22 24 28 6c 73 20 2d 66 31 20 24 7b 63 72 65 61  "$(ls -f1 ${crea
2d20: 74 65 64 6b 69 74 7d 20 32 3e 2f 64 65 76 2f 6e  tedkit} 2>/dev/n
2d30: 75 6c 6c 20 7c 20 67 72 65 70 20 2d 76 20 27 5c  ull | grep -v '\
2d40: 2e 74 61 72 5c 2e 67 7a 24 27 20 7c 20 68 65 61  .tar\.gz$' | hea
2d50: 64 20 2d 6e 20 31 29 22 0a 0a 09 09 09 69 66 20  d -n 1)".....if 
2d60: 5b 20 21 20 2d 66 20 22 24 7b 63 72 65 61 74 65  [ ! -f "${create
2d70: 64 6b 69 74 7d 22 20 5d 3b 20 74 68 65 6e 0a 09  dkit}" ]; then..
2d80: 09 09 09 65 63 68 6f 20 22 46 61 69 6c 65 64 20  ...echo "Failed 
2d90: 74 6f 20 63 72 65 61 74 65 20 6b 69 74 20 24 7b  to create kit ${
2da0: 76 65 72 73 69 6f 6e 7d 2f 24 7b 6b 69 74 7d 22  version}/${kit}"
2db0: 20 3e 26 32 0a 0a 09 09 09 09 66 61 69 6c 65 64   >&2......failed
2dc0: 3d 22 24 7b 66 61 69 6c 65 64 7d 20 24 7b 76 65  ="${failed} ${ve
2dd0: 72 73 69 6f 6e 7d 2f 24 7b 6b 69 74 7d 2d 62 75  rsion}/${kit}-bu
2de0: 69 6c 64 22 0a 0a 09 09 09 09 74 6f 75 63 68 20  ild"......touch 
2df0: 22 24 7b 66 61 69 6c 6f 75 74 70 75 74 6e 61 6d  "${failoutputnam
2e00: 65 7d 22 0a 09 09 09 09 6d 76 20 22 24 7b 62 75  e}".....mv "${bu
2e10: 69 6c 64 6c 6f 67 7d 22 20 22 24 7b 66 61 69 6c  ildlog}" "${fail
2e20: 62 75 69 6c 64 6c 6f 67 7d 22 0a 0a 09 09 09 09  buildlog}"......
2e30: 72 6d 20 2d 66 20 74 63 6c 73 68 0a 0a 09 09 09  rm -f tclsh.....
2e40: 09 63 6f 6e 74 69 6e 75 65 0a 09 09 09 66 69 0a  .continue....fi.
2e50: 0a 09 09 09 23 20 56 65 72 69 66 79 20 73 61 6e  ....# Verify san
2e60: 69 74 79 20 6f 66 20 63 72 65 61 74 65 64 20 6b  ity of created k
2e70: 69 74 0a 09 09 09 69 73 73 61 6e 65 3d 31 0a 0a  it....issane=1..
2e80: 09 09 09 23 23 20 56 65 72 69 66 79 20 74 68 61  ...## Verify tha
2e90: 74 20 57 69 6e 33 32 20 62 75 69 6c 64 73 20 61  t Win32 builds a
2ea0: 72 65 20 6f 66 20 63 6f 72 72 65 63 74 20 74 79  re of correct ty
2eb0: 70 65 0a 09 09 09 23 23 20 56 65 72 69 66 79 20  pe....## Verify 
2ec0: 74 68 61 74 20 44 4c 4c 20 62 75 69 6c 64 73 20  that DLL builds 
2ed0: 61 72 65 20 6f 66 20 63 6f 72 72 65 63 74 20 74  are of correct t
2ee0: 79 70 65 0a 09 09 09 63 61 73 65 20 22 2d 24 7b  ype....case "-${
2ef0: 76 65 72 73 69 6f 6e 7d 2d 24 7b 6b 69 74 7d 2d  version}-${kit}-
2f00: 22 20 69 6e 0a 09 09 09 09 2a 2d 77 69 6e 5b 33  " in.....*-win[3
2f10: 36 5d 5b 32 34 5d 2d 6b 69 74 64 6c 6c 2d 2a 7c  6][24]-kitdll-*|
2f20: 2a 2d 77 69 6e 5b 33 36 5d 5b 32 34 5d 2d 2a 2d  *-win[36][24]-*-
2f30: 6b 69 74 64 6c 6c 2d 2a 29 0a 09 09 09 09 09 69  kitdll-*)......i
2f40: 66 20 21 20 66 69 6c 65 20 22 24 7b 63 72 65 61  f ! file "${crea
2f50: 74 65 64 6b 69 74 7d 22 20 7c 20 67 72 65 70 20  tedkit}" | grep 
2f60: 27 4d 53 20 57 69 6e 64 6f 77 73 27 20 7c 20 67  'MS Windows' | g
2f70: 72 65 70 20 27 28 44 4c 4c 29 27 20 3e 2f 64 65  rep '(DLL)' >/de
2f80: 76 2f 6e 75 6c 6c 3b 20 74 68 65 6e 0a 09 09 09  v/null; then....
2f90: 09 09 09 69 73 73 61 6e 65 3d 30 0a 09 09 09 09  ...issane=0.....
2fa0: 09 66 69 0a 09 09 09 09 09 3b 3b 0a 09 09 09 09  .fi......;;.....
2fb0: 2a 2d 6b 69 74 64 6c 6c 2d 2a 29 0a 09 09 09 09  *-kitdll-*).....
2fc0: 09 69 66 20 21 20 66 69 6c 65 20 22 24 7b 63 72  .if ! file "${cr
2fd0: 65 61 74 65 64 6b 69 74 7d 22 20 7c 20 67 72 65  eatedkit}" | gre
2fe0: 70 20 27 73 68 61 72 65 64 20 6f 62 6a 65 63 74  p 'shared object
2ff0: 27 20 3e 2f 64 65 76 2f 6e 75 6c 6c 3b 20 74 68  ' >/dev/null; th
3000: 65 6e 0a 09 09 09 09 09 09 69 73 73 61 6e 65 3d  en.......issane=
3010: 30 0a 09 09 09 09 09 66 69 0a 09 09 09 09 09 3b  0......fi......;
3020: 3b 0a 09 09 09 09 2a 2d 77 69 6e 5b 33 36 5d 5b  ;.....*-win[36][
3030: 32 34 5d 2d 6e 6f 74 6b 2d 2a 7c 2a 2d 77 69 6e  24]-notk-*|*-win
3040: 5b 33 36 5d 5b 32 34 5d 2d 2a 2d 6e 6f 74 6b 2d  [36][24]-*-notk-
3050: 2a 29 0a 09 09 09 09 09 69 66 20 21 20 66 69 6c  *)......if ! fil
3060: 65 20 22 24 7b 63 72 65 61 74 65 64 6b 69 74 7d  e "${createdkit}
3070: 22 20 7c 20 67 72 65 70 20 27 4d 53 20 57 69 6e  " | grep 'MS Win
3080: 64 6f 77 73 27 20 7c 20 67 72 65 70 20 27 28 63  dows' | grep '(c
3090: 6f 6e 73 6f 6c 65 29 27 20 3e 2f 64 65 76 2f 6e  onsole)' >/dev/n
30a0: 75 6c 6c 3b 20 74 68 65 6e 0a 09 09 09 09 09 09  ull; then.......
30b0: 65 63 68 6f 20 22 4b 69 74 20 66 61 69 6c 65 64  echo "Kit failed
30c0: 20 73 61 6e 69 74 79 20 63 68 65 63 6b 20 66 6f   sanity check fo
30d0: 72 20 62 65 69 6e 67 20 61 20 63 6f 6e 73 6f 6c  r being a consol
30e0: 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 22 20 3e  e application" >
30f0: 26 32 0a 09 09 09 09 09 09 69 73 73 61 6e 65 3d  &2.......issane=
3100: 30 0a 09 09 09 09 09 66 69 0a 09 09 09 09 09 3b  0......fi......;
3110: 3b 0a 09 09 09 09 2a 2d 77 69 6e 5b 33 36 5d 5b  ;.....*-win[36][
3120: 32 34 5d 2d 2a 29 0a 09 09 09 09 09 69 66 20 21  24]-*)......if !
3130: 20 66 69 6c 65 20 22 24 7b 63 72 65 61 74 65 64   file "${created
3140: 6b 69 74 7d 22 20 7c 20 67 72 65 70 20 27 4d 53  kit}" | grep 'MS
3150: 20 57 69 6e 64 6f 77 73 27 20 7c 20 67 72 65 70   Windows' | grep
3160: 20 27 28 47 55 49 29 27 20 3e 2f 64 65 76 2f 6e   '(GUI)' >/dev/n
3170: 75 6c 6c 3b 20 74 68 65 6e 0a 09 09 09 09 09 09  ull; then.......
3180: 65 63 68 6f 20 22 4b 69 74 20 66 61 69 6c 65 64  echo "Kit failed
3190: 20 73 61 6e 69 74 79 20 63 68 65 63 6b 20 66 6f   sanity check fo
31a0: 72 20 62 65 69 6e 67 20 61 20 47 55 49 20 61 70  r being a GUI ap
31b0: 70 6c 69 63 61 74 69 6f 6e 22 20 3e 26 32 0a 09  plication" >&2..
31c0: 09 09 09 09 09 69 73 73 61 6e 65 3d 30 0a 09 09  .....issane=0...
31d0: 09 09 09 66 69 0a 09 09 09 09 09 3b 3b 0a 09 09  ...fi......;;...
31e0: 09 65 73 61 63 0a 0a 09 09 09 23 23 20 56 65 72  .esac.....## Ver
31f0: 69 66 79 20 74 68 65 20 62 75 69 6c 64 20 63 6f  ify the build co
3200: 6d 70 6c 65 74 65 64 20 77 69 74 68 6f 75 74 20  mpleted without 
3210: 77 61 72 6e 69 6e 67 73 0a 09 09 09 69 66 20 5b  warnings....if [
3220: 20 22 24 7b 62 75 69 6c 64 66 61 69 6c 65 64 7d   "${buildfailed}
3230: 22 20 3d 20 22 31 22 20 5d 3b 20 74 68 65 6e 0a  " = "1" ]; then.
3240: 09 09 09 09 65 63 68 6f 20 22 4b 69 74 20 66 61  ....echo "Kit fa
3250: 69 6c 65 64 20 73 61 6e 69 74 79 20 63 68 65 63  iled sanity chec
3260: 6b 20 66 6f 72 20 42 75 69 6c 64 69 6e 67 22 20  k for Building" 
3270: 3e 26 32 0a 0a 09 09 09 09 69 73 73 61 6e 65 3d  >&2......issane=
3280: 30 0a 09 09 09 66 69 0a 0a 09 09 09 23 20 4d 61  0....fi.....# Ma
3290: 6b 65 20 6e 6f 74 65 20 6f 66 20 73 61 6e 69 74  ke note of sanit
32a0: 79 20 66 61 69 6c 75 72 65 0a 09 09 09 69 66 20  y failure....if 
32b0: 5b 20 22 24 7b 69 73 73 61 6e 65 7d 22 20 21 3d  [ "${issane}" !=
32c0: 20 22 31 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09   "1" ]; then....
32d0: 09 65 63 68 6f 20 22 4b 69 74 20 66 61 69 6c 65  .echo "Kit faile
32e0: 64 20 73 61 6e 69 74 79 20 24 7b 76 65 72 73 69  d sanity ${versi
32f0: 6f 6e 7d 2f 24 7b 6b 69 74 7d 22 20 3e 26 32 0a  on}/${kit}" >&2.
3300: 0a 09 09 09 09 66 61 69 6c 65 64 3d 22 24 7b 66  .....failed="${f
3310: 61 69 6c 65 64 7d 20 24 7b 76 65 72 73 69 6f 6e  ailed} ${version
3320: 7d 2f 24 7b 6b 69 74 7d 2d 73 61 6e 69 74 79 22  }/${kit}-sanity"
3330: 0a 0a 09 09 09 09 6d 76 20 22 24 7b 63 72 65 61  ......mv "${crea
3340: 74 65 64 6b 69 74 7d 22 20 22 24 7b 66 61 69 6c  tedkit}" "${fail
3350: 6f 75 74 70 75 74 6e 61 6d 65 7d 22 0a 09 09 09  outputname}"....
3360: 09 6d 76 20 22 24 7b 62 75 69 6c 64 6c 6f 67 7d  .mv "${buildlog}
3370: 22 20 22 24 7b 66 61 69 6c 62 75 69 6c 64 6c 6f  " "${failbuildlo
3380: 67 7d 22 0a 0a 09 09 09 09 72 6d 20 2d 66 20 74  g}"......rm -f t
3390: 63 6c 73 68 0a 0a 09 09 09 09 63 6f 6e 74 69 6e  clsh......contin
33a0: 75 65 0a 09 09 09 66 69 0a 0a 09 09 09 23 20 52  ue....fi.....# R
33b0: 65 6e 61 6d 65 20 63 72 65 61 74 65 64 20 6b 69  ename created ki
33c0: 74 20 74 6f 20 66 69 6e 61 6c 20 64 65 73 74 69  t to final desti
33d0: 6e 61 74 69 6f 6e 0a 09 09 09 6d 76 20 22 24 7b  nation....mv "${
33e0: 63 72 65 61 74 65 64 6b 69 74 7d 22 20 22 24 7b  createdkit}" "${
33f0: 6f 75 74 70 75 74 6e 61 6d 65 7d 22 0a 09 09 09  outputname}"....
3400: 69 66 20 5b 20 2d 66 20 22 74 63 6c 73 68 22 20  if [ -f "tclsh" 
3410: 5d 3b 20 74 68 65 6e 0a 09 09 09 09 6d 76 20 22  ]; then.....mv "
3420: 74 63 6c 73 68 22 20 22 24 7b 6f 75 74 70 75 74  tclsh" "${output
3430: 6e 61 6d 65 7d 2d 74 63 6c 73 68 22 0a 09 09 09  name}-tclsh"....
3440: 66 69 0a 0a 09 09 09 23 20 46 6f 72 20 4b 69 74  fi.....# For Kit
3450: 44 4c 4c 2c 20 6d 61 6b 65 20 61 20 6e 6f 74 65  DLL, make a note
3460: 20 6f 66 20 74 68 65 20 6f 72 69 67 69 6e 61 6c   of the original
3470: 20 6e 61 6d 65 0a 09 09 09 69 66 20 5b 20 22 24   name....if [ "$
3480: 7b 6b 69 74 64 6c 6c 7d 22 20 3d 20 22 31 22 20  {kitdll}" = "1" 
3490: 5d 3b 20 74 68 65 6e 0a 09 09 09 09 65 63 68 6f  ]; then.....echo
34a0: 20 22 24 7b 63 72 65 61 74 65 64 6b 69 74 7d 22   "${createdkit}"
34b0: 20 3e 20 22 24 7b 6f 75 74 70 75 74 6e 61 6d 65   > "${outputname
34c0: 7d 2d 6f 72 69 67 6e 61 6d 65 22 0a 0a 09 09 09  }-origname".....
34d0: 09 69 66 20 5b 20 2d 66 20 22 24 7b 73 64 6b 7d  .if [ -f "${sdk}
34e0: 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09 09 09 6d  " ]; then......m
34f0: 76 20 22 24 7b 73 64 6b 7d 22 20 22 24 7b 6f 75  v "${sdk}" "${ou
3500: 74 70 75 74 6e 61 6d 65 7d 2d 73 64 6b 2e 74 61  tputname}-sdk.ta
3510: 72 2e 67 7a 22 0a 09 09 09 09 66 69 0a 09 09 09  r.gz".....fi....
3520: 66 69 0a 09 09 66 69 0a 0a 09 09 23 20 54 65 73  fi...fi....# Tes
3530: 74 20 7a 69 70 20 73 74 61 74 75 73 0a 09 09 69  t zip status...i
3540: 66 20 75 6e 7a 69 70 20 2d 6c 20 22 24 7b 6f 75  f unzip -l "${ou
3550: 74 70 75 74 6e 61 6d 65 7d 22 20 32 3e 26 31 20  tputname}" 2>&1 
3560: 7c 20 67 72 65 70 20 27 62 6f 6f 74 5c 2e 74 63  | grep 'boot\.tc
3570: 6c 27 20 3e 2f 64 65 76 2f 6e 75 6c 6c 3b 20 74  l' >/dev/null; t
3580: 68 65 6e 0a 09 09 09 63 61 6e 75 6e 7a 69 70 3d  hen....canunzip=
3590: 22 31 22 0a 09 09 65 6c 73 65 0a 09 09 09 63 61  "1"...else....ca
35a0: 6e 75 6e 7a 69 70 3d 22 30 22 0a 09 09 66 69 0a  nunzip="0"...fi.
35b0: 0a 09 09 69 66 20 5b 20 22 24 7b 69 73 7a 69 70  ...if [ "${iszip
35c0: 7d 22 20 21 3d 20 22 24 7b 63 61 6e 75 6e 7a 69  }" != "${canunzi
35d0: 70 7d 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09 65  p}" ]; then....e
35e0: 63 68 6f 20 22 46 61 69 6c 65 64 20 74 6f 20 75  cho "Failed to u
35f0: 6e 7a 69 70 20 7a 69 70 6b 69 74 20 6f 72 20 77  nzip zipkit or w
3600: 61 73 20 61 62 6c 65 20 74 6f 20 75 6e 7a 69 70  as able to unzip
3610: 20 6e 6f 6e 2d 7a 69 70 6b 69 74 20 24 7b 76 65   non-zipkit ${ve
3620: 72 73 69 6f 6e 7d 2f 24 7b 6b 69 74 7d 22 20 3e  rsion}/${kit}" >
3630: 26 32 0a 0a 09 09 09 66 61 69 6c 65 64 3d 22 24  &2.....failed="$
3640: 7b 66 61 69 6c 65 64 7d 20 24 7b 76 65 72 73 69  {failed} ${versi
3650: 6f 6e 7d 2f 24 7b 6b 69 74 7d 2d 7a 69 70 22 0a  on}/${kit}-zip".
3660: 0a 09 09 09 63 6f 6e 74 69 6e 75 65 0a 09 09 66  ....continue...f
3670: 69 0a 0a 09 09 23 20 44 6f 20 6e 6f 74 20 63 6f  i....# Do not co
3680: 6e 74 69 6e 75 65 20 70 61 73 74 20 68 65 72 65  ntinue past here
3690: 20 66 6f 72 20 75 6e 2d 72 75 6e 6e 61 62 6c 65   for un-runnable
36a0: 20 6b 69 74 73 0a 09 09 69 66 20 5b 20 22 24 7b   kits...if [ "${
36b0: 72 75 6e 6e 61 62 6c 65 7d 22 20 21 3d 20 22 31  runnable}" != "1
36c0: 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09 63 6f 6e  " ]; then....con
36d0: 74 69 6e 75 65 0a 09 09 66 69 0a 0a 09 09 23 20  tinue...fi....# 
36e0: 49 66 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74  If the name of t
36f0: 68 65 20 6f 72 69 67 69 6e 61 6c 20 62 75 69 6c  he original buil
3700: 64 20 6d 61 74 74 65 72 73 2c 20 73 79 6d 6c 69  d matters, symli
3710: 6e 6b 20 69 74 20 75 70 0a 09 09 69 66 20 5b 20  nk it up...if [ 
3720: 2d 66 20 22 24 7b 6f 75 74 70 75 74 6e 61 6d 65  -f "${outputname
3730: 7d 2d 6f 72 69 67 6e 61 6d 65 22 20 5d 3b 20 74  }-origname" ]; t
3740: 68 65 6e 0a 09 09 09 63 72 65 61 74 65 64 6b 69  hen....createdki
3750: 74 3d 22 24 28 63 61 74 20 22 24 7b 6f 75 74 70  t="$(cat "${outp
3760: 75 74 6e 61 6d 65 7d 2d 6f 72 69 67 6e 61 6d 65  utname}-origname
3770: 22 29 22 0a 0a 09 09 09 6c 6e 20 2d 73 20 22 24  ")".....ln -s "$
3780: 7b 6f 75 74 70 75 74 6e 61 6d 65 7d 22 20 22 24  {outputname}" "$
3790: 7b 63 72 65 61 74 65 64 6b 69 74 7d 22 0a 09 09  {createdkit}"...
37a0: 66 69 0a 0a 09 09 23 20 50 65 72 66 6f 72 6d 20  fi....# Perform 
37b0: 62 61 74 74 65 72 79 20 6f 66 20 74 65 73 74 73  battery of tests
37c0: 0a 09 09 23 23 20 43 6c 65 61 6e 20 74 65 73 74  ...## Clean test
37d0: 73 20 6c 6f 67 0a 09 09 72 6d 20 2d 66 20 22 24  s log...rm -f "$
37e0: 7b 74 65 73 74 72 65 73 75 6c 74 73 6c 6f 67 7d  {testresultslog}
37f0: 22 0a 09 09 66 6f 72 20 74 65 73 74 73 63 70 20  "...for testscp 
3800: 69 6e 20 22 24 7b 54 45 53 54 44 49 52 7d 22 2f  in "${TESTDIR}"/
3810: 74 65 73 74 73 2f 2a 2e 74 63 6c 3b 20 64 6f 0a  tests/*.tcl; do.
3820: 09 09 09 74 65 73 74 73 63 70 5f 74 61 67 3d 22  ...testscp_tag="
3830: 24 28 62 61 73 65 6e 61 6d 65 20 22 24 7b 74 65  $(basename "${te
3840: 73 74 73 63 70 7d 22 20 2e 74 63 6c 29 22 0a 09  stscp}" .tcl)"..
3850: 09 09 74 65 73 74 73 63 70 70 72 65 3d 22 24 28  ..testscppre="$(
3860: 64 69 72 6e 61 6d 65 20 22 24 7b 74 65 73 74 73  dirname "${tests
3870: 63 70 7d 22 29 2f 24 7b 74 65 73 74 73 63 70 5f  cp}")/${testscp_
3880: 74 61 67 7d 2e 73 68 22 0a 09 09 09 73 63 70 6c  tag}.sh"....scpl
3890: 6f 67 66 69 6c 65 3d 22 24 7b 6f 75 74 70 75 74  ogfile="${output
38a0: 6e 61 6d 65 7d 2d 24 7b 74 65 73 74 73 63 70 5f  name}-${testscp_
38b0: 74 61 67 7d 2e 6c 6f 67 22 0a 0a 09 09 09 23 20  tag}.log".....# 
38c0: 49 66 20 61 20 63 6f 6d 6d 61 6e 64 20 69 73 20  If a command is 
38d0: 72 65 71 75 69 72 65 64 20 74 6f 20 73 74 61 72  required to star
38e0: 74 20 74 68 65 20 6b 69 74 2c 20 70 72 65 70 61  t the kit, prepa
38f0: 72 65 20 74 6f 20 6b 69 6c 6c 20 69 74 0a 09 09  re to kill it...
3900: 09 23 20 69 6e 20 63 61 73 65 20 6f 66 20 74 69  .# in case of ti
3910: 6d 65 6f 75 74 2e 0a 09 09 09 23 23 20 54 65 6d  meout.....## Tem
3920: 70 6f 72 61 72 69 6c 79 20 64 69 73 61 62 6c 65  porarily disable
3930: 64 20 73 69 6e 63 65 20 63 75 72 72 65 6e 74 6c  d since currentl
3940: 79 20 69 74 20 69 73 20 63 61 75 73 69 6e 67 0a  y it is causing.
3950: 09 09 09 23 23 20 6d 6f 72 65 20 70 72 6f 62 6c  ...## more probl
3960: 65 6d 73 20 69 6e 20 74 68 65 20 66 6f 72 6d 20  ems in the form 
3970: 6f 66 20 74 65 73 74 73 20 62 65 69 6e 67 20 6b  of tests being k
3980: 69 6c 6c 65 64 0a 09 09 09 23 23 20 70 72 65 6d  illed....## prem
3990: 61 74 75 72 65 6c 79 20 74 68 61 6e 20 77 65 20  aturely than we 
39a0: 61 72 65 20 68 61 76 69 6e 67 20 69 73 73 75 65  are having issue
39b0: 73 20 77 69 74 68 20 74 65 73 74 73 0a 09 09 09  s with tests....
39c0: 23 23 20 68 61 6e 67 69 6e 67 0a 09 09 09 6b 69  ## hanging....ki
39d0: 74 72 75 6e 6b 69 6c 6c 70 69 64 3d 22 22 0a 09  trunkillpid=""..
39e0: 09 09 69 66 20 5b 20 22 31 22 20 3d 20 22 30 22  ..if [ "1" = "0"
39f0: 20 2d 61 20 2d 6e 20 22 24 7b 6b 69 74 72 75 6e   -a -n "${kitrun
3a00: 63 6d 64 7d 22 20 5d 3b 20 74 68 65 6e 0a 09 09  cmd}" ]; then...
3a10: 09 09 28 0a 09 09 09 09 09 73 6c 65 65 70 20 31  ..(......sleep 1
3a20: 32 30 0a 09 09 09 09 09 6b 69 6c 6c 61 6c 6c 20  20......killall 
3a30: 22 24 28 62 61 73 65 6e 61 6d 65 20 22 24 7b 6f  "$(basename "${o
3a40: 75 74 70 75 74 6e 61 6d 65 7d 22 29 22 20 3e 2f  utputname}")" >/
3a50: 64 65 76 2f 6e 75 6c 6c 20 32 3e 2f 64 65 76 2f  dev/null 2>/dev/
3a60: 6e 75 6c 6c 0a 09 09 09 09 29 20 3e 2f 64 65 76  null.....) >/dev
3a70: 2f 6e 75 6c 6c 20 32 3e 2f 64 65 76 2f 6e 75 6c  /null 2>/dev/nul
3a80: 6c 20 26 0a 09 09 09 09 6b 69 74 72 75 6e 6b 69  l &.....kitrunki
3a90: 6c 6c 70 69 64 3d 22 24 21 22 0a 09 09 09 66 69  llpid="$!"....fi
3aa0: 0a 0a 09 09 09 28 0a 09 09 09 09 69 66 20 5b 20  .....(.....if [ 
3ab0: 2d 66 20 22 24 7b 74 65 73 74 73 63 70 70 72 65  -f "${testscppre
3ac0: 7d 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09 09 09  }" ]; then......
3ad0: 2e 20 22 24 7b 74 65 73 74 73 63 70 70 72 65 7d  . "${testscppre}
3ae0: 22 0a 09 09 09 09 66 69 0a 0a 09 09 09 09 69 66  ".....fi......if
3af0: 20 5b 20 22 24 7b 6b 69 74 64 6c 6c 7d 22 20 3d   [ "${kitdll}" =
3b00: 20 22 31 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09   "1" ]; then....
3b10: 09 09 24 7b 6b 69 74 72 75 6e 63 6d 64 7d 20 22  ..${kitruncmd} "
3b20: 24 7b 6f 75 74 70 75 74 6e 61 6d 65 7d 2d 74 63  ${outputname}-tc
3b30: 6c 73 68 22 20 22 24 7b 74 65 73 74 73 63 70 7d  lsh" "${testscp}
3b40: 22 20 22 24 7b 6f 75 74 70 75 74 6e 61 6d 65 7d  " "${outputname}
3b50: 22 20 22 24 7b 6b 69 74 7d 22 20 22 24 7b 76 65  " "${kit}" "${ve
3b60: 72 73 69 6f 6e 7d 22 0a 09 09 09 09 65 6c 73 65  rsion}".....else
3b70: 0a 09 09 09 09 09 24 7b 6b 69 74 72 75 6e 63 6d  ......${kitruncm
3b80: 64 7d 20 22 24 7b 6f 75 74 70 75 74 6e 61 6d 65  d} "${outputname
3b90: 7d 22 20 22 24 7b 74 65 73 74 73 63 70 7d 22 20  }" "${testscp}" 
3ba0: 22 24 7b 6f 75 74 70 75 74 6e 61 6d 65 7d 22 20  "${outputname}" 
3bb0: 22 24 7b 6b 69 74 7d 22 20 22 24 7b 76 65 72 73  "${kit}" "${vers
3bc0: 69 6f 6e 7d 22 0a 09 09 09 09 66 69 0a 09 09 09  ion}".....fi....
3bd0: 29 20 3e 20 22 24 7b 73 63 70 6c 6f 67 66 69 6c  ) > "${scplogfil
3be0: 65 7d 22 20 32 3e 26 31 0a 0a 09 09 09 69 66 20  e}" 2>&1.....if 
3bf0: 5b 20 22 24 3f 22 20 21 3d 20 22 30 22 20 5d 3b  [ "$?" != "0" ];
3c00: 20 74 68 65 6e 0a 09 09 09 09 65 63 68 6f 20 22   then.....echo "
3c10: 53 63 72 69 70 74 20 66 61 69 6c 65 64 3a 20 24  Script failed: $
3c20: 7b 74 65 73 74 73 63 70 5f 74 61 67 7d 20 6f 6e  {testscp_tag} on
3c30: 20 24 7b 76 65 72 73 69 6f 6e 7d 2f 24 7b 6b 69   ${version}/${ki
3c40: 74 7d 22 20 3e 26 32 0a 0a 09 09 09 09 66 61 69  t}" >&2......fai
3c50: 6c 65 64 3d 22 24 7b 66 61 69 6c 65 64 7d 20 24  led="${failed} $
3c60: 7b 76 65 72 73 69 6f 6e 7d 2f 24 7b 6b 69 74 7d  {version}/${kit}
3c70: 2d 74 65 73 74 2d 24 7b 74 65 73 74 73 63 70 5f  -test-${testscp_
3c80: 74 61 67 7d 22 0a 0a 09 09 09 09 65 63 68 6f 20  tag}"......echo 
3c90: 22 24 7b 74 65 73 74 73 63 70 5f 74 61 67 7d 3a  "${testscp_tag}:
3ca0: 20 46 41 49 4c 22 20 3e 3e 20 20 22 24 7b 74 65   FAIL" >>  "${te
3cb0: 73 74 72 65 73 75 6c 74 73 6c 6f 67 7d 22 0a 0a  stresultslog}"..
3cc0: 09 09 09 09 63 6f 6e 74 69 6e 75 65 0a 09 09 09  ....continue....
3cd0: 66 69 0a 0a 09 09 09 23 20 4b 69 6c 6c 20 74 68  fi.....# Kill th
3ce0: 65 20 77 61 74 63 68 64 6f 67 20 66 6f 72 20 74  e watchdog for t
3cf0: 68 69 73 20 69 74 65 72 61 74 69 6f 6e 0a 09 09  his iteration...
3d00: 09 69 66 20 5b 20 2d 6e 20 22 24 7b 6b 69 74 72  .if [ -n "${kitr
3d10: 75 6e 6b 69 6c 6c 70 69 64 7d 22 20 5d 3b 20 74  unkillpid}" ]; t
3d20: 68 65 6e 0a 09 09 09 09 6b 69 6c 6c 20 2d 39 20  hen.....kill -9 
3d30: 22 24 7b 6b 69 74 72 75 6e 6b 69 6c 6c 70 69 64  "${kitrunkillpid
3d40: 7d 22 20 3e 2f 64 65 76 2f 6e 75 6c 6c 20 32 3e  }" >/dev/null 2>
3d50: 2f 64 65 76 2f 6e 75 6c 6c 0a 09 09 09 66 69 0a  /dev/null....fi.
3d60: 0a 09 09 09 65 63 68 6f 20 22 24 7b 74 65 73 74  ....echo "${test
3d70: 73 63 70 5f 74 61 67 7d 3a 20 50 41 53 53 22 20  scp_tag}: PASS" 
3d80: 3e 3e 20 20 22 24 7b 74 65 73 74 72 65 73 75 6c  >>  "${testresul
3d90: 74 73 6c 6f 67 7d 22 0a 0a 09 09 09 72 6d 20 2d  tslog}".....rm -
3da0: 66 20 22 24 7b 73 63 70 6c 6f 67 66 69 6c 65 7d  f "${scplogfile}
3db0: 22 0a 09 09 64 6f 6e 65 0a 0a 09 09 69 66 20 5b  "...done....if [
3dc0: 20 2d 66 20 22 24 7b 6f 75 74 70 75 74 6e 61 6d   -f "${outputnam
3dd0: 65 7d 2d 6f 72 69 67 6e 61 6d 65 22 20 5d 3b 20  e}-origname" ]; 
3de0: 74 68 65 6e 0a 09 09 09 72 6d 20 2d 66 20 22 24  then....rm -f "$
3df0: 7b 63 72 65 61 74 65 64 6b 69 74 7d 22 0a 09 09  {createdkit}"...
3e00: 66 69 0a 09 64 6f 6e 65 0a 64 6f 6e 65 0a 0a 69  fi..done.done..i
3e10: 66 20 5b 20 2d 6e 20 22 24 7b 66 61 69 6c 65 64  f [ -n "${failed
3e20: 7d 22 20 5d 3b 20 74 68 65 6e 0a 09 65 63 68 6f  }" ]; then..echo
3e30: 20 22 46 61 69 6c 65 64 3a 20 24 7b 66 61 69 6c   "Failed: ${fail
3e40: 65 64 7d 22 0a 66 69 0a 0a 23 20 43 6c 65 61 6e  ed}".fi..# Clean
3e50: 75 70 0a 23 23 20 54 65 72 6d 69 6e 61 74 65 20  up.## Terminate 
3e60: 58 76 66 62 0a 6b 69 6c 6c 20 2d 39 20 22 24 7b  Xvfb.kill -9 "${
3e70: 58 56 46 42 5f 50 49 44 7d 22 0a 0a 23 23 20 52  XVFB_PID}"..## R
3e80: 65 6d 6f 76 65 20 77 69 6e 65 0a 72 6d 20 2d 72  emove wine.rm -r
3e90: 66 20 22 24 7b 57 49 4e 45 50 52 45 46 49 58 33  f "${WINEPREFIX3
3ea0: 32 7d 22 20 22 24 7b 57 49 4e 45 50 52 45 46 49  2}" "${WINEPREFI
3eb0: 58 36 34 7d 22 0a 0a 2e 2f 6b 69 74 63 72 65 61  X64}".../kitcrea
3ec0: 74 6f 72 20 63 6c 65 61 6e 0a 72 6d 20 2d 66 20  tor clean.rm -f 
3ed0: 74 63 6c 73 68 0a                                tclsh.