Hex Artifact Content

Artifact f95adb2a3c4908f36fd4866b905ec913ea15d9f3:


0000: 23 21 20 2f 62 69 6e 2f 62 61 73 68 0a 0a 69 66  #! /bin/bash..if
0010: 20 5b 20 21 20 2d 66 20 27 62 75 69 6c 64 2e 73   [ ! -f 'build.s
0020: 68 27 20 5d 3b 20 74 68 65 6e 0a 09 65 63 68 6f  h' ]; then..echo
0030: 20 27 45 52 52 4f 52 3a 20 54 68 69 73 20 73 63   'ERROR: This sc
0040: 72 69 70 74 20 6d 75 73 74 20 62 65 20 72 75 6e  ript must be run
0050: 20 66 72 6f 6d 20 74 68 65 20 64 69 72 65 63 74   from the direct
0060: 6f 72 79 20 69 74 20 69 73 20 69 6e 27 20 3e 26  ory it is in' >&
0070: 32 0a 0a 09 65 78 69 74 20 31 0a 66 69 0a 69 66  2...exit 1.fi.if
0080: 20 5b 20 2d 7a 20 22 24 7b 54 43 4c 56 45 52 53   [ -z "${TCLVERS
0090: 7d 22 20 5d 3b 20 74 68 65 6e 0a 09 65 63 68 6f  }" ]; then..echo
00a0: 20 27 45 52 52 4f 52 3a 20 54 68 65 20 54 43 4c   'ERROR: The TCL
00b0: 56 45 52 53 20 65 6e 76 69 72 6f 6e 6d 65 6e 74  VERS environment
00c0: 20 76 61 72 69 61 62 6c 65 20 69 73 20 6e 6f 74   variable is not
00d0: 20 73 65 74 27 20 3e 26 32 0a 0a 09 65 78 69 74   set' >&2...exit
00e0: 20 31 0a 66 69 0a 0a 53 52 43 3d 22 73 72 63 2f   1.fi..SRC="src/
00f0: 74 63 6c 24 7b 54 43 4c 56 45 52 53 7d 2e 74 61  tcl${TCLVERS}.ta
0100: 72 2e 67 7a 22 0a 53 52 43 55 52 4c 3d 22 68 74  r.gz".SRCURL="ht
0110: 74 70 3a 2f 2f 70 72 64 6f 77 6e 6c 6f 61 64 73  tp://prdownloads
0120: 2e 73 6f 75 72 63 65 66 6f 72 67 65 2e 6e 65 74  .sourceforge.net
0130: 2f 74 63 6c 2f 74 63 6c 24 7b 54 43 4c 56 45 52  /tcl/tcl${TCLVER
0140: 53 7d 2d 73 72 63 2e 74 61 72 2e 67 7a 22 0a 42  S}-src.tar.gz".B
0150: 55 49 4c 44 44 49 52 3d 22 24 28 70 77 64 29 2f  UILDDIR="$(pwd)/
0160: 62 75 69 6c 64 2f 74 63 6c 24 7b 54 43 4c 56 45  build/tcl${TCLVE
0170: 52 53 7d 22 0a 4f 55 54 44 49 52 3d 22 24 28 70  RS}".OUTDIR="$(p
0180: 77 64 29 2f 6f 75 74 22 0a 49 4e 53 54 44 49 52  wd)/out".INSTDIR
0190: 3d 22 24 28 70 77 64 29 2f 69 6e 73 74 22 0a 50  ="$(pwd)/inst".P
01a0: 41 54 43 48 53 43 52 49 50 54 44 49 52 3d 22 24  ATCHSCRIPTDIR="$
01b0: 28 70 77 64 29 2f 70 61 74 63 68 73 63 72 69 70  (pwd)/patchscrip
01c0: 74 73 22 0a 50 41 54 43 48 44 49 52 3d 22 24 28  ts".PATCHDIR="$(
01d0: 70 77 64 29 2f 70 61 74 63 68 65 73 22 0a 65 78  pwd)/patches".ex
01e0: 70 6f 72 74 20 53 52 43 20 53 52 43 55 52 4c 20  port SRC SRCURL 
01f0: 42 55 49 4c 44 44 49 52 20 4f 55 54 44 49 52 20  BUILDDIR OUTDIR 
0200: 49 4e 53 54 44 49 52 20 50 41 54 43 48 53 43 52  INSTDIR PATCHSCR
0210: 49 50 54 44 49 52 20 50 41 54 43 48 44 49 52 0a  IPTDIR PATCHDIR.
0220: 0a 72 6d 20 2d 72 66 20 27 62 75 69 6c 64 27 20  .rm -rf 'build' 
0230: 27 6f 75 74 27 20 27 69 6e 73 74 27 0a 6d 6b 64  'out' 'inst'.mkd
0240: 69 72 20 27 62 75 69 6c 64 27 20 27 6f 75 74 27  ir 'build' 'out'
0250: 20 27 69 6e 73 74 27 20 7c 7c 20 65 78 69 74 20   'inst' || exit 
0260: 31 0a 0a 69 66 20 5b 20 21 20 2d 66 20 22 24 7b  1..if [ ! -f "${
0270: 53 52 43 7d 22 20 5d 3b 20 74 68 65 6e 0a 09 6d  SRC}" ]; then..m
0280: 6b 64 69 72 20 27 73 72 63 27 20 3e 2f 64 65 76  kdir 'src' >/dev
0290: 2f 6e 75 6c 6c 20 32 3e 2f 64 65 76 2f 6e 75 6c  /null 2>/dev/nul
02a0: 6c 0a 0a 09 69 66 20 65 63 68 6f 20 22 24 7b 54  l...if echo "${T
02b0: 43 4c 56 45 52 53 7d 22 20 7c 20 67 72 65 70 20  CLVERS}" | grep 
02c0: 27 5e 63 76 73 5f 27 20 3e 2f 64 65 76 2f 6e 75  '^cvs_' >/dev/nu
02d0: 6c 6c 3b 20 74 68 65 6e 0a 09 09 43 56 53 54 41  ll; then...CVSTA
02e0: 47 3d 24 28 65 63 68 6f 20 22 24 7b 54 43 4c 56  G=$(echo "${TCLV
02f0: 45 52 53 7d 22 20 7c 20 73 65 64 20 27 73 2f 5e  ERS}" | sed 's/^
0300: 63 76 73 5f 2f 2f 67 27 29 0a 09 09 69 66 20 5b  cvs_//g')...if [
0310: 20 22 24 7b 43 56 53 54 41 47 7d 22 20 3d 20 22   "${CVSTAG}" = "
0320: 48 45 41 44 22 20 5d 3b 20 74 68 65 6e 0a 09 09  HEAD" ]; then...
0330: 09 43 56 53 54 41 47 3d 22 74 72 75 6e 6b 22 0a  .CVSTAG="trunk".
0340: 09 09 66 69 0a 09 09 65 78 70 6f 72 74 20 43 56  ..fi...export CV
0350: 53 54 41 47 0a 0a 09 09 28 0a 09 09 09 63 64 20  STAG....(....cd 
0360: 73 72 63 20 7c 7c 20 65 78 69 74 20 31 0a 0a 09  src || exit 1...
0370: 09 09 72 6d 20 2d 66 20 22 74 6d 70 2d 74 63 6c  ..rm -f "tmp-tcl
0380: 2e 7a 69 70 22 20 22 74 6d 70 2d 69 74 63 6c 2e  .zip" "tmp-itcl.
0390: 7a 69 70 22 20 22 74 6d 70 2d 74 68 72 65 61 64  zip" "tmp-thread
03a0: 2e 7a 69 70 22 20 22 74 6d 70 2d 74 63 6c 63 6f  .zip" "tmp-tclco
03b0: 6e 66 69 67 2e 7a 69 70 22 0a 09 09 09 77 67 65  nfig.zip"....wge
03c0: 74 20 2d 4f 20 22 74 6d 70 2d 74 63 6c 2e 7a 69  t -O "tmp-tcl.zi
03d0: 70 22 20 22 68 74 74 70 3a 2f 2f 72 6b 65 65 6e  p" "http://rkeen
03e0: 65 2e 6f 72 67 2f 70 72 6f 6a 65 63 74 73 2f 74  e.org/projects/t
03f0: 63 6c 2f 74 63 6c 2e 66 6f 73 73 69 6c 2f 7a 69  cl/tcl.fossil/zi
0400: 70 2f 74 63 6c 2d 24 7b 43 56 53 54 41 47 7d 2e  p/tcl-${CVSTAG}.
0410: 7a 69 70 3f 75 75 69 64 3d 24 7b 43 56 53 54 41  zip?uuid=${CVSTA
0420: 47 7d 22 20 7c 7c 20 72 6d 20 2d 66 20 22 74 6d  G}" || rm -f "tm
0430: 70 2d 74 63 6c 2e 7a 69 70 22 0a 09 09 09 77 67  p-tcl.zip"....wg
0440: 65 74 20 2d 4f 20 22 74 6d 70 2d 69 74 63 6c 2e  et -O "tmp-itcl.
0450: 7a 69 70 22 20 22 68 74 74 70 3a 2f 2f 72 6b 65  zip" "http://rke
0460: 65 6e 65 2e 6f 72 67 2f 70 72 6f 6a 65 63 74 73  ene.org/projects
0470: 2f 74 63 6c 2f 69 74 63 6c 2e 66 6f 73 73 69 6c  /tcl/itcl.fossil
0480: 2f 7a 69 70 2f 69 74 63 6c 2d 24 7b 43 56 53 54  /zip/itcl-${CVST
0490: 41 47 7d 2e 7a 69 70 3f 75 75 69 64 3d 24 7b 43  AG}.zip?uuid=${C
04a0: 56 53 54 41 47 7d 22 20 7c 7c 20 72 6d 20 2d 66  VSTAG}" || rm -f
04b0: 20 22 74 6d 70 2d 69 74 63 6c 2e 7a 69 70 22 0a   "tmp-itcl.zip".
04c0: 09 09 09 77 67 65 74 20 2d 4f 20 22 74 6d 70 2d  ...wget -O "tmp-
04d0: 74 68 72 65 61 64 2e 7a 69 70 22 20 22 68 74 74  thread.zip" "htt
04e0: 70 3a 2f 2f 72 6b 65 65 6e 65 2e 6f 72 67 2f 70  p://rkeene.org/p
04f0: 72 6f 6a 65 63 74 73 2f 74 63 6c 2f 74 68 72 65  rojects/tcl/thre
0500: 61 64 2e 66 6f 73 73 69 6c 2f 7a 69 70 2f 74 68  ad.fossil/zip/th
0510: 72 65 61 64 2d 24 7b 43 56 53 54 41 47 7d 2e 7a  read-${CVSTAG}.z
0520: 69 70 3f 75 75 69 64 3d 24 7b 43 56 53 54 41 47  ip?uuid=${CVSTAG
0530: 7d 22 20 7c 7c 20 72 6d 20 2d 66 20 22 74 6d 70  }" || rm -f "tmp
0540: 2d 74 68 72 65 61 64 2e 7a 69 70 22 0a 09 09 09  -thread.zip"....
0550: 77 67 65 74 20 2d 4f 20 22 74 6d 70 2d 74 63 6c  wget -O "tmp-tcl
0560: 63 6f 6e 66 69 67 2e 7a 69 70 22 20 22 68 74 74  config.zip" "htt
0570: 70 3a 2f 2f 72 6b 65 65 6e 65 2e 6f 72 67 2f 70  p://rkeene.org/p
0580: 72 6f 6a 65 63 74 73 2f 74 63 6c 2f 74 63 6c 63  rojects/tcl/tclc
0590: 6f 6e 66 69 67 2e 66 6f 73 73 69 6c 2f 7a 69 70  onfig.fossil/zip
05a0: 2f 74 63 6c 63 6f 6e 66 69 67 2d 24 7b 43 56 53  /tclconfig-${CVS
05b0: 54 41 47 7d 2e 7a 69 70 3f 75 75 69 64 3d 24 7b  TAG}.zip?uuid=${
05c0: 43 56 53 54 41 47 7d 22 20 7c 7c 20 72 6d 20 2d  CVSTAG}" || rm -
05d0: 66 20 22 74 6d 70 2d 74 63 6c 63 6f 6e 66 69 67  f "tmp-tclconfig
05e0: 2e 7a 69 70 22 0a 0a 09 09 09 75 6e 7a 69 70 20  .zip".....unzip 
05f0: 22 74 6d 70 2d 74 63 6c 2e 7a 69 70 22 0a 09 09  "tmp-tcl.zip"...
0600: 09 72 6d 20 2d 66 20 22 74 6d 70 2d 74 63 6c 2e  .rm -f "tmp-tcl.
0610: 7a 69 70 22 0a 0a 09 09 09 75 6e 7a 69 70 20 22  zip".....unzip "
0620: 74 6d 70 2d 69 74 63 6c 2e 7a 69 70 22 0a 09 09  tmp-itcl.zip"...
0630: 09 72 6d 20 2d 66 20 22 74 6d 70 2d 69 74 63 6c  .rm -f "tmp-itcl
0640: 2e 7a 69 70 22 0a 0a 09 09 09 75 6e 7a 69 70 20  .zip".....unzip 
0650: 22 74 6d 70 2d 74 68 72 65 61 64 2e 7a 69 70 22  "tmp-thread.zip"
0660: 0a 09 09 09 72 6d 20 2d 66 20 22 74 6d 70 2d 74  ....rm -f "tmp-t
0670: 68 72 65 61 64 2e 7a 69 70 22 0a 0a 09 09 09 75  hread.zip".....u
0680: 6e 7a 69 70 20 22 74 6d 70 2d 74 63 6c 63 6f 6e  nzip "tmp-tclcon
0690: 66 69 67 2e 7a 69 70 22 0a 09 09 09 72 6d 20 2d  fig.zip"....rm -
06a0: 66 20 22 74 6d 70 2d 74 63 6c 63 6f 6e 66 69 67  f "tmp-tclconfig
06b0: 2e 7a 69 70 22 0a 0a 09 09 09 72 6d 20 2d 72 66  .zip".....rm -rf
06c0: 20 22 74 63 6c 24 7b 54 43 4c 56 45 52 53 7d 22   "tcl${TCLVERS}"
06d0: 0a 09 09 09 6d 76 20 22 74 63 6c 2d 24 7b 43 56  ....mv "tcl-${CV
06e0: 53 54 41 47 7d 22 20 22 74 63 6c 24 7b 54 43 4c  STAG}" "tcl${TCL
06f0: 56 45 52 53 7d 22 0a 09 09 09 6d 76 20 22 69 74  VERS}"....mv "it
0700: 63 6c 2d 24 7b 43 56 53 54 41 47 7d 22 20 22 74  cl-${CVSTAG}" "t
0710: 63 6c 24 7b 54 43 4c 56 45 52 53 7d 2f 70 6b 67  cl${TCLVERS}/pkg
0720: 73 2f 69 74 63 6c 22 0a 09 09 09 6d 76 20 22 74  s/itcl"....mv "t
0730: 68 72 65 61 64 2d 24 7b 43 56 53 54 41 47 7d 22  hread-${CVSTAG}"
0740: 20 22 74 63 6c 24 7b 54 43 4c 56 45 52 53 7d 2f   "tcl${TCLVERS}/
0750: 70 6b 67 73 2f 74 68 72 65 61 64 22 0a 09 09 09  pkgs/thread"....
0760: 63 70 20 2d 72 20 22 74 63 6c 63 6f 6e 66 69 67  cp -r "tclconfig
0770: 2d 24 7b 43 56 53 54 41 47 7d 22 20 22 74 63 6c  -${CVSTAG}" "tcl
0780: 24 7b 54 43 4c 56 45 52 53 7d 2f 70 6b 67 73 2f  ${TCLVERS}/pkgs/
0790: 69 74 63 6c 2f 74 63 6c 63 6f 6e 66 69 67 22 0a  itcl/tclconfig".
07a0: 09 09 09 63 70 20 2d 72 20 22 74 63 6c 63 6f 6e  ...cp -r "tclcon
07b0: 66 69 67 2d 24 7b 43 56 53 54 41 47 7d 22 20 22  fig-${CVSTAG}" "
07c0: 74 63 6c 24 7b 54 43 4c 56 45 52 53 7d 2f 70 6b  tcl${TCLVERS}/pk
07d0: 67 73 2f 74 68 72 65 61 64 2f 74 63 6c 63 6f 6e  gs/thread/tclcon
07e0: 66 69 67 22 0a 09 09 09 6d 76 20 22 74 63 6c 63  fig"....mv "tclc
07f0: 6f 6e 66 69 67 2d 24 7b 43 56 53 54 41 47 7d 22  onfig-${CVSTAG}"
0800: 20 22 74 63 6c 24 7b 54 43 4c 56 45 52 53 7d 2f   "tcl${TCLVERS}/
0810: 74 63 6c 63 6f 6e 66 69 67 22 0a 0a 09 09 09 69  tclconfig".....i
0820: 66 20 5b 20 2d 64 20 22 74 63 6c 24 7b 54 43 4c  f [ -d "tcl${TCL
0830: 56 45 52 53 7d 22 20 5d 3b 20 74 68 65 6e 0a 09  VERS}" ]; then..
0840: 09 09 09 66 69 6e 64 20 22 74 63 6c 24 7b 54 43  ...find "tcl${TC
0850: 4c 56 45 52 53 7d 22 20 2d 6e 61 6d 65 20 63 6f  LVERS}" -name co
0860: 6e 66 69 67 75 72 65 20 2d 74 79 70 65 20 66 20  nfigure -type f 
0870: 7c 20 78 61 72 67 73 20 63 68 6d 6f 64 20 2b 78  | xargs chmod +x
0880: 0a 09 09 09 09 66 69 6e 64 20 22 74 63 6c 24 7b  .....find "tcl${
0890: 54 43 4c 56 45 52 53 7d 22 20 27 28 27 20 2d 6e  TCLVERS}" '(' -n
08a0: 61 6d 65 20 69 6e 73 74 61 6c 6c 2d 73 68 20 2d  ame install-sh -
08b0: 6f 20 2d 6e 61 6d 65 20 69 6e 73 74 61 6c 6c 2e  o -name install.
08c0: 73 68 20 27 29 27 20 2d 74 79 70 65 20 66 20 7c  sh ')' -type f |
08d0: 20 78 61 72 67 73 20 63 68 6d 6f 64 20 2b 78 0a   xargs chmod +x.
08e0: 0a 09 09 09 09 74 61 72 20 2d 63 66 20 2d 20 22  .....tar -cf - "
08f0: 74 63 6c 24 7b 54 43 4c 56 45 52 53 7d 22 20 7c  tcl${TCLVERS}" |
0900: 20 67 7a 69 70 20 2d 63 20 3e 20 22 2e 2e 2f 24   gzip -c > "../$
0910: 7b 53 52 43 7d 22 0a 09 09 09 66 69 0a 0a 09 09  {SRC}"....fi....
0920: 09 72 6d 20 2d 66 20 22 74 6d 70 2d 74 63 6c 2e  .rm -f "tmp-tcl.
0930: 7a 69 70 22 20 22 74 6d 70 2d 69 74 63 6c 2e 7a  zip" "tmp-itcl.z
0940: 69 70 22 20 22 74 6d 70 2d 74 68 72 65 61 64 2e  ip" "tmp-thread.
0950: 7a 69 70 22 20 22 74 6d 70 2d 74 63 6c 63 6f 6e  zip" "tmp-tclcon
0960: 66 69 67 2e 7a 69 70 22 0a 09 09 09 72 6d 20 2d  fig.zip"....rm -
0970: 72 66 20 22 74 63 6c 2d 24 7b 43 56 53 54 41 47  rf "tcl-${CVSTAG
0980: 7d 22 20 22 69 74 63 6c 2d 24 7b 43 56 53 54 41  }" "itcl-${CVSTA
0990: 47 7d 22 20 22 74 68 72 65 61 64 2d 24 7b 43 56  G}" "thread-${CV
09a0: 53 54 41 47 7d 22 20 22 74 63 6c 63 6f 6e 66 69  STAG}" "tclconfi
09b0: 67 2d 24 7b 43 56 53 54 41 47 7d 22 0a 09 09 29  g-${CVSTAG}"...)
09c0: 0a 09 65 6c 73 65 0a 09 09 72 6d 20 2d 66 20 22  ..else...rm -f "
09d0: 24 7b 53 52 43 7d 2e 74 6d 70 22 0a 09 09 77 67  ${SRC}.tmp"...wg
09e0: 65 74 20 2d 4f 20 22 24 7b 53 52 43 7d 2e 74 6d  et -O "${SRC}.tm
09f0: 70 22 20 22 24 7b 53 52 43 55 52 4c 7d 22 20 7c  p" "${SRCURL}" |
0a00: 7c 20 65 78 69 74 20 31 0a 09 09 6d 76 20 22 24  | exit 1...mv "$
0a10: 7b 53 52 43 7d 2e 74 6d 70 22 20 22 24 7b 53 52  {SRC}.tmp" "${SR
0a20: 43 7d 22 0a 09 66 69 0a 66 69 0a 0a 28 0a 09 63  C}"..fi.fi..(..c
0a30: 64 20 27 62 75 69 6c 64 27 20 7c 7c 20 65 78 69  d 'build' || exi
0a40: 74 20 31 0a 0a 09 69 66 20 5b 20 21 20 2d 64 20  t 1...if [ ! -d 
0a50: 27 2e 2e 2f 62 75 69 6c 64 73 72 63 27 20 5d 3b  '../buildsrc' ];
0a60: 20 74 68 65 6e 0a 09 09 67 7a 69 70 20 2d 64 63   then...gzip -dc
0a70: 20 22 2e 2e 2f 24 7b 53 52 43 7d 22 20 7c 20 74   "../${SRC}" | t
0a80: 61 72 20 2d 78 66 20 2d 0a 09 65 6c 73 65 0a 09  ar -xf -..else..
0a90: 09 63 70 20 2d 72 70 20 2e 2e 2f 62 75 69 6c 64  .cp -rp ../build
0aa0: 73 72 63 2f 2a 20 27 2e 2f 27 0a 09 66 69 0a 0a  src/* './'..fi..
0ab0: 09 63 64 20 22 24 7b 42 55 49 4c 44 44 49 52 7d  .cd "${BUILDDIR}
0ac0: 22 20 7c 7c 20 65 78 69 74 20 31 0a 0a 09 23 20  " || exit 1...# 
0ad0: 41 70 70 6c 79 20 70 61 74 63 68 65 73 20 69 66  Apply patches if
0ae0: 20 6e 65 65 64 65 64 0a 09 66 6f 72 20 70 61 74   needed..for pat
0af0: 63 68 20 69 6e 20 22 24 7b 50 41 54 43 48 44 49  ch in "${PATCHDI
0b00: 52 7d 2f 61 6c 6c 22 2f 74 63 6c 2d 24 7b 54 43  R}/all"/tcl-${TC
0b10: 4c 56 45 52 53 7d 2d 2a 2e 64 69 66 66 20 22 24  LVERS}-*.diff "$
0b20: 7b 50 41 54 43 48 44 49 52 7d 2f 24 7b 54 43 4c  {PATCHDIR}/${TCL
0b30: 56 45 52 53 7d 22 2f 74 63 6c 2d 24 7b 54 43 4c  VERS}"/tcl-${TCL
0b40: 56 45 52 53 7d 2d 2a 2e 64 69 66 66 3b 20 64 6f  VERS}-*.diff; do
0b50: 0a 09 09 69 66 20 5b 20 21 20 2d 66 20 22 24 7b  ...if [ ! -f "${
0b60: 70 61 74 63 68 7d 22 20 5d 3b 20 74 68 65 6e 0a  patch}" ]; then.
0b70: 09 09 09 63 6f 6e 74 69 6e 75 65 0a 09 09 66 69  ...continue...fi
0b80: 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  .               
0b90: 20 0a 09 09 65 63 68 6f 20 22 41 70 70 6c 79 69   ...echo "Applyi
0ba0: 6e 67 3a 20 24 7b 70 61 74 63 68 7d 22 0a 09 09  ng: ${patch}"...
0bb0: 24 7b 50 41 54 43 48 3a 2d 70 61 74 63 68 7d 20  ${PATCH:-patch} 
0bc0: 2d 70 31 20 3c 20 22 24 7b 70 61 74 63 68 7d 22  -p1 < "${patch}"
0bd0: 0a 09 64 6f 6e 65 0a 0a 0a 09 23 20 41 70 70 6c  ..done....# Appl
0be0: 79 20 70 61 74 63 68 20 73 63 72 69 70 74 73 20  y patch scripts 
0bf0: 69 66 20 6e 65 65 64 65 64 0a 09 66 6f 72 20 70  if needed..for p
0c00: 61 74 63 68 73 63 72 69 70 74 20 69 6e 20 22 24  atchscript in "$
0c10: 7b 50 41 54 43 48 53 43 52 49 50 54 44 49 52 7d  {PATCHSCRIPTDIR}
0c20: 22 2f 2a 2e 73 68 3b 20 64 6f 0a 09 09 69 66 20  "/*.sh; do...if 
0c30: 5b 20 2d 66 20 22 24 7b 70 61 74 63 68 73 63 72  [ -f "${patchscr
0c40: 69 70 74 7d 22 20 5d 3b 20 74 68 65 6e 0a 09 09  ipt}" ]; then...
0c50: 09 65 63 68 6f 20 22 52 75 6e 6e 69 6e 67 20 70  .echo "Running p
0c60: 61 74 63 68 20 73 63 72 69 70 74 3a 20 24 7b 70  atch script: ${p
0c70: 61 74 63 68 73 63 72 69 70 74 7d 22 0a 0a 09 09  atchscript}"....
0c80: 09 28 0a 09 09 09 09 2e 20 22 24 7b 70 61 74 63  .(...... "${patc
0c90: 68 73 63 72 69 70 74 7d 22 0a 09 09 09 29 0a 09  hscript}"....)..
0ca0: 09 66 69 0a 09 64 6f 6e 65 0a 0a 09 23 20 50 61  .fi..done...# Pa
0cb0: 74 63 68 20 57 69 6e 33 32 20 62 75 69 6c 64 73  tch Win32 builds
0cc0: 20 74 6f 20 61 6c 77 61 79 73 20 70 72 6f 76 69   to always provi
0cd0: 64 65 20 44 6c 6c 4d 61 69 6e 20 69 66 20 77 65  de DllMain if we
0ce0: 20 61 72 65 20 62 75 69 6c 64 69 6e 67 20 4b 69   are building Ki
0cf0: 74 44 4c 4c 0a 09 69 66 20 5b 20 22 24 7b 4b 49  tDLL..if [ "${KI
0d00: 54 54 41 52 47 45 54 7d 22 20 3d 20 22 6b 69 74  TTARGET}" = "kit
0d10: 64 6c 6c 22 20 5d 3b 20 74 68 65 6e 0a 09 09 23  dll" ]; then...#
0d20: 23 20 44 6c 6c 4d 61 69 6e 20 69 73 20 6e 65 65  # DllMain is nee
0d30: 64 65 64 20 77 68 65 6e 20 62 75 69 6c 64 69 6e  ded when buildin
0d40: 67 20 4b 69 74 44 4c 4c 0a 09 09 66 6f 72 20 66  g KitDLL...for f
0d50: 69 6c 65 74 6f 70 61 74 63 68 20 69 6e 20 77 69  iletopatch in wi
0d60: 6e 2f 74 63 6c 57 69 6e 33 32 44 6c 6c 2e 63 20  n/tclWin32Dll.c 
0d70: 77 69 6e 2f 74 63 6c 57 69 6e 49 6e 69 74 2e 63  win/tclWinInit.c
0d80: 3b 20 64 6f 0a 09 09 09 65 63 68 6f 20 22 55 6e  ; do....echo "Un
0d90: 64 65 66 69 6e 69 6e 67 20 53 54 41 54 49 43 5f  defining STATIC_
0da0: 42 55 49 4c 44 20 69 6e 20 5c 22 24 7b 66 69 6c  BUILD in \"${fil
0db0: 65 74 6f 70 61 74 63 68 7d 5c 22 22 0a 0a 09 09  etopatch}\""....
0dc0: 09 73 65 64 20 27 73 40 53 54 41 54 49 43 5f 42  .sed 's@STATIC_B
0dd0: 55 49 4c 44 40 4e 45 56 45 52 5f 53 54 41 54 49  UILD@NEVER_STATI
0de0: 43 5f 42 55 49 4c 44 40 67 27 20 22 24 7b 66 69  C_BUILD@g' "${fi
0df0: 6c 65 74 6f 70 61 74 63 68 7d 22 20 3e 20 22 24  letopatch}" > "$
0e00: 7b 66 69 6c 65 74 6f 70 61 74 63 68 7d 2e 6e 65  {filetopatch}.ne
0e10: 77 22 20 26 26 20 63 61 74 20 22 24 7b 66 69 6c  w" && cat "${fil
0e20: 65 74 6f 70 61 74 63 68 7d 2e 6e 65 77 22 20 3e  etopatch}.new" >
0e30: 20 22 24 7b 66 69 6c 65 74 6f 70 61 74 63 68 7d   "${filetopatch}
0e40: 22 0a 09 09 09 72 6d 20 2d 66 20 22 24 7b 66 69  "....rm -f "${fi
0e50: 6c 65 74 6f 70 61 74 63 68 7d 2e 6e 65 77 22 0a  letopatch}.new".
0e60: 09 09 64 6f 6e 65 0a 09 66 69 0a 0a 09 66 6f 72  ..done..fi...for
0e70: 20 64 69 72 20 69 6e 20 75 6e 69 78 20 77 69 6e   dir in unix win
0e80: 20 6d 61 63 6f 73 78 20 5f 5f 66 61 69 6c 5f 5f   macosx __fail__
0e90: 3b 20 64 6f 0a 09 09 69 66 20 5b 20 22 24 7b 64  ; do...if [ "${d
0ea0: 69 72 7d 22 20 3d 20 22 5f 5f 66 61 69 6c 5f 5f  ir}" = "__fail__
0eb0: 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09 23 20 49  " ]; then....# I
0ec0: 66 20 77 65 20 68 61 76 65 6e 27 74 20 66 69 67  f we haven't fig
0ed0: 75 72 65 64 20 6f 75 74 20 68 6f 77 20 74 6f 20  ured out how to 
0ee0: 62 75 69 6c 64 20 69 74 2c 20 72 65 6a 65 63 74  build it, reject
0ef0: 2e 0a 0a 09 09 09 65 78 69 74 20 31 0a 09 09 66  ......exit 1...f
0f00: 69 0a 0a 09 09 23 20 52 65 6d 6f 76 65 20 70 72  i....# Remove pr
0f10: 65 76 69 6f 75 73 20 64 69 72 65 63 74 6f 72 79  evious directory
0f20: 27 73 20 22 74 63 6c 43 6f 6e 66 69 67 2e 73 68  's "tclConfig.sh
0f30: 22 20 69 66 20 66 6f 75 6e 64 0a 09 09 72 6d 20  " if found...rm 
0f40: 2d 66 20 27 74 63 6c 43 6f 6e 66 69 67 2e 73 68  -f 'tclConfig.sh
0f50: 27 0a 0a 09 09 63 64 20 22 24 7b 42 55 49 4c 44  '....cd "${BUILD
0f60: 44 49 52 7d 2f 24 7b 64 69 72 7d 22 20 7c 7c 20  DIR}/${dir}" || 
0f70: 65 78 69 74 20 31 0a 0a 09 09 65 63 68 6f 20 22  exit 1....echo "
0f80: 52 75 6e 6e 69 6e 67 3a 20 2e 2f 63 6f 6e 66 69  Running: ./confi
0f90: 67 75 72 65 20 2d 2d 64 69 73 61 62 6c 65 2d 73  gure --disable-s
0fa0: 68 61 72 65 64 20 2d 2d 77 69 74 68 2d 65 6e 63  hared --with-enc
0fb0: 6f 64 69 6e 67 3d 75 74 66 2d 38 20 2d 2d 70 72  oding=utf-8 --pr
0fc0: 65 66 69 78 3d 5c 22 24 7b 49 4e 53 54 44 49 52  efix=\"${INSTDIR
0fd0: 7d 5c 22 20 24 7b 43 4f 4e 46 49 47 55 52 45 45  }\" ${CONFIGUREE
0fe0: 58 54 52 41 7d 22 0a 09 09 2e 2f 63 6f 6e 66 69  XTRA}"..../confi
0ff0: 67 75 72 65 20 2d 2d 64 69 73 61 62 6c 65 2d 73  gure --disable-s
1000: 68 61 72 65 64 20 2d 2d 77 69 74 68 2d 65 6e 63  hared --with-enc
1010: 6f 64 69 6e 67 3d 75 74 66 2d 38 20 2d 2d 70 72  oding=utf-8 --pr
1020: 65 66 69 78 3d 22 24 7b 49 4e 53 54 44 49 52 7d  efix="${INSTDIR}
1030: 22 20 24 7b 43 4f 4e 46 49 47 55 52 45 45 58 54  " ${CONFIGUREEXT
1040: 52 41 7d 0a 0a 09 09 65 63 68 6f 20 22 52 75 6e  RA}....echo "Run
1050: 6e 69 6e 67 3a 20 24 7b 4d 41 4b 45 3a 2d 6d 61  ning: ${MAKE:-ma
1060: 6b 65 7d 22 0a 09 09 24 7b 4d 41 4b 45 3a 2d 6d  ke}"...${MAKE:-m
1070: 61 6b 65 7d 20 7c 7c 20 63 6f 6e 74 69 6e 75 65  ake} || continue
1080: 0a 0a 09 09 65 63 68 6f 20 22 52 75 6e 6e 69 6e  ....echo "Runnin
1090: 67 3a 20 24 7b 4d 41 4b 45 3a 2d 6d 61 6b 65 7d  g: ${MAKE:-make}
10a0: 20 69 6e 73 74 61 6c 6c 22 0a 09 09 24 7b 4d 41   install"...${MA
10b0: 4b 45 3a 2d 6d 61 6b 65 7d 20 69 6e 73 74 61 6c  KE:-make} instal
10c0: 6c 20 7c 7c 20 28 0a 09 09 09 23 20 57 6f 72 6b  l || (....# Work
10d0: 20 77 69 74 68 20 54 63 6c 20 38 2e 36 2e 78 27   with Tcl 8.6.x'
10e0: 73 20 54 43 4c 53 48 5f 4e 41 54 49 56 45 20 73  s TCLSH_NATIVE s
10f0: 6f 6c 75 74 69 6f 6e 20 66 6f 72 0a 09 09 09 23  olution for....#
1100: 20 63 72 6f 73 73 2d 63 6f 6d 70 69 6c 65 20 69   cross-compile i
1110: 6e 73 74 61 6c 6c 73 0a 0a 09 09 09 65 63 68 6f  nstalls.....echo
1120: 20 22 52 75 6e 6e 69 6e 67 3a 20 24 7b 4d 41 4b   "Running: ${MAK
1130: 45 3a 2d 6d 61 6b 65 7d 20 69 6e 73 74 61 6c 6c  E:-make} install
1140: 20 54 43 4c 53 48 5f 4e 41 54 49 56 45 3d 5c 22   TCLSH_NATIVE=\"
1150: 24 7b 54 43 4c 4b 49 54 3a 2d 74 63 6c 6b 69 74  ${TCLKIT:-tclkit
1160: 7d 5c 22 22 0a 09 09 09 24 7b 4d 41 4b 45 3a 2d  }\""....${MAKE:-
1170: 6d 61 6b 65 7d 20 69 6e 73 74 61 6c 6c 20 54 43  make} install TC
1180: 4c 53 48 5f 4e 41 54 49 56 45 3d 22 24 7b 54 43  LSH_NATIVE="${TC
1190: 4c 4b 49 54 3a 2d 74 63 6c 6b 69 74 7d 22 0a 09  LKIT:-tclkit}"..
11a0: 09 29 20 7c 7c 20 28 0a 09 09 09 23 20 4d 61 6b  .) || (....# Mak
11b0: 65 20 69 6e 73 74 61 6c 6c 20 63 61 6e 20 66 61  e install can fa
11c0: 69 6c 20 69 66 20 63 72 6f 73 73 2d 63 6f 6d 70  il if cross-comp
11d0: 69 6c 69 6e 67 20 75 73 69 6e 67 20 54 63 6c 20  iling using Tcl 
11e0: 38 2e 35 2e 78 0a 09 09 09 23 20 62 65 63 61 75  8.5.x....# becau
11f0: 73 65 20 74 68 65 20 4d 61 6b 65 66 69 6c 65 20  se the Makefile 
1200: 63 61 6c 6c 73 20 22 24 28 54 43 4c 53 48 29 22  calls "$(TCLSH)"
1210: 2e 20 20 57 65 20 63 61 6e 27 74 20 73 69 6d 70  .  We can't simp
1220: 6c 79 0a 09 09 09 23 20 72 65 64 65 66 69 6e 65  ly....# redefine
1230: 20 54 43 4c 53 48 20 62 65 63 61 75 73 65 20 69   TCLSH because i
1240: 74 20 61 6c 73 6f 20 75 73 65 73 20 54 43 4c 53  t also uses TCLS
1250: 48 20 61 73 20 61 20 62 75 69 6c 64 20 74 61 72  H as a build tar
1260: 67 65 74 0a 09 09 09 73 65 64 20 27 73 40 5e 24  get....sed 's@^$
1270: 28 54 43 4c 53 48 29 40 62 6c 61 68 40 27 20 4d  (TCLSH)@blah@' M
1280: 61 6b 65 66 69 6c 65 20 3e 20 4d 61 6b 65 66 69  akefile > Makefi
1290: 6c 65 2e 6e 65 77 0a 09 09 09 63 61 74 20 4d 61  le.new....cat Ma
12a0: 6b 65 66 69 6c 65 2e 6e 65 77 20 3e 20 4d 61 6b  kefile.new > Mak
12b0: 65 66 69 6c 65 0a 09 09 09 72 6d 20 2d 66 20 4d  efile....rm -f M
12c0: 61 6b 65 66 69 6c 65 2e 6e 65 77 0a 0a 09 09 09  akefile.new.....
12d0: 65 63 68 6f 20 22 52 75 6e 6e 69 6e 67 3a 20 24  echo "Running: $
12e0: 7b 4d 41 4b 45 3a 2d 6d 61 6b 65 7d 20 69 6e 73  {MAKE:-make} ins
12f0: 74 61 6c 6c 20 54 43 4c 53 48 3d 5c 22 2e 2e 2f  tall TCLSH=\"../
1300: 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e  ../../../../../.
1310: 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e  ./../../../../..
1320: 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f  /../../../../../
1330: 24 28 77 68 69 63 68 20 22 24 7b 54 43 4c 4b 49  $(which "${TCLKI
1340: 54 3a 2d 74 63 6c 6b 69 74 7d 22 29 5c 22 22 0a  T:-tclkit}")\"".
1350: 09 09 09 24 7b 4d 41 4b 45 3a 2d 6d 61 6b 65 7d  ...${MAKE:-make}
1360: 20 69 6e 73 74 61 6c 6c 20 54 43 4c 53 48 3d 22   install TCLSH="
1370: 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e  ../../../../../.
1380: 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e  ./../../../../..
1390: 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f  /../../../../../
13a0: 2e 2e 2f 24 28 77 68 69 63 68 20 22 24 7b 54 43  ../$(which "${TC
13b0: 4c 4b 49 54 3a 2d 74 63 6c 6b 69 74 7d 22 29 22  LKIT:-tclkit}")"
13c0: 0a 09 09 29 20 7c 7c 20 28 0a 09 09 09 23 20 4d  ...) || (....# M
13d0: 61 6b 65 20 69 6e 73 74 61 6c 6c 20 63 61 6e 20  ake install can 
13e0: 66 61 69 6c 20 69 66 20 63 72 6f 73 73 2d 63 6f  fail if cross-co
13f0: 6d 70 69 6c 69 6e 67 20 75 73 69 6e 67 20 54 63  mpiling using Tc
1400: 6c 20 38 2e 35 2e 39 0a 09 09 09 23 20 62 65 63  l 8.5.9....# bec
1410: 61 75 73 65 20 74 68 65 20 4d 61 6b 65 66 69 6c  ause the Makefil
1420: 65 20 63 61 6c 6c 73 20 22 24 7b 54 43 4c 5f 45  e calls "${TCL_E
1430: 58 45 7d 22 2e 20 20 57 65 20 63 61 6e 27 74 20  XE}".  We can't 
1440: 73 69 6d 70 6c 79 0a 09 09 09 23 20 72 65 64 65  simply....# rede
1450: 66 69 6e 65 20 54 43 4c 5f 45 58 45 20 62 65 63  fine TCL_EXE bec
1460: 61 75 73 65 20 69 74 20 61 6c 73 6f 20 75 73 65  ause it also use
1470: 73 20 54 43 4c 5f 45 58 45 20 61 73 20 61 20 62  s TCL_EXE as a b
1480: 75 69 6c 64 20 74 61 72 67 65 74 0a 09 09 09 73  uild target....s
1490: 65 64 20 27 73 40 5e 24 7b 54 43 4c 5f 45 58 45  ed 's@^${TCL_EXE
14a0: 7d 40 62 6c 61 68 40 27 20 4d 61 6b 65 66 69 6c  }@blah@' Makefil
14b0: 65 20 3e 20 4d 61 6b 65 66 69 6c 65 2e 6e 65 77  e > Makefile.new
14c0: 0a 09 09 09 63 61 74 20 4d 61 6b 65 66 69 6c 65  ....cat Makefile
14d0: 2e 6e 65 77 20 3e 20 4d 61 6b 65 66 69 6c 65 0a  .new > Makefile.
14e0: 09 09 09 72 6d 20 2d 66 20 4d 61 6b 65 66 69 6c  ...rm -f Makefil
14f0: 65 2e 6e 65 77 0a 0a 09 09 09 65 63 68 6f 20 22  e.new.....echo "
1500: 52 75 6e 6e 69 6e 67 3a 20 24 7b 4d 41 4b 45 3a  Running: ${MAKE:
1510: 2d 6d 61 6b 65 7d 20 69 6e 73 74 61 6c 6c 20 54  -make} install T
1520: 43 4c 5f 45 58 45 3d 5c 22 2e 2e 2f 2e 2e 2f 2e  CL_EXE=\"../../.
1530: 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e  ./../../../../..
1540: 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f  /../../../../../
1550: 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 24 28 77 68  ../../../../$(wh
1560: 69 63 68 20 22 24 7b 54 43 4c 4b 49 54 3a 2d 74  ich "${TCLKIT:-t
1570: 63 6c 6b 69 74 7d 22 29 5c 22 22 0a 09 09 09 24  clkit}")\""....$
1580: 7b 4d 41 4b 45 3a 2d 6d 61 6b 65 7d 20 69 6e 73  {MAKE:-make} ins
1590: 74 61 6c 6c 20 54 43 4c 5f 45 58 45 3d 22 2e 2e  tall TCL_EXE="..
15a0: 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f  /../../../../../
15b0: 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e  ../../../../../.
15c0: 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e 2f 2e 2e  ./../../../../..
15d0: 2f 24 28 77 68 69 63 68 20 22 24 7b 54 43 4c 4b  /$(which "${TCLK
15e0: 49 54 3a 2d 74 63 6c 6b 69 74 7d 22 29 22 0a 09  IT:-tclkit}")"..
15f0: 09 29 20 7c 7c 20 65 78 69 74 20 31 0a 0a 09 09  .) || exit 1....
1600: 6d 6b 64 69 72 20 22 24 7b 4f 55 54 44 49 52 7d  mkdir "${OUTDIR}
1610: 2f 6c 69 62 22 20 7c 7c 20 65 78 69 74 20 31 0a  /lib" || exit 1.
1620: 09 09 63 70 20 2d 72 20 22 24 7b 49 4e 53 54 44  ..cp -r "${INSTD
1630: 49 52 7d 2f 6c 69 62 22 2f 2a 20 22 24 7b 4f 55  IR}/lib"/* "${OU
1640: 54 44 49 52 7d 2f 6c 69 62 2f 22 0a 09 09 72 6d  TDIR}/lib/"...rm
1650: 20 2d 72 66 20 22 24 7b 4f 55 54 44 49 52 7d 2f   -rf "${OUTDIR}/
1660: 6c 69 62 2f 70 6b 67 63 6f 6e 66 69 67 22 0a 09  lib/pkgconfig"..
1670: 09 72 6d 20 2d 66 20 22 24 7b 4f 55 54 44 49 52  .rm -f "${OUTDIR
1680: 7d 22 2f 6c 69 62 2f 2a 20 3e 2f 64 65 76 2f 6e  }"/lib/* >/dev/n
1690: 75 6c 6c 20 32 3e 2f 64 65 76 2f 6e 75 6c 6c 0a  ull 2>/dev/null.
16a0: 09 09 66 69 6e 64 20 22 24 7b 4f 55 54 44 49 52  ..find "${OUTDIR
16b0: 7d 22 20 2d 6e 61 6d 65 20 27 2a 2e 61 27 20 7c  }" -name '*.a' |
16c0: 20 78 61 72 67 73 20 72 6d 20 2d 66 20 3e 2f 64   xargs rm -f >/d
16d0: 65 76 2f 6e 75 6c 6c 20 32 3e 2f 64 65 76 2f 6e  ev/null 2>/dev/n
16e0: 75 6c 6c 0a 0a 09 09 23 20 43 6c 65 61 6e 20 75  ull....# Clean u
16f0: 70 20 70 61 63 6b 61 67 65 73 20 74 68 61 74 20  p packages that 
1700: 61 72 65 20 6e 6f 74 20 6e 65 65 64 65 64 0a 09  are not needed..
1710: 09 69 66 20 5b 20 2d 6e 20 22 24 7b 4b 49 54 43  .if [ -n "${KITC
1720: 52 45 41 54 4f 52 5f 4d 49 4e 42 55 49 4c 44 7d  REATOR_MINBUILD}
1730: 22 20 5d 3b 20 74 68 65 6e 0a 09 09 09 66 69 6e  " ]; then....fin
1740: 64 20 22 24 7b 4f 55 54 44 49 52 7d 22 20 2d 6e  d "${OUTDIR}" -n
1750: 61 6d 65 20 22 74 63 6c 74 65 73 74 2a 22 20 2d  ame "tcltest*" -
1760: 74 79 70 65 20 64 20 7c 20 78 61 72 67 73 20 72  type d | xargs r
1770: 6d 20 2d 72 66 0a 09 09 66 69 0a 0a 09 09 23 20  m -rf...fi....# 
1780: 43 6c 65 61 6e 20 75 70 20 65 6e 63 6f 64 69 6e  Clean up encodin
1790: 67 73 0a 09 09 69 66 20 5b 20 2d 6e 20 22 24 7b  gs...if [ -n "${
17a0: 4b 49 54 43 52 45 41 54 4f 52 5f 4d 49 4e 45 4e  KITCREATOR_MINEN
17b0: 43 4f 44 49 4e 47 53 7d 22 20 5d 3b 20 74 68 65  CODINGS}" ]; the
17c0: 6e 0a 09 09 09 4b 45 45 50 45 4e 43 4f 44 49 4e  n....KEEPENCODIN
17d0: 47 53 3d 22 20 61 73 63 69 69 2e 65 6e 63 20 63  GS=" ascii.enc c
17e0: 70 31 32 35 32 2e 65 6e 63 20 69 73 6f 38 38 35  p1252.enc iso885
17f0: 39 2d 31 2e 65 6e 63 20 69 73 6f 38 38 35 39 2d  9-1.enc iso8859-
1800: 31 35 2e 65 6e 63 20 69 73 6f 38 38 35 39 2d 32  15.enc iso8859-2
1810: 2e 65 6e 63 20 6b 6f 69 38 2d 72 2e 65 6e 63 20  .enc koi8-r.enc 
1820: 6d 61 63 52 6f 6d 61 6e 2e 65 6e 63 20 22 0a 09  macRoman.enc "..
1830: 09 09 65 78 70 6f 72 74 20 4b 45 45 50 45 4e 43  ..export KEEPENC
1840: 4f 44 49 4e 47 53 0a 09 09 09 66 69 6e 64 20 22  ODINGS....find "
1850: 24 7b 4f 55 54 44 49 52 7d 2f 6c 69 62 22 20 2d  ${OUTDIR}/lib" -
1860: 6e 61 6d 65 20 27 65 6e 63 6f 64 69 6e 67 27 20  name 'encoding' 
1870: 2d 74 79 70 65 20 64 20 7c 20 77 68 69 6c 65 20  -type d | while 
1880: 72 65 61 64 20 65 6e 63 64 69 72 3b 20 64 6f 0a  read encdir; do.
1890: 09 09 09 09 28 0a 09 09 09 09 09 63 64 20 22 24  ....(......cd "$
18a0: 7b 65 6e 63 64 69 72 7d 22 20 7c 7c 20 65 78 69  {encdir}" || exi
18b0: 74 20 31 0a 0a 09 09 09 09 09 66 6f 72 20 66 69  t 1.......for fi
18c0: 6c 65 20 69 6e 20 2a 3b 20 64 6f 0a 09 09 09 09  le in *; do.....
18d0: 09 09 69 66 20 65 63 68 6f 20 22 20 24 7b 4b 45  ..if echo " ${KE
18e0: 45 50 45 4e 43 4f 44 49 4e 47 53 7d 20 22 20 7c  EPENCODINGS} " |
18f0: 20 67 72 65 70 20 22 20 24 7b 66 69 6c 65 7d 20   grep " ${file} 
1900: 22 20 3e 2f 64 65 76 2f 6e 75 6c 6c 3b 20 74 68  " >/dev/null; th
1910: 65 6e 0a 09 09 09 09 09 09 09 63 6f 6e 74 69 6e  en........contin
1920: 75 65 0a 09 09 09 09 09 09 66 69 0a 0a 09 09 09  ue.......fi.....
1930: 09 09 09 72 6d 20 2d 66 20 22 24 7b 66 69 6c 65  ...rm -f "${file
1940: 7d 22 0a 09 09 09 09 09 64 6f 6e 65 0a 09 09 09  }"......done....
1950: 09 29 0a 09 09 09 64 6f 6e 65 0a 09 09 66 69 0a  .)....done...fi.
1960: 0a 09 09 62 72 65 61 6b 0a 09 64 6f 6e 65 0a 29  ...break..done.)
1970: 20 7c 7c 20 65 78 69 74 20 31 0a 0a 65 78 69 74   || exit 1..exit
1980: 20 30 0a                                          0.