Hex Artifact Content

Artifact 927c73a64e7c0450c4a599300a354905ea977cd5:


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 29 0a 0a 6c 6f 63 61 6c 46 69 6c 65 73 3d  4.)..localFiles=
0180: 28 0a 09 61 63 6c 6f 63 61 6c 2f 74 63 6c 74 6c  (..aclocal/tcltl
0190: 73 5f 6f 70 65 6e 73 73 6c 2e 6d 34 0a 29 0a 0a  s_openssl.m4.)..
01a0: 66 61 69 6c 65 64 3d 27 30 27 0a 66 6f 72 20 63  failed='0'.for c
01b0: 6f 6d 6d 61 6e 64 20 69 6e 20 22 24 7b 63 6f 6d  ommand in "${com
01c0: 6d 61 6e 64 73 5b 40 5d 7d 22 3b 20 64 6f 0a 09  mands[@]}"; do..
01d0: 69 66 20 5b 20 21 20 2d 66 20 22 24 28 77 68 69  if [ ! -f "$(whi
01e0: 63 68 20 22 24 7b 63 6f 6d 6d 61 6e 64 7d 22 20  ch "${command}" 
01f0: 32 3e 2f 64 65 76 2f 6e 75 6c 6c 29 22 20 5d 3b  2>/dev/null)" ];
0200: 20 74 68 65 6e 0a 09 09 65 63 68 6f 20 22 65 72   then...echo "er
0210: 72 6f 72 3a 20 55 6e 61 62 6c 65 20 74 6f 20 6c  ror: Unable to l
0220: 6f 63 61 74 65 20 24 7b 63 6f 6d 6d 61 6e 64 7d  ocate ${command}
0230: 22 20 3e 26 32 0a 09 09 66 61 69 6c 65 64 3d 27  " >&2...failed='
0240: 31 27 0a 09 66 69 0a 64 6f 6e 65 0a 69 66 20 5b  1'..fi.done.if [
0250: 20 22 24 7b 66 61 69 6c 65 64 7d 22 20 3d 20 27   "${failed}" = '
0260: 31 27 20 5d 3b 20 74 68 65 6e 0a 09 65 78 69 74  1' ]; then..exit
0270: 20 31 0a 66 69 0a 0a 63 64 20 22 24 28 64 69 72   1.fi..cd "$(dir
0280: 6e 61 6d 65 20 22 24 28 77 68 69 63 68 20 22 24  name "$(which "$
0290: 30 22 29 22 29 22 20 7c 7c 20 65 78 69 74 20 31  0")")" || exit 1
02a0: 0a 0a 6d 6b 64 69 72 20 61 63 6c 6f 63 61 6c 20  ..mkdir aclocal 
02b0: 3e 2f 64 65 76 2f 6e 75 6c 6c 20 32 3e 2f 64 65  >/dev/null 2>/de
02c0: 76 2f 6e 75 6c 6c 0a 0a 66 69 6c 65 73 3d 28 29  v/null..files=()
02d0: 0a 0a 66 6f 72 20 75 72 6c 20 69 6e 20 22 24 7b  ..for url in "${
02e0: 75 72 6c 73 5b 40 5d 7d 22 3b 20 64 6f 0a 09 66  urls[@]}"; do..f
02f0: 69 6c 65 3d 22 61 63 6c 6f 63 61 6c 2f 24 28 65  ile="aclocal/$(e
0300: 63 68 6f 20 22 24 7b 75 72 6c 7d 22 20 7c 20 73  cho "${url}" | s
0310: 65 64 20 27 73 40 5e 2e 2a 2f 40 40 27 29 22 0a  ed 's@^.*/@@')".
0320: 0a 09 69 66 20 5b 20 2d 66 20 22 24 7b 66 69 6c  ..if [ -f "${fil
0330: 65 7d 22 20 5d 3b 20 74 68 65 6e 0a 09 09 69 66  e}" ]; then...if
0340: 20 5b 20 22 24 7b 75 70 64 61 74 65 7d 22 20 3d   [ "${update}" =
0350: 20 27 30 27 20 5d 3b 20 74 68 65 6e 0a 09 09 09   '0' ]; then....
0360: 66 69 6c 65 73 3d 28 22 24 7b 66 69 6c 65 73 5b  files=("${files[
0370: 40 5d 7d 22 20 22 24 7b 66 69 6c 65 7d 22 29 0a  @]}" "${file}").
0380: 0a 09 09 09 63 6f 6e 74 69 6e 75 65 0a 09 09 66  ....continue...f
0390: 69 0a 09 66 69 0a 0a 09 63 75 72 6c 20 2d 6c 73  i..fi...curl -ls
03a0: 53 20 22 24 7b 75 72 6c 7d 22 20 3e 20 22 24 7b  S "${url}" > "${
03b0: 66 69 6c 65 7d 2e 6e 65 77 22 20 7c 7c 20 65 78  file}.new" || ex
03c0: 69 74 20 31 0a 09 69 66 20 64 69 66 66 20 22 24  it 1..if diff "$
03d0: 7b 66 69 6c 65 7d 2e 6e 65 77 22 20 22 24 7b 66  {file}.new" "${f
03e0: 69 6c 65 7d 22 20 3e 2f 64 65 76 2f 6e 75 6c 6c  ile}" >/dev/null
03f0: 20 32 3e 2f 64 65 76 2f 6e 75 6c 6c 3b 20 74 68   2>/dev/null; th
0400: 65 6e 0a 09 09 72 6d 20 2d 66 20 22 24 7b 66 69  en...rm -f "${fi
0410: 6c 65 7d 2e 6e 65 77 22 0a 09 65 6c 73 65 0a 09  le}.new"..else..
0420: 09 6d 76 20 22 24 7b 66 69 6c 65 7d 2e 6e 65 77  .mv "${file}.new
0430: 22 20 22 24 7b 66 69 6c 65 7d 22 0a 09 66 69 0a  " "${file}"..fi.
0440: 0a 09 66 69 6c 65 73 3d 28 22 24 7b 66 69 6c 65  ..files=("${file
0450: 73 5b 40 5d 7d 22 20 22 24 7b 66 69 6c 65 7d 22  s[@]}" "${file}"
0460: 29 0a 64 6f 6e 65 0a 0a 66 6f 72 20 66 69 6c 65  ).done..for file
0470: 20 69 6e 20 22 24 7b 66 69 6c 65 73 5b 40 5d 7d   in "${files[@]}
0480: 22 20 22 24 7b 6c 6f 63 61 6c 46 69 6c 65 73 5b  " "${localFiles[
0490: 40 5d 7d 22 3b 20 64 6f 0a 09 63 61 74 20 22 24  @]}"; do..cat "$
04a0: 7b 66 69 6c 65 7d 22 0a 64 6f 6e 65 20 3e 20 61  {file}".done > a
04b0: 63 6c 6f 63 61 6c 2e 6d 34 2e 6e 65 77 0a 0a 69  clocal.m4.new..i
04c0: 66 20 64 69 66 66 20 61 63 6c 6f 63 61 6c 2e 6d  f diff aclocal.m
04d0: 34 2e 6e 65 77 20 61 63 6c 6f 63 61 6c 2e 6d 34  4.new aclocal.m4
04e0: 20 3e 2f 64 65 76 2f 6e 75 6c 6c 20 32 3e 2f 64   >/dev/null 2>/d
04f0: 65 76 2f 6e 75 6c 6c 3b 20 74 68 65 6e 0a 09 72  ev/null; then..r
0500: 6d 20 2d 66 20 61 63 6c 6f 63 61 6c 2e 6d 34 2e  m -f aclocal.m4.
0510: 6e 65 77 0a 65 6c 73 65 0a 09 6d 76 20 61 63 6c  new.else..mv acl
0520: 6f 63 61 6c 2e 6d 34 2e 6e 65 77 20 61 63 6c 6f  ocal.m4.new aclo
0530: 63 61 6c 2e 6d 34 0a 66 69 0a 0a 61 75 74 6f 6d  cal.m4.fi..autom
0540: 61 6b 65 20 2d 2d 61 64 64 2d 6d 69 73 73 69 6e  ake --add-missin
0550: 67 20 2d 2d 63 6f 70 79 20 2d 2d 66 6f 72 63 65  g --copy --force
0560: 2d 6d 69 73 73 69 6e 67 20 3e 2f 64 65 76 2f 6e  -missing >/dev/n
0570: 75 6c 6c 20 32 3e 2f 64 65 76 2f 6e 75 6c 6c 0a  ull 2>/dev/null.
0580: 0a 61 75 74 6f 63 6f 6e 66 0a 0a 72 6d 20 2d 72  .autoconf..rm -r
0590: 66 20 61 75 74 6f 6d 34 74 65 2e 63 61 63 68 65  f autom4te.cache
05a0: 0a                                               .