Hex Artifact Content

Artifact 4aa1445bcf4eedf3fdad3cb45ac4e66209e54b5c:


0000: 23 21 20 2f 62 69 6e 2f 62 61 73 68 0a 0a 43 43  #! /bin/bash..CC
0010: 52 4f 4f 54 3d 22 24 7b 48 4f 4d 45 7d 2f 72 6f  ROOT="${HOME}/ro
0020: 6f 74 2f 63 72 6f 73 73 2d 63 6f 6d 70 69 6c 65  ot/cross-compile
0030: 72 73 22 0a 53 45 54 55 50 5f 43 43 3d 22 24 7b  rs".SETUP_CC="${
0040: 43 43 52 4f 4f 54 7d 2f 73 65 74 75 70 2d 63 63  CCROOT}/setup-cc
0050: 22 0a 0a 69 66 20 5b 20 2d 7a 20 22 24 31 22 20  "..if [ -z "$1" 
0060: 5d 3b 20 74 68 65 6e 0a 09 70 6c 61 74 66 6f 72  ]; then..platfor
0070: 6d 73 3d 28 0a 09 09 69 33 38 36 2d 70 63 2d 73  ms=(...i386-pc-s
0080: 6f 6c 61 72 69 73 32 2e 31 30 40 73 6f 6c 61 72  olaris2.10@solar
0090: 69 73 32 2e 31 30 2d 69 78 38 36 0a 09 09 69 33  is2.10-ix86...i3
00a0: 38 36 2d 70 63 2d 73 6f 6c 61 72 69 73 32 2e 31  86-pc-solaris2.1
00b0: 30 2c 36 34 40 73 6f 6c 61 72 69 73 32 2e 31 30  0,64@solaris2.10
00c0: 2d 78 38 36 5f 36 34 0a 09 09 6d 69 70 73 65 6c  -x86_64...mipsel
00d0: 2d 75 6e 6b 6e 6f 77 6e 2d 6c 69 6e 75 78 2d 75  -unknown-linux-u
00e0: 63 6c 69 62 63 40 6c 69 6e 75 78 2d 67 6c 69 62  clibc@linux-glib
00f0: 63 32 2e 30 2d 6d 69 70 73 65 6c 0a 09 09 73 70  c2.0-mipsel...sp
0100: 61 72 63 2d 73 75 6e 2d 73 6f 6c 61 72 69 73 32  arc-sun-solaris2
0110: 2e 38 40 73 6f 6c 61 72 69 73 32 2e 38 2d 73 70  .8@solaris2.8-sp
0120: 61 72 63 0a 09 09 73 70 61 72 63 2d 73 75 6e 2d  arc...sparc-sun-
0130: 73 6f 6c 61 72 69 73 32 2e 38 2c 36 34 40 73 6f  solaris2.8,64@so
0140: 6c 61 72 69 73 32 2e 38 2d 73 70 61 72 63 36 34  laris2.8-sparc64
0150: 0a 09 09 73 70 61 72 63 2d 73 75 6e 2d 73 6f 6c  ...sparc-sun-sol
0160: 61 72 69 73 32 2e 31 30 40 73 6f 6c 61 72 69 73  aris2.10@solaris
0170: 32 2e 31 30 2d 73 70 61 72 63 0a 09 09 73 70 61  2.10-sparc...spa
0180: 72 63 2d 73 75 6e 2d 73 6f 6c 61 72 69 73 32 2e  rc-sun-solaris2.
0190: 31 30 2c 36 34 40 73 6f 6c 61 72 69 73 32 2e 31  10,64@solaris2.1
01a0: 30 2d 73 70 61 72 63 36 34 0a 09 09 78 38 36 5f  0-sparc64...x86_
01b0: 36 34 2d 75 6e 6b 6e 6f 77 6e 2d 66 72 65 65 62  64-unknown-freeb
01c0: 73 64 38 40 66 72 65 65 62 73 64 38 2d 78 38 36  sd8@freebsd8-x86
01d0: 5f 36 34 0a 09 09 78 38 36 5f 36 34 2d 75 6e 6b  _64...x86_64-unk
01e0: 6e 6f 77 6e 2d 6e 65 74 62 73 64 35 40 6e 65 74  nown-netbsd5@net
01f0: 62 73 64 35 2d 78 38 36 5f 36 34 0a 09 09 61 72  bsd5-x86_64...ar
0200: 6d 2d 61 6e 64 72 6f 69 64 39 2d 6c 69 6e 75 78  m-android9-linux
0210: 2d 61 6e 64 72 6f 69 64 65 61 62 69 40 6c 69 6e  -androideabi@lin
0220: 75 78 2d 75 6e 6b 6e 6f 77 6e 2d 61 72 6d 0a 09  ux-unknown-arm..
0230: 09 69 35 38 36 2d 6d 69 6e 67 77 33 32 6d 73 76  .i586-mingw32msv
0240: 63 40 77 69 6e 33 32 2d 69 78 38 36 0a 09 09 78  c@win32-ix86...x
0250: 38 36 5f 36 34 2d 77 36 34 2d 6d 69 6e 67 77 33  86_64-w64-mingw3
0260: 32 40 77 69 6e 33 32 2d 78 38 36 5f 36 34 0a 09  2@win32-x86_64..
0270: 09 78 38 36 5f 36 34 2d 72 65 64 68 61 74 35 2d  .x86_64-redhat5-
0280: 6c 69 6e 75 78 40 6c 69 6e 75 78 2d 67 6c 69 62  linux@linux-glib
0290: 63 32 2e 35 2d 78 38 36 5f 36 34 0a 09 09 70 6f  c2.5-x86_64...po
02a0: 77 65 72 70 63 2d 69 62 6d 2d 61 69 78 35 2e 33  werpc-ibm-aix5.3
02b0: 2e 30 2e 30 40 61 69 78 2d 70 6f 77 65 72 70 63  .0.0@aix-powerpc
02c0: 0a 09 29 0a 65 6c 73 65 0a 09 70 6c 61 74 66 6f  ..).else..platfo
02d0: 72 6d 73 3d 28 22 24 40 22 29 0a 66 69 0a 0a 66  rms=("$@").fi..f
02e0: 6f 72 20 70 6c 61 74 66 6f 72 6d 20 69 6e 20 22  or platform in "
02f0: 24 7b 70 6c 61 74 66 6f 72 6d 73 5b 40 5d 7d 22  ${platforms[@]}"
0300: 3b 20 64 6f 0a 09 65 63 68 6f 20 22 20 20 2a 20  ; do..echo "  * 
0310: 42 75 69 6c 64 69 6e 67 20 66 6f 72 20 24 7b 70  Building for ${p
0320: 6c 61 74 66 6f 72 6d 7d 22 0a 09 63 63 5f 70 6c  latform}"..cc_pl
0330: 61 74 66 6f 72 6d 3d 22 24 28 65 63 68 6f 20 22  atform="$(echo "
0340: 24 7b 70 6c 61 74 66 6f 72 6d 7d 22 20 7c 20 63  ${platform}" | c
0350: 75 74 20 2d 66 20 31 20 2d 64 20 27 40 27 29 22  ut -f 1 -d '@')"
0360: 0a 09 74 63 6c 5f 70 6c 61 74 66 6f 72 6d 3d 22  ..tcl_platform="
0370: 24 28 65 63 68 6f 20 22 24 7b 70 6c 61 74 66 6f  $(echo "${platfo
0380: 72 6d 7d 22 20 7c 20 63 75 74 20 2d 66 20 32 20  rm}" | cut -f 2 
0390: 2d 64 20 27 40 27 29 22 0a 09 6f 70 74 73 3d 27  -d '@')"..opts='
03a0: 27 0a 09 73 65 74 75 70 5f 63 63 5f 6f 70 74 73  '..setup_cc_opts
03b0: 3d 27 27 0a 09 63 6f 6e 66 69 67 75 72 65 5f 6f  =''..configure_o
03c0: 70 74 73 3d 27 27 0a 0a 09 69 66 20 65 63 68 6f  pts=''...if echo
03d0: 20 22 24 7b 63 63 5f 70 6c 61 74 66 6f 72 6d 7d   "${cc_platform}
03e0: 22 20 7c 20 67 72 65 70 20 27 2c 27 20 3e 2f 64  " | grep ',' >/d
03f0: 65 76 2f 6e 75 6c 6c 3b 20 74 68 65 6e 0a 09 09  ev/null; then...
0400: 6f 70 74 73 3d 22 24 28 65 63 68 6f 20 22 24 7b  opts="$(echo "${
0410: 63 63 5f 70 6c 61 74 66 6f 72 6d 7d 22 20 7c 20  cc_platform}" | 
0420: 63 75 74 20 2d 66 20 32 2d 20 2d 64 20 27 2c 27  cut -f 2- -d ','
0430: 20 7c 20 73 65 64 20 27 73 40 2c 40 20 40 67 27   | sed 's@,@ @g'
0440: 29 22 0a 09 09 63 63 5f 70 6c 61 74 66 6f 72 6d  )"...cc_platform
0450: 3d 22 24 28 65 63 68 6f 20 22 24 7b 63 63 5f 70  ="$(echo "${cc_p
0460: 6c 61 74 66 6f 72 6d 7d 22 20 7c 20 63 75 74 20  latform}" | cut 
0470: 2d 66 20 31 20 2d 64 20 27 2c 27 29 22 0a 09 66  -f 1 -d ',')"..f
0480: 69 0a 0a 09 63 61 73 65 20 22 24 7b 74 63 6c 5f  i...case "${tcl_
0490: 70 6c 61 74 66 6f 72 6d 7d 22 20 69 6e 0a 09 09  platform}" in...
04a0: 2a 36 34 29 0a 09 09 09 69 73 36 34 62 69 74 3d  *64)....is64bit=
04b0: 27 31 27 0a 09 09 09 3b 3b 0a 09 09 2a 29 0a 09  '1'....;;...*)..
04c0: 09 09 69 73 36 34 62 69 74 3d 27 30 27 0a 09 09  ..is64bit='0'...
04d0: 09 3b 3b 0a 09 65 73 61 63 0a 0a 09 66 6f 72 20  .;;..esac...for 
04e0: 6f 70 74 20 69 6e 20 24 6f 70 74 73 3b 20 64 6f  opt in $opts; do
04f0: 0a 09 09 63 61 73 65 20 22 24 7b 6f 70 74 7d 22  ...case "${opt}"
0500: 20 69 6e 0a 09 09 09 36 34 29 0a 09 09 09 09 73   in....64).....s
0510: 65 74 75 70 5f 63 63 5f 6f 70 74 73 3d 22 24 7b  etup_cc_opts="${
0520: 73 65 74 75 70 5f 63 63 5f 6f 70 74 73 7d 20 36  setup_cc_opts} 6
0530: 34 22 0a 09 09 09 09 69 73 36 34 62 69 74 3d 27  4".....is64bit='
0540: 31 27 0a 09 09 09 09 3b 3b 0a 09 09 09 33 32 29  1'.....;;....32)
0550: 0a 09 09 09 09 73 65 74 75 70 5f 63 63 5f 6f 70  .....setup_cc_op
0560: 74 73 3d 22 24 7b 73 65 74 75 70 5f 63 63 5f 6f  ts="${setup_cc_o
0570: 70 74 73 7d 20 33 32 22 0a 09 09 09 09 69 73 36  pts} 32".....is6
0580: 34 62 69 74 3d 27 30 27 0a 09 09 09 09 3b 3b 0a  4bit='0'.....;;.
0590: 09 09 65 73 61 63 0a 09 64 6f 6e 65 0a 0a 09 69  ..esac..done...i
05a0: 66 20 5b 20 22 24 7b 69 73 36 34 62 69 74 7d 22  f [ "${is64bit}"
05b0: 20 3d 20 27 31 27 20 5d 3b 20 74 68 65 6e 0a 09   = '1' ]; then..
05c0: 09 63 6f 6e 66 69 67 75 72 65 5f 6f 70 74 73 3d  .configure_opts=
05d0: 22 24 7b 63 6f 6e 66 69 67 75 72 65 5f 6f 70 74  "${configure_opt
05e0: 73 7d 20 2d 2d 65 6e 61 62 6c 65 2d 36 34 62 69  s} --enable-64bi
05f0: 74 22 0a 09 66 69 0a 0a 09 28 0a 09 09 65 76 61  t"..fi...(...eva
0600: 6c 20 22 24 28 22 24 7b 53 45 54 55 50 5f 43 43  l "$("${SETUP_CC
0610: 7d 22 20 22 24 7b 63 63 5f 70 6c 61 74 66 6f 72  }" "${cc_platfor
0620: 6d 7d 22 20 24 7b 73 65 74 75 70 5f 63 63 5f 6f  m}" ${setup_cc_o
0630: 70 74 73 7d 20 7c 7c 20 65 63 68 6f 20 65 78 69  pts} || echo exi
0640: 74 20 31 29 22 0a 0a 09 09 46 4f 52 43 45 5f 50  t 1)"....FORCE_P
0650: 4c 41 54 46 4f 52 4d 3d 22 24 7b 74 63 6c 5f 70  LATFORM="${tcl_p
0660: 6c 61 74 66 6f 72 6d 7d 22 0a 09 09 65 78 70 6f  latform}"...expo
0670: 72 74 20 46 4f 52 43 45 5f 50 4c 41 54 46 4f 52  rt FORCE_PLATFOR
0680: 4d 0a 0a 09 09 2e 2f 62 75 69 6c 64 5f 61 6c 6c  M...../build_all
0690: 2e 73 68 20 63 6c 65 61 6e 0a 0a 09 09 2e 2f 62  .sh clean...../b
06a0: 75 69 6c 64 5f 61 6c 6c 2e 73 68 20 2d 2d 68 6f  uild_all.sh --ho
06b0: 73 74 3d 22 24 7b 63 63 5f 70 6c 61 74 66 6f 72  st="${cc_platfor
06c0: 6d 7d 22 20 24 7b 63 6f 6e 66 69 67 75 72 65 5f  m}" ${configure_
06d0: 6f 70 74 73 7d 0a 09 29 0a 64 6f 6e 65 0a        opts}..).done.