Hex Artifact Content

Artifact 0d9128dc93b7af55a44082e778a31de420fbe556:


0000: 23 21 20 2f 62 69 6e 2f 62 61 73 68 0a 0a 63 64  #! /bin/bash..cd
0010: 20 22 24 28 64 69 72 6e 61 6d 65 20 22 24 28 77   "$(dirname "$(w
0020: 68 69 63 68 20 22 24 30 22 29 22 29 2f 2e 2e 22  hich "$0")")/.."
0030: 20 7c 7c 20 65 78 69 74 20 31 0a 0a 23 20 47 65   || exit 1..# Ge
0040: 6e 65 72 61 74 65 20 63 6f 6e 66 69 67 75 72 65  nerate configure
0050: 20 73 63 72 69 70 74 0a 2e 2f 62 75 69 6c 64 2f   script../build/
0060: 61 75 74 6f 67 65 6e 2e 73 68 0a 0a 23 20 44 6f  autogen.sh..# Do
0070: 77 6e 6c 6f 61 64 20 54 43 43 0a 74 63 63 5f 76  wnload TCC.tcc_v
0080: 65 72 73 69 6f 6e 3d 27 30 2e 39 2e 32 36 27 0a  ersion='0.9.26'.
0090: 74 63 63 5f 75 72 6c 3d 22 68 74 74 70 3a 2f 2f  tcc_url="http://
00a0: 64 6f 77 6e 6c 6f 61 64 2e 73 61 76 61 6e 6e 61  download.savanna
00b0: 68 2e 67 6e 75 2e 6f 72 67 2f 72 65 6c 65 61 73  h.gnu.org/releas
00c0: 65 73 2f 74 69 6e 79 63 63 2f 74 63 63 2d 24 7b  es/tinycc/tcc-${
00d0: 74 63 63 5f 76 65 72 73 69 6f 6e 7d 2e 74 61 72  tcc_version}.tar
00e0: 2e 62 7a 32 22 0a 74 63 63 5f 73 68 61 32 35 36  .bz2".tcc_sha256
00f0: 3d 27 35 32 31 65 37 30 31 61 65 34 33 36 63 33  ='521e701ae436c3
0100: 30 32 35 34 35 63 33 66 39 37 33 61 39 63 39 62  02545c3f973a9c9b
0110: 37 65 32 36 39 34 37 36 39 63 37 31 64 39 62 65  7e2694769c71d9be
0120: 31 30 66 37 30 61 32 34 36 30 37 30 35 62 36 64  10f70a2460705b6d
0130: 37 31 27 0a 74 63 63 5f 73 68 61 31 3d 27 37 31  71'.tcc_sha1='71
0140: 31 30 33 35 34 64 33 36 33 37 64 30 65 30 35 66  10354d3637d0e05f
0150: 34 33 61 30 30 36 33 36 34 63 38 39 37 32 34 38  43a006364c897248
0160: 61 65 64 35 64 30 27 0a 28 0a 09 72 6d 20 2d 72  aed5d0'.(..rm -r
0170: 66 20 5f 5f 54 4d 50 5f 5f 0a 09 6d 6b 64 69 72  f __TMP__..mkdir
0180: 20 5f 5f 54 4d 50 5f 5f 20 7c 7c 20 65 78 69 74   __TMP__ || exit
0190: 20 31 0a 09 63 64 20 5f 5f 54 4d 50 5f 5f 20 7c   1..cd __TMP__ |
01a0: 7c 20 65 78 69 74 20 31 0a 0a 09 77 67 65 74 20  | exit 1...wget 
01b0: 2d 4f 20 27 6e 65 77 27 20 22 24 7b 74 63 63 5f  -O 'new' "${tcc_
01c0: 75 72 6c 7d 22 20 7c 7c 20 72 6d 20 2d 66 20 6e  url}" || rm -f n
01d0: 65 77 0a 09 6e 65 77 5f 68 61 73 68 3d 22 24 28  ew..new_hash="$(
01e0: 6f 70 65 6e 73 73 6c 20 73 68 61 32 35 36 20 6e  openssl sha256 n
01f0: 65 77 20 32 3e 2f 64 65 76 2f 6e 75 6c 6c 20 7c  ew 2>/dev/null |
0200: 20 73 65 64 20 27 73 40 2e 2a 3d 20 2a 40 40 27   sed 's@.*= *@@'
0210: 29 22 0a 0a 09 69 66 20 5b 20 2d 7a 20 22 24 7b  )"...if [ -z "${
0220: 6e 65 77 5f 68 61 73 68 7d 22 20 5d 3b 20 74 68  new_hash}" ]; th
0230: 65 6e 0a 09 09 6e 65 77 5f 68 61 73 68 3d 22 24  en...new_hash="$
0240: 28 6f 70 65 6e 73 73 6c 20 73 68 61 31 20 6e 65  (openssl sha1 ne
0250: 77 20 32 3e 2f 64 65 76 2f 6e 75 6c 6c 20 7c 20  w 2>/dev/null | 
0260: 73 65 64 20 27 73 40 2e 2a 3d 20 2a 40 40 27 29  sed 's@.*= *@@')
0270: 22 0a 09 09 63 68 65 63 6b 5f 68 61 73 68 3d 22  "...check_hash="
0280: 24 7b 74 63 63 5f 73 68 61 31 7d 22 0a 09 65 6c  ${tcc_sha1}"..el
0290: 73 65 0a 09 09 63 68 65 63 6b 5f 68 61 73 68 3d  se...check_hash=
02a0: 22 24 7b 74 63 63 5f 73 68 61 32 35 36 7d 22 0a  "${tcc_sha256}".
02b0: 09 66 69 0a 0a 09 69 66 20 5b 20 22 24 7b 6e 65  .fi...if [ "${ne
02c0: 77 5f 68 61 73 68 7d 22 20 21 3d 20 22 24 7b 63  w_hash}" != "${c
02d0: 68 65 63 6b 5f 68 61 73 68 7d 22 20 5d 3b 20 74  heck_hash}" ]; t
02e0: 68 65 6e 0a 09 09 65 63 68 6f 20 22 43 68 65 63  hen...echo "Chec
02f0: 6b 73 75 6d 20 4d 69 73 6d 61 74 63 68 3a 20 44  ksum Mismatch: D
0300: 6f 77 6e 6c 6f 61 64 65 64 3a 20 24 7b 6e 65 77  ownloaded: ${new
0310: 5f 68 61 73 68 7d 3b 20 45 78 70 65 63 74 65 64  _hash}; Expected
0320: 3a 20 24 7b 63 68 65 63 6b 5f 68 61 73 68 7d 22  : ${check_hash}"
0330: 20 3e 26 32 0a 0a 09 09 72 6d 20 2d 66 20 6e 65   >&2....rm -f ne
0340: 77 0a 0a 09 09 65 78 69 74 20 31 0a 09 66 69 0a  w....exit 1..fi.
0350: 0a 09 6d 76 20 6e 65 77 20 22 74 63 63 2d 24 7b  ..mv new "tcc-${
0360: 74 63 63 5f 76 65 72 73 69 6f 6e 7d 2e 74 61 72  tcc_version}.tar
0370: 2e 62 7a 32 22 0a 0a 09 62 7a 69 70 32 20 2d 64  .bz2"...bzip2 -d
0380: 63 20 22 74 63 63 2d 24 7b 74 63 63 5f 76 65 72  c "tcc-${tcc_ver
0390: 73 69 6f 6e 7d 2e 74 61 72 2e 62 7a 32 22 20 7c  sion}.tar.bz2" |
03a0: 20 74 61 72 20 2d 78 66 20 2d 0a 0a 09 72 6d 20   tar -xf -...rm 
03b0: 2d 66 20 22 74 63 63 2d 24 7b 74 63 63 5f 76 65  -f "tcc-${tcc_ve
03c0: 72 73 69 6f 6e 7d 2e 74 61 72 2e 62 7a 32 22 0a  rsion}.tar.bz2".
03d0: 0a 09 23 23 20 41 70 70 6c 79 20 70 61 74 63 68  ..## Apply patch
03e0: 65 73 0a 09 66 6f 72 20 70 61 74 63 68 66 69 6c  es..for patchfil
03f0: 65 20 69 6e 20 2e 2e 2f 62 75 69 6c 64 2f 74 63  e in ../build/tc
0400: 63 2d 70 61 74 63 68 65 73 2f 24 7b 74 63 63 5f  c-patches/${tcc_
0410: 76 65 72 73 69 6f 6e 7d 2f 2a 2e 64 69 66 66 3b  version}/*.diff;
0420: 20 64 6f 0a 09 09 28 20 63 64 20 2a 20 26 26 20   do...( cd * && 
0430: 70 61 74 63 68 20 2d 70 31 20 29 20 3c 20 22 24  patch -p1 ) < "$
0440: 7b 70 61 74 63 68 66 69 6c 65 7d 22 0a 09 64 6f  {patchfile}"..do
0450: 6e 65 0a 0a 09 72 6d 20 2d 72 66 20 2e 2e 2f 74  ne...rm -rf ../t
0460: 63 63 0a 09 6d 6b 64 69 72 20 2e 2e 2f 74 63 63  cc..mkdir ../tcc
0470: 20 7c 7c 20 65 78 69 74 20 31 0a 09 6d 76 20 2a   || exit 1..mv *
0480: 2f 2a 20 2e 2e 2f 74 63 63 2f 0a 29 0a 72 6d 20  /* ../tcc/.).rm 
0490: 2d 72 66 20 5f 5f 54 4d 50 5f 5f 0a              -rf __TMP__.