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 .