Hex Artifact Content

Artifact 85a2a104f618150b8da015bd0ebcdf411d916e572f2a139f28977de6dafcb653:


0000: 23 21 20 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20  #! /usr/bin/env 
0010: 62 61 73 68 0a 0a 75 70 64 61 74 65 3d 27 30 27  bash..update='0'
0020: 0a 69 66 20 5b 20 22 24 31 22 20 3d 20 27 2d 75  .if [ "$1" = '-u
0030: 70 64 61 74 65 27 20 5d 3b 20 74 68 65 6e 0a 09  pdate' ]; then..
0040: 75 70 64 61 74 65 3d 27 31 27 0a 66 69 0a 0a 63  update='1'.fi..c
0050: 6f 6d 6d 61 6e 64 73 3d 28 0a 09 63 75 72 6c 20  ommands=(..curl 
0060: 64 69 66 66 20 63 61 74 20 6d 6b 64 69 72 20 72  diff cat mkdir r
0070: 6d 20 6d 76 20 61 75 74 6f 6d 61 6b 65 20 61 75  m mv automake au
0080: 74 6f 63 6f 6e 66 0a 29 0a 0a 75 72 6c 73 3d 28  toconf.)..urls=(
0090: 0a 09 68 74 74 70 3a 2f 2f 63 68 69 73 65 6c 61  ..http://chisela
00a0: 70 70 2e 63 6f 6d 2f 75 73 65 72 2f 72 6b 65 65  pp.com/user/rkee
00b0: 6e 65 2f 72 65 70 6f 73 69 74 6f 72 79 2f 61 75  ne/repository/au
00c0: 74 6f 63 6f 6e 66 2f 64 6f 63 2f 74 72 75 6e 6b  toconf/doc/trunk
00d0: 2f 74 63 6c 2e 6d 34 0a 09 68 74 74 70 3a 2f 2f  /tcl.m4..http://
00e0: 63 68 69 73 65 6c 61 70 70 2e 63 6f 6d 2f 75 73  chiselapp.com/us
00f0: 65 72 2f 72 6b 65 65 6e 65 2f 72 65 70 6f 73 69  er/rkeene/reposi
0100: 74 6f 72 79 2f 61 75 74 6f 63 6f 6e 66 2f 64 6f  tory/autoconf/do
0110: 63 2f 74 72 75 6e 6b 2f 73 68 6f 62 6a 2e 6d 34  c/trunk/shobj.m4
0120: 0a 09 68 74 74 70 3a 2f 2f 63 68 69 73 65 6c 61  ..http://chisela
0130: 70 70 2e 63 6f 6d 2f 75 73 65 72 2f 72 6b 65 65  pp.com/user/rkee
0140: 6e 65 2f 72 65 70 6f 73 69 74 6f 72 79 2f 61 75  ne/repository/au
0150: 74 6f 63 6f 6e 66 2f 64 6f 63 2f 74 72 75 6e 6b  toconf/doc/trunk
0160: 2f 76 65 72 73 69 6f 6e 73 63 72 69 70 74 2e 6d  /versionscript.m
0170: 34 0a 09 27 68 74 74 70 3a 2f 2f 67 69 74 2e 73  4..'http://git.s
0180: 61 76 61 6e 6e 61 68 2e 67 6e 75 2e 6f 72 67 2f  avannah.gnu.org/
0190: 67 69 74 77 65 62 2f 3f 70 3d 61 75 74 6f 63 6f  gitweb/?p=autoco
01a0: 6e 66 2d 61 72 63 68 69 76 65 2e 67 69 74 3b 61  nf-archive.git;a
01b0: 3d 62 6c 6f 62 5f 70 6c 61 69 6e 3b 66 3d 6d 34  =blob_plain;f=m4
01c0: 2f 61 78 5f 63 68 65 63 6b 5f 63 6f 6d 70 69 6c  /ax_check_compil
01d0: 65 5f 66 6c 61 67 2e 6d 34 27 0a 29 0a 0a 6c 6f  e_flag.m4'.)..lo
01e0: 63 61 6c 46 69 6c 65 73 3d 28 0a 09 61 63 6c 6f  calFiles=(..aclo
01f0: 63 61 6c 2f 74 63 6c 74 6c 73 5f 6f 70 65 6e 73  cal/tcltls_opens
0200: 73 6c 2e 6d 34 0a 09 61 63 6c 6f 63 61 6c 2f 74  sl.m4..aclocal/t
0210: 63 6c 74 6c 73 5f 6d 62 65 64 74 6c 73 2e 6d 34  cltls_mbedtls.m4
0220: 0a 29 0a 0a 66 61 69 6c 65 64 3d 27 30 27 0a 66  .)..failed='0'.f
0230: 6f 72 20 63 6f 6d 6d 61 6e 64 20 69 6e 20 22 24  or command in "$
0240: 7b 63 6f 6d 6d 61 6e 64 73 5b 40 5d 7d 22 3b 20  {commands[@]}"; 
0250: 64 6f 0a 09 69 66 20 5b 20 21 20 2d 66 20 22 24  do..if [ ! -f "$
0260: 28 77 68 69 63 68 20 22 24 7b 63 6f 6d 6d 61 6e  (which "${comman
0270: 64 7d 22 20 32 3e 2f 64 65 76 2f 6e 75 6c 6c 29  d}" 2>/dev/null)
0280: 22 20 5d 3b 20 74 68 65 6e 0a 09 09 65 63 68 6f  " ]; then...echo
0290: 20 22 65 72 72 6f 72 3a 20 55 6e 61 62 6c 65 20   "error: Unable 
02a0: 74 6f 20 6c 6f 63 61 74 65 20 24 7b 63 6f 6d 6d  to locate ${comm
02b0: 61 6e 64 7d 22 20 3e 26 32 0a 09 09 66 61 69 6c  and}" >&2...fail
02c0: 65 64 3d 27 31 27 0a 09 66 69 0a 64 6f 6e 65 0a  ed='1'..fi.done.
02d0: 69 66 20 5b 20 22 24 7b 66 61 69 6c 65 64 7d 22  if [ "${failed}"
02e0: 20 3d 20 27 31 27 20 5d 3b 20 74 68 65 6e 0a 09   = '1' ]; then..
02f0: 65 78 69 74 20 31 0a 66 69 0a 0a 63 64 20 22 24  exit 1.fi..cd "$
0300: 28 64 69 72 6e 61 6d 65 20 22 24 28 77 68 69 63  (dirname "$(whic
0310: 68 20 22 24 30 22 29 22 29 22 20 7c 7c 20 65 78  h "$0")")" || ex
0320: 69 74 20 31 0a 0a 6d 6b 64 69 72 20 61 63 6c 6f  it 1..mkdir aclo
0330: 63 61 6c 20 3e 2f 64 65 76 2f 6e 75 6c 6c 20 32  cal >/dev/null 2
0340: 3e 2f 64 65 76 2f 6e 75 6c 6c 0a 0a 66 69 6c 65  >/dev/null..file
0350: 73 3d 28 29 0a 0a 66 6f 72 20 75 72 6c 20 69 6e  s=()..for url in
0360: 20 22 24 7b 75 72 6c 73 5b 40 5d 7d 22 3b 20 64   "${urls[@]}"; d
0370: 6f 0a 09 66 69 6c 65 3d 22 61 63 6c 6f 63 61 6c  o..file="aclocal
0380: 2f 24 28 65 63 68 6f 20 22 24 7b 75 72 6c 7d 22  /$(echo "${url}"
0390: 20 7c 20 73 65 64 20 27 73 40 5e 2e 2a 2f 40 40   | sed 's@^.*/@@
03a0: 27 29 22 0a 0a 09 69 66 20 5b 20 2d 66 20 22 24  ')"...if [ -f "$
03b0: 7b 66 69 6c 65 7d 22 20 5d 3b 20 74 68 65 6e 0a  {file}" ]; then.
03c0: 09 09 69 66 20 5b 20 22 24 7b 75 70 64 61 74 65  ..if [ "${update
03d0: 7d 22 20 3d 20 27 30 27 20 5d 3b 20 74 68 65 6e  }" = '0' ]; then
03e0: 0a 09 09 09 66 69 6c 65 73 3d 28 22 24 7b 66 69  ....files=("${fi
03f0: 6c 65 73 5b 40 5d 7d 22 20 22 24 7b 66 69 6c 65  les[@]}" "${file
0400: 7d 22 29 0a 0a 09 09 09 63 6f 6e 74 69 6e 75 65  }").....continue
0410: 0a 09 09 66 69 0a 09 66 69 0a 0a 09 63 75 72 6c  ...fi..fi...curl
0420: 20 2d 6c 73 53 20 22 24 7b 75 72 6c 7d 22 20 3e   -lsS "${url}" >
0430: 20 22 24 7b 66 69 6c 65 7d 2e 6e 65 77 22 20 7c   "${file}.new" |
0440: 7c 20 65 78 69 74 20 31 0a 09 69 66 20 64 69 66  | exit 1..if dif
0450: 66 20 22 24 7b 66 69 6c 65 7d 2e 6e 65 77 22 20  f "${file}.new" 
0460: 22 24 7b 66 69 6c 65 7d 22 20 3e 2f 64 65 76 2f  "${file}" >/dev/
0470: 6e 75 6c 6c 20 32 3e 2f 64 65 76 2f 6e 75 6c 6c  null 2>/dev/null
0480: 3b 20 74 68 65 6e 0a 09 09 72 6d 20 2d 66 20 22  ; then...rm -f "
0490: 24 7b 66 69 6c 65 7d 2e 6e 65 77 22 0a 09 65 6c  ${file}.new"..el
04a0: 73 65 0a 09 09 6d 76 20 22 24 7b 66 69 6c 65 7d  se...mv "${file}
04b0: 2e 6e 65 77 22 20 22 24 7b 66 69 6c 65 7d 22 0a  .new" "${file}".
04c0: 09 66 69 0a 0a 09 66 69 6c 65 73 3d 28 22 24 7b  .fi...files=("${
04d0: 66 69 6c 65 73 5b 40 5d 7d 22 20 22 24 7b 66 69  files[@]}" "${fi
04e0: 6c 65 7d 22 29 0a 64 6f 6e 65 0a 0a 66 6f 72 20  le}").done..for 
04f0: 66 69 6c 65 20 69 6e 20 22 24 7b 66 69 6c 65 73  file in "${files
0500: 5b 40 5d 7d 22 20 22 24 7b 6c 6f 63 61 6c 46 69  [@]}" "${localFi
0510: 6c 65 73 5b 40 5d 7d 22 3b 20 64 6f 0a 09 63 61  les[@]}"; do..ca
0520: 74 20 22 24 7b 66 69 6c 65 7d 22 0a 64 6f 6e 65  t "${file}".done
0530: 20 3e 20 61 63 6c 6f 63 61 6c 2e 6d 34 2e 6e 65   > aclocal.m4.ne
0540: 77 0a 0a 69 66 20 64 69 66 66 20 61 63 6c 6f 63  w..if diff acloc
0550: 61 6c 2e 6d 34 2e 6e 65 77 20 61 63 6c 6f 63 61  al.m4.new acloca
0560: 6c 2e 6d 34 20 3e 2f 64 65 76 2f 6e 75 6c 6c 20  l.m4 >/dev/null 
0570: 32 3e 2f 64 65 76 2f 6e 75 6c 6c 3b 20 74 68 65  2>/dev/null; the
0580: 6e 0a 09 72 6d 20 2d 66 20 61 63 6c 6f 63 61 6c  n..rm -f aclocal
0590: 2e 6d 34 2e 6e 65 77 0a 65 6c 73 65 0a 09 6d 76  .m4.new.else..mv
05a0: 20 61 63 6c 6f 63 61 6c 2e 6d 34 2e 6e 65 77 20   aclocal.m4.new 
05b0: 61 63 6c 6f 63 61 6c 2e 6d 34 0a 66 69 0a 0a 61  aclocal.m4.fi..a
05c0: 75 74 6f 6d 61 6b 65 20 2d 2d 61 64 64 2d 6d 69  utomake --add-mi
05d0: 73 73 69 6e 67 20 2d 2d 63 6f 70 79 20 2d 2d 66  ssing --copy --f
05e0: 6f 72 63 65 2d 6d 69 73 73 69 6e 67 20 3e 2f 64  orce-missing >/d
05f0: 65 76 2f 6e 75 6c 6c 20 32 3e 2f 64 65 76 2f 6e  ev/null 2>/dev/n
0600: 75 6c 6c 0a 69 66 20 21 20 5b 20 2d 66 20 69 6e  ull.if ! [ -f in
0610: 73 74 61 6c 6c 2d 73 68 20 2d 6f 20 2d 66 20 69  stall-sh -o -f i
0620: 6e 73 74 61 6c 6c 2e 73 68 20 2d 6f 20 2d 66 20  nstall.sh -o -f 
0630: 73 68 74 6f 6f 6c 20 5d 3b 20 74 68 65 6e 0a 09  shtool ]; then..
0640: 65 63 68 6f 20 22 61 75 74 6f 6d 61 6b 65 20 66  echo "automake f
0650: 61 69 6c 65 64 22 20 3e 26 32 0a 09 65 78 69 74  ailed" >&2..exit
0660: 20 31 0a 66 69 0a 0a 61 75 74 6f 63 6f 6e 66 0a   1.fi..autoconf.
0670: 0a 69 66 20 67 72 65 70 20 41 43 5f 43 4f 4d 50  .if grep AC_COMP
0680: 49 4c 45 5f 49 46 45 4c 53 45 20 61 63 6c 6f 63  ILE_IFELSE acloc
0690: 61 6c 2f 61 78 5f 63 68 65 63 6b 5f 63 6f 6d 70  al/ax_check_comp
06a0: 69 6c 65 5f 66 6c 61 67 2e 6d 34 20 3e 2f 64 65  ile_flag.m4 >/de
06b0: 76 2f 6e 75 6c 6c 3b 20 74 68 65 6e 0a 09 73 65  v/null; then..se
06c0: 64 20 27 73 40 41 43 5f 43 4f 4d 50 49 4c 45 5f  d 's@AC_COMPILE_
06d0: 49 46 45 4c 53 45 40 41 43 5f 4c 49 4e 4b 5f 49  IFELSE@AC_LINK_I
06e0: 46 45 4c 53 45 40 67 27 20 61 63 6c 6f 63 61 6c  FELSE@g' aclocal
06f0: 2f 61 78 5f 63 68 65 63 6b 5f 63 6f 6d 70 69 6c  /ax_check_compil
0700: 65 5f 66 6c 61 67 2e 6d 34 20 3e 20 61 63 6c 6f  e_flag.m4 > aclo
0710: 63 61 6c 2f 61 78 5f 63 68 65 63 6b 5f 63 6f 6d  cal/ax_check_com
0720: 70 69 6c 65 5f 66 6c 61 67 2e 6d 34 2e 6e 65 77  pile_flag.m4.new
0730: 0a 09 6d 76 20 61 63 6c 6f 63 61 6c 2f 61 78 5f  ..mv aclocal/ax_
0740: 63 68 65 63 6b 5f 63 6f 6d 70 69 6c 65 5f 66 6c  check_compile_fl
0750: 61 67 2e 6d 34 2e 6e 65 77 20 61 63 6c 6f 63 61  ag.m4.new acloca
0760: 6c 2f 61 78 5f 63 68 65 63 6b 5f 63 6f 6d 70 69  l/ax_check_compi
0770: 6c 65 5f 66 6c 61 67 2e 6d 34 0a 66 69 0a 0a 72  le_flag.m4.fi..r
0780: 6d 20 2d 72 66 20 61 75 74 6f 6d 34 74 65 2e 63  m -rf autom4te.c
0790: 61 63 68 65 0a                                   ache.