Megatest

Hex Artifact Content
Login

Artifact 3a5037bb6f0a775d2771232fe296f8164c0780f3:


0000: 23 21 2f 62 69 6e 2f 62 61 73 68 0a 0a 23 20 43  #!/bin/bash..# C
0010: 6f 70 79 72 69 67 68 74 20 32 30 30 37 2d 32 30  opyright 2007-20
0020: 31 30 2c 20 4d 61 74 74 68 65 77 20 57 65 6c 6c  10, Matthew Well
0030: 61 6e 64 2e 0a 23 20 0a 23 20 20 54 68 69 73 20  and..# .#  This 
0040: 70 72 6f 67 72 61 6d 20 69 73 20 6d 61 64 65 20  program is made 
0050: 61 76 61 69 6c 61 62 6c 65 20 75 6e 64 65 72 20  available under 
0060: 74 68 65 20 47 4e 55 20 47 50 4c 20 76 65 72 73  the GNU GPL vers
0070: 69 6f 6e 20 32 2e 30 20 6f 72 0a 23 20 20 67 72  ion 2.0 or.#  gr
0080: 65 61 74 65 72 2e 20 53 65 65 20 74 68 65 20 61  eater. See the a
0090: 63 63 6f 6d 70 61 6e 79 69 6e 67 20 66 69 6c 65  ccompanying file
00a0: 20 43 4f 50 59 49 4e 47 20 66 6f 72 20 64 65 74   COPYING for det
00b0: 61 69 6c 73 2e 0a 23 20 0a 23 20 20 54 68 69 73  ails..# .#  This
00c0: 20 70 72 6f 67 72 61 6d 20 69 73 20 64 69 73 74   program is dist
00d0: 72 69 62 75 74 65 64 20 57 49 54 48 4f 55 54 20  ributed WITHOUT 
00e0: 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69  ANY WARRANTY; wi
00f0: 74 68 6f 75 74 20 65 76 65 6e 20 74 68 65 0a 23  thout even the.#
0100: 20 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e    implied warran
0110: 74 79 20 6f 66 20 4d 45 52 43 48 41 4e 54 41 42  ty of MERCHANTAB
0120: 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53  ILITY or FITNESS
0130: 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41   FOR A PARTICULA
0140: 52 0a 23 20 20 50 55 52 50 4f 53 45 2e 0a 0a 65  R.#  PURPOSE...e
0150: 63 68 6f 20 59 6f 75 20 6d 61 79 20 6e 65 65 64  cho You may need
0160: 20 74 6f 20 64 6f 20 74 68 65 20 66 6f 6c 6c 6f   to do the follo
0170: 77 69 6e 67 20 66 69 72 73 74 3a 0a 65 63 68 6f  wing first:.echo
0180: 20 73 75 64 6f 20 61 70 74 2d 67 65 74 20 69 6e   sudo apt-get in
0190: 73 74 61 6c 6c 20 6c 69 62 72 65 61 64 6c 69 6e  stall libreadlin
01a0: 65 2d 64 65 76 0a 65 63 68 6f 20 73 75 64 6f 20  e-dev.echo sudo 
01b0: 61 70 74 2d 67 65 74 20 69 6e 73 74 61 6c 6c 20  apt-get install 
01c0: 6c 69 62 77 65 62 6b 69 74 67 74 6b 2d 64 65 76  libwebkitgtk-dev
01d0: 0a 65 63 68 6f 20 73 75 64 6f 20 61 70 74 2d 67  .echo sudo apt-g
01e0: 65 74 20 69 6e 73 74 61 6c 6c 20 6c 69 62 6d 6f  et install libmo
01f0: 74 69 66 33 20 2d 4f 52 2d 20 73 65 74 20 4b 54  tif3 -OR- set KT
0200: 59 50 45 3d 32 36 67 34 0a 65 63 68 6f 20 4b 54  YPE=26g4.echo KT
0210: 59 50 45 20 63 61 6e 20 62 65 20 32 36 2c 20 32  YPE can be 26, 2
0220: 36 67 34 2c 20 33 32 2c 20 6f 72 20 33 32 5f 36  6g4, 32, or 32_6
0230: 34 0a 65 63 68 6f 20 4b 54 59 50 45 3d 24 4b 54  4.echo KTYPE=$KT
0240: 59 50 45 0a 65 63 68 6f 20 59 6f 75 20 61 72 65  YPE.echo You are
0250: 20 75 73 69 6e 67 20 50 52 45 46 49 58 3d 24 50   using PREFIX=$P
0260: 52 45 46 49 58 0a 65 63 68 6f 20 59 6f 75 20 61  REFIX.echo You a
0270: 72 65 20 75 73 69 6e 67 20 70 72 6f 78 79 3d 22  re using proxy="
0280: 24 70 72 6f 78 79 22 0a 65 63 68 6f 20 22 53 65  $proxy".echo "Se
0290: 74 20 61 64 64 69 74 69 6f 6e 61 6c 5f 6c 69 62  t additional_lib
02a0: 70 61 74 68 20 74 6f 20 68 65 6c 70 20 66 69 6e  path to help fin
02b0: 64 20 67 74 6b 20 6f 72 20 6f 74 68 65 72 20 6c  d gtk or other l
02c0: 69 62 72 61 72 69 65 73 2c 20 64 6f 6e 27 74 20  ibraries, don't 
02d0: 66 6f 72 67 65 74 20 61 20 6c 65 61 64 69 6e 67  forget a leading
02e0: 20 3a 22 0a 65 63 68 6f 20 41 44 44 49 54 49 4f   :".echo ADDITIO
02f0: 4e 41 4c 5f 4c 49 42 50 41 54 48 3d 24 41 44 44  NAL_LIBPATH=$ADD
0300: 49 54 49 4f 4e 41 4c 5f 4c 49 42 50 41 54 48 0a  ITIONAL_LIBPATH.
0310: 65 63 68 6f 20 48 69 74 20 5e 43 20 6e 6f 77 20  echo Hit ^C now 
0320: 74 6f 20 64 6f 20 74 68 61 74 0a 0a 23 20 41 20  to do that..# A 
0330: 6e 69 63 65 20 77 61 79 20 74 6f 20 72 75 6e 20  nice way to run 
0340: 74 68 69 73 20 73 63 72 69 70 74 3a 0a 23 0a 23  this script:.#.#
0350: 20 73 63 72 69 70 74 20 2d 63 20 27 50 52 45 46   script -c 'PREF
0360: 49 58 3d 2f 74 6d 70 2f 64 65 6c 6d 65 20 2e 2f  IX=/tmp/delme ./
0370: 69 6e 73 74 61 6c 6c 61 6c 6c 2e 73 68 20 27 20  installall.sh ' 
0380: 69 6e 73 74 61 6c 6c 61 6c 6c 2e 6c 6f 67 0a 23  installall.log.#
0390: 20 6c 6f 67 70 72 6f 20 69 6e 73 74 61 6c 6c 61   logpro installa
03a0: 6c 6c 2e 6c 6f 67 70 72 6f 20 69 6e 73 74 61 6c  ll.logpro instal
03b0: 6c 61 6c 6c 2e 68 74 6d 6c 20 3c 20 69 6e 73 74  lall.html < inst
03c0: 61 6c 6c 61 6c 6c 2e 6c 6f 67 0a 23 20 66 69 72  allall.log.# fir
03d0: 65 66 6f 78 20 69 6e 73 74 61 6c 6c 61 6c 6c 2e  efox installall.
03e0: 68 74 6d 6c 0a 0a 73 6c 65 65 70 20 35 0a 0a 69  html..sleep 5..i
03f0: 66 20 5b 5b 20 24 70 72 6f 78 79 20 3d 3d 20 22  f [[ $proxy == "
0400: 22 20 5d 5d 3b 20 74 68 65 6e 20 0a 20 20 65 63  " ]]; then .  ec
0410: 68 6f 20 27 50 6c 65 61 73 65 20 73 65 74 20 74  ho 'Please set t
0420: 68 65 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 76  he environment v
0430: 61 72 69 61 62 6c 65 20 22 70 72 6f 78 79 22 20  ariable "proxy" 
0440: 74 6f 20 68 6f 73 74 2e 63 6f 6d 3a 70 6f 72 74  to host.com:port
0450: 20 28 65 2e 67 2e 20 66 6f 6f 2e 63 6f 6d 3a 31   (e.g. foo.com:1
0460: 32 33 34 29 20 74 6f 20 75 73 65 20 61 20 70 72  234) to use a pr
0470: 6f 78 79 27 0a 20 20 65 63 68 6f 20 50 52 4f 58  oxy'.  echo PROX
0480: 3d 22 22 0a 65 6c 73 65 0a 20 20 65 78 70 6f 72  ="".else.  expor
0490: 74 20 68 74 74 70 5f 70 72 6f 78 79 3d 68 74 74  t http_proxy=htt
04a0: 70 3a 2f 2f 24 70 72 6f 78 79 0a 20 20 65 78 70  p://$proxy.  exp
04b0: 6f 72 74 20 50 52 4f 58 3d 22 2d 70 72 6f 78 79  ort PROX="-proxy
04c0: 20 24 70 72 6f 78 79 22 0a 66 69 0a 0a 69 66 20   $proxy".fi..if 
04d0: 5b 5b 20 24 4b 54 59 50 45 20 3d 3d 20 22 22 20  [[ $KTYPE == "" 
04e0: 5d 5d 3b 20 74 68 65 6e 0a 20 20 65 63 68 6f 20  ]]; then.  echo 
04f0: 27 55 73 69 6e 67 20 4b 54 59 50 45 3d 32 36 27  'Using KTYPE=26'
0500: 0a 20 20 65 78 70 6f 72 74 20 4b 54 59 50 45 3d  .  export KTYPE=
0510: 32 36 0a 65 6c 73 65 0a 20 20 65 63 68 6f 20 55  26.else.  echo U
0520: 73 69 6e 67 20 4b 54 59 50 45 3d 24 4b 54 59 50  sing KTYPE=$KTYP
0530: 45 0a 66 69 0a 0a 65 78 70 6f 72 74 20 43 48 49  E.fi..export CHI
0540: 43 4b 45 4e 5f 56 45 52 53 49 4f 4e 3d 34 2e 38  CKEN_VERSION=4.8
0550: 2e 30 0a 69 66 20 21 20 5b 5b 20 2d 65 20 63 68  .0.if ! [[ -e ch
0560: 69 63 6b 65 6e 2d 24 7b 43 48 49 43 4b 45 4e 5f  icken-${CHICKEN_
0570: 56 45 52 53 49 4f 4e 7d 2e 74 61 72 2e 67 7a 20  VERSION}.tar.gz 
0580: 5d 5d 3b 20 74 68 65 6e 20 0a 20 20 20 20 77 67  ]]; then .    wg
0590: 65 74 20 68 74 74 70 3a 2f 2f 63 6f 64 65 2e 63  et http://code.c
05a0: 61 6c 6c 2d 63 63 2e 6f 72 67 2f 72 65 6c 65 61  all-cc.org/relea
05b0: 73 65 73 2f 24 7b 43 48 49 43 4b 45 4e 5f 56 45  ses/${CHICKEN_VE
05c0: 52 53 49 4f 4e 7d 2f 63 68 69 63 6b 65 6e 2d 24  RSION}/chicken-$
05d0: 7b 43 48 49 43 4b 45 4e 5f 56 45 52 53 49 4f 4e  {CHICKEN_VERSION
05e0: 7d 2e 74 61 72 2e 67 7a 0a 66 69 20 0a 0a 42 55  }.tar.gz.fi ..BU
05f0: 49 4c 44 48 4f 4d 45 3d 24 50 57 44 0a 69 66 20  ILDHOME=$PWD.if 
0600: 5b 5b 20 24 50 52 45 46 49 58 20 3d 3d 20 22 22  [[ $PREFIX == ""
0610: 20 5d 5d 3b 20 74 68 65 6e 0a 20 20 20 50 52 45   ]]; then.   PRE
0620: 46 49 58 3d 24 50 57 44 2f 69 6e 73 74 0a 66 69  FIX=$PWD/inst.fi
0630: 0a 0a 65 78 70 6f 72 74 20 50 41 54 48 3d 24 50  ..export PATH=$P
0640: 52 45 46 49 58 2f 62 69 6e 3a 24 50 41 54 48 0a  REFIX/bin:$PATH.
0650: 65 63 68 6f 20 22 65 78 70 6f 72 74 20 50 41 54  echo "export PAT
0660: 48 3d 24 50 52 45 46 49 58 2f 62 69 6e 3a 5c 24  H=$PREFIX/bin:\$
0670: 50 41 54 48 22 20 3e 20 73 65 74 75 70 2d 63 68  PATH" > setup-ch
0680: 69 63 6b 65 6e 34 78 2e 73 68 0a 65 78 70 6f 72  icken4x.sh.expor
0690: 74 20 4c 44 5f 4c 49 42 52 41 52 59 5f 50 41 54  t LD_LIBRARY_PAT
06a0: 48 3d 24 50 52 45 46 49 58 2f 6c 69 62 0a 65 63  H=$PREFIX/lib.ec
06b0: 68 6f 20 22 65 78 70 6f 72 74 20 4c 44 5f 4c 49  ho "export LD_LI
06c0: 42 52 41 52 59 5f 50 41 54 48 3d 24 50 52 45 46  BRARY_PATH=$PREF
06d0: 49 58 2f 6c 69 62 22 20 3e 3e 20 73 65 74 75 70  IX/lib" >> setup
06e0: 2d 63 68 69 63 6b 65 6e 34 78 2e 73 68 0a 0a 65  -chicken4x.sh..e
06f0: 63 68 6f 20 50 41 54 48 3d 24 50 41 54 48 0a 65  cho PATH=$PATH.e
0700: 63 68 6f 20 4c 44 5f 4c 49 42 52 41 52 59 5f 50  cho LD_LIBRARY_P
0710: 41 54 48 3d 24 4c 44 5f 4c 49 42 52 41 52 59 5f  ATH=$LD_LIBRARY_
0720: 50 41 54 48 0a 0a 69 66 20 21 20 5b 5b 20 2d 65  PATH..if ! [[ -e
0730: 20 24 50 52 45 46 49 58 2f 62 69 6e 2f 63 73 69   $PREFIX/bin/csi
0740: 20 5d 5d 3b 20 74 68 65 6e 0a 20 20 20 20 74 61   ]]; then.    ta
0750: 72 20 78 66 76 7a 20 63 68 69 63 6b 65 6e 2d 24  r xfvz chicken-$
0760: 7b 43 48 49 43 4b 45 4e 5f 56 45 52 53 49 4f 4e  {CHICKEN_VERSION
0770: 7d 2e 74 61 72 2e 67 7a 0a 20 20 20 20 63 64 20  }.tar.gz.    cd 
0780: 63 68 69 63 6b 65 6e 2d 24 7b 43 48 49 43 4b 45  chicken-${CHICKE
0790: 4e 5f 56 45 52 53 49 4f 4e 7d 0a 20 20 20 20 6d  N_VERSION}.    m
07a0: 61 6b 65 20 50 4c 41 54 46 4f 52 4d 3d 6c 69 6e  ake PLATFORM=lin
07b0: 75 78 20 50 52 45 46 49 58 3d 24 50 52 45 46 49  ux PREFIX=$PREFI
07c0: 58 0a 20 20 20 20 6d 61 6b 65 20 50 4c 41 54 46  X.    make PLATF
07d0: 4f 52 4d 3d 6c 69 6e 75 78 20 50 52 45 46 49 58  ORM=linux PREFIX
07e0: 3d 24 50 52 45 46 49 58 20 69 6e 73 74 61 6c 6c  =$PREFIX install
07f0: 0a 20 20 20 20 63 64 20 24 42 55 49 4c 44 48 4f  .    cd $BUILDHO
0800: 4d 45 0a 66 69 0a 0a 66 6f 72 20 66 20 69 6e 20  ME.fi..for f in 
0810: 72 65 61 64 6c 69 6e 65 20 61 70 72 6f 70 6f 73  readline apropos
0820: 20 62 61 73 65 36 34 20 72 65 67 65 78 2d 6c 69   base64 regex-li
0830: 74 65 72 61 6c 73 20 66 6f 72 6d 61 74 20 72 65  terals format re
0840: 67 65 78 2d 63 61 73 65 20 74 65 73 74 20 63 6f  gex-case test co
0850: 6f 70 73 20 74 72 61 63 65 20 63 73 76 20 64 6f  ops trace csv do
0860: 74 2d 6c 6f 63 6b 69 6e 67 20 70 6f 73 69 78 2d  t-locking posix-
0870: 75 74 69 6c 73 20 70 6f 73 69 78 2d 65 78 74 72  utils posix-extr
0880: 61 73 20 64 69 72 65 63 74 6f 72 79 2d 75 74 69  as directory-uti
0890: 6c 73 20 68 6f 73 74 69 6e 66 6f 20 74 63 70 20  ls hostinfo tcp 
08a0: 72 70 63 20 63 73 76 2d 78 6d 6c 20 3b 20 64 6f  rpc csv-xml ; do
08b0: 0a 20 20 63 68 69 63 6b 65 6e 2d 69 6e 73 74 61  .  chicken-insta
08c0: 6c 6c 20 24 50 52 4f 58 20 24 66 0a 64 6f 6e 65  ll $PROX $f.done
08d0: 0a 0a 63 64 20 24 42 55 49 4c 44 48 4f 4d 45 0a  ..cd $BUILDHOME.
08e0: 0a 66 6f 72 20 61 20 69 6e 20 60 6c 73 20 2a 2f  .for a in `ls */
08f0: 2a 2e 6d 65 74 61 7c 63 75 74 20 2d 66 31 20 2d  *.meta|cut -f1 -
0900: 64 2f 60 20 3b 20 64 6f 20 0a 20 20 20 20 65 63  d/` ; do .    ec
0910: 68 6f 20 24 61 0a 20 20 20 20 28 63 64 20 24 61  ho $a.    (cd $a
0920: 3b 63 68 69 63 6b 65 6e 2d 69 6e 73 74 61 6c 6c  ;chicken-install
0930: 29 0a 64 6f 6e 65 0a 0a 65 78 70 6f 72 74 20 53  ).done..export S
0940: 51 4c 49 54 45 33 5f 56 45 52 53 49 4f 4e 3d 33  QLITE3_VERSION=3
0950: 30 37 31 34 30 31 0a 65 63 68 6f 20 49 6e 73 74  071401.echo Inst
0960: 61 6c 6c 20 73 71 6c 69 74 65 33 0a 69 66 20 21  all sqlite3.if !
0970: 20 5b 5b 20 2d 65 20 73 71 6c 69 74 65 2d 61 75   [[ -e sqlite-au
0980: 74 6f 63 6f 6e 66 2d 24 53 51 4c 49 54 45 33 5f  toconf-$SQLITE3_
0990: 56 45 52 53 49 4f 4e 2e 74 61 72 2e 67 7a 20 5d  VERSION.tar.gz ]
09a0: 5d 3b 20 74 68 65 6e 0a 20 20 20 20 77 67 65 74  ]; then.    wget
09b0: 20 68 74 74 70 3a 2f 2f 77 77 77 2e 73 71 6c 69   http://www.sqli
09c0: 74 65 2e 6f 72 67 2f 73 71 6c 69 74 65 2d 61 75  te.org/sqlite-au
09d0: 74 6f 63 6f 6e 66 2d 24 53 51 4c 49 54 45 33 5f  toconf-$SQLITE3_
09e0: 56 45 52 53 49 4f 4e 2e 74 61 72 2e 67 7a 0a 66  VERSION.tar.gz.f
09f0: 69 0a 0a 69 66 20 21 20 5b 5b 20 2d 65 20 24 50  i..if ! [[ -e $P
0a00: 52 45 46 49 58 2f 62 69 6e 2f 73 71 6c 69 74 65  REFIX/bin/sqlite
0a10: 33 20 5d 5d 20 3b 20 74 68 65 6e 0a 20 20 20 20  3 ]] ; then.    
0a20: 69 66 20 5b 5b 20 2d 65 20 73 71 6c 69 74 65 2d  if [[ -e sqlite-
0a30: 61 75 74 6f 63 6f 6e 66 2d 24 53 51 4c 49 54 45  autoconf-$SQLITE
0a40: 33 5f 56 45 52 53 49 4f 4e 2e 74 61 72 2e 67 7a  3_VERSION.tar.gz
0a50: 20 5d 5d 3b 20 74 68 65 6e 0a 09 74 61 72 20 78   ]]; then..tar x
0a60: 66 7a 20 73 71 6c 69 74 65 2d 61 75 74 6f 63 6f  fz sqlite-autoco
0a70: 6e 66 2d 24 53 51 4c 49 54 45 33 5f 56 45 52 53  nf-$SQLITE3_VERS
0a80: 49 4f 4e 2e 74 61 72 2e 67 7a 20 0a 09 28 63 64  ION.tar.gz ..(cd
0a90: 20 73 71 6c 69 74 65 2d 61 75 74 6f 63 6f 6e 66   sqlite-autoconf
0aa0: 2d 24 53 51 4c 49 54 45 33 5f 56 45 52 53 49 4f  -$SQLITE3_VERSIO
0ab0: 4e 3b 2e 2f 63 6f 6e 66 69 67 75 72 65 20 2d 2d  N;./configure --
0ac0: 70 72 65 66 69 78 3d 24 50 52 45 46 49 58 3b 6d  prefix=$PREFIX;m
0ad0: 61 6b 65 3b 6d 61 6b 65 20 69 6e 73 74 61 6c 6c  ake;make install
0ae0: 29 0a 09 43 53 43 5f 4f 50 54 49 4f 4e 53 3d 22  )..CSC_OPTIONS="
0af0: 2d 49 24 50 52 45 46 49 58 2f 69 6e 63 6c 75 64  -I$PREFIX/includ
0b00: 65 20 2d 4c 24 50 52 45 46 49 58 2f 6c 69 62 22  e -L$PREFIX/lib"
0b10: 20 63 68 69 63 6b 65 6e 2d 69 6e 73 74 61 6c 6c   chicken-install
0b20: 20 24 50 52 4f 58 20 73 71 6c 69 74 65 33 0a 20   $PROX sqlite3. 
0b30: 20 20 20 66 69 0a 66 69 0a 0a 63 68 69 63 6b 65     fi.fi..chicke
0b40: 6e 2d 69 6e 73 74 61 6c 6c 20 24 50 52 4f 58 20  n-install $PROX 
0b50: 73 71 6c 69 74 65 33 0a 0a 69 66 20 5b 5b 20 60  sqlite3..if [[ `
0b60: 75 6e 61 6d 65 20 2d 61 20 7c 20 67 72 65 70 20  uname -a | grep 
0b70: 78 38 36 5f 36 34 60 20 3d 3d 20 22 22 20 5d 5d  x86_64` == "" ]]
0b80: 3b 20 74 68 65 6e 20 0a 20 20 20 20 65 78 70 6f  ; then .    expo
0b90: 72 74 20 41 52 43 48 53 49 5a 45 3d 27 27 0a 65  rt ARCHSIZE=''.e
0ba0: 6c 73 65 0a 20 20 20 20 65 78 70 6f 72 74 20 41  lse.    export A
0bb0: 52 43 48 53 49 5a 45 3d 36 34 5f 0a 66 69 0a 20  RCHSIZE=64_.fi. 
0bc0: 20 20 20 23 20 65 78 70 6f 72 74 20 66 69 6c 65     # export file
0bd0: 73 3d 22 63 64 2d 35 2e 34 2e 31 5f 4c 69 6e 75  s="cd-5.4.1_Linu
0be0: 78 24 7b 4b 54 59 50 45 7d 5f 6c 69 62 2e 74 61  x${KTYPE}_lib.ta
0bf0: 72 2e 67 7a 20 69 6d 2d 33 2e 36 2e 33 5f 4c 69  r.gz im-3.6.3_Li
0c00: 6e 75 78 24 7b 4b 54 59 50 45 7d 5f 6c 69 62 2e  nux${KTYPE}_lib.
0c10: 74 61 72 2e 67 7a 20 69 75 70 2d 33 2e 35 5f 4c  tar.gz iup-3.5_L
0c20: 69 6e 75 78 24 7b 4b 54 59 50 45 7d 5f 6c 69 62  inux${KTYPE}_lib
0c30: 2e 74 61 72 2e 67 7a 22 0a 65 78 70 6f 72 74 20  .tar.gz".export 
0c40: 66 69 6c 65 73 3d 22 63 64 2d 35 2e 35 2e 31 5f  files="cd-5.5.1_
0c50: 4c 69 6e 75 78 24 7b 4b 54 59 50 45 7d 5f 24 7b  Linux${KTYPE}_${
0c60: 41 52 43 48 53 49 5a 45 7d 6c 69 62 2e 74 61 72  ARCHSIZE}lib.tar
0c70: 2e 67 7a 20 69 6d 2d 33 2e 38 5f 4c 69 6e 75 78  .gz im-3.8_Linux
0c80: 24 7b 4b 54 59 50 45 7d 5f 24 7b 41 52 43 48 53  ${KTYPE}_${ARCHS
0c90: 49 5a 45 7d 6c 69 62 2e 74 61 72 2e 67 7a 20 69  IZE}lib.tar.gz i
0ca0: 75 70 2d 33 2e 36 5f 4c 69 6e 75 78 24 7b 4b 54  up-3.6_Linux${KT
0cb0: 59 50 45 7d 5f 24 7b 41 52 43 48 53 49 5a 45 7d  YPE}_${ARCHSIZE}
0cc0: 6c 69 62 2e 74 61 72 2e 67 7a 22 0a 23 20 65 6c  lib.tar.gz".# el
0cd0: 73 65 0a 23 20 20 20 20 20 23 20 65 78 70 6f 72  se.#     # expor
0ce0: 74 20 66 69 6c 65 73 3d 22 63 64 2d 35 2e 34 2e  t files="cd-5.4.
0cf0: 31 5f 4c 69 6e 75 78 24 7b 4b 54 59 50 45 7d 5f  1_Linux${KTYPE}_
0d00: 36 34 5f 6c 69 62 2e 74 61 72 2e 67 7a 20 69 6d  64_lib.tar.gz im
0d10: 2d 33 2e 36 2e 33 5f 4c 69 6e 75 78 24 7b 4b 54  -3.6.3_Linux${KT
0d20: 59 50 45 7d 5f 36 34 5f 6c 69 62 2e 74 61 72 2e  YPE}_64_lib.tar.
0d30: 67 7a 20 69 75 70 2d 33 2e 35 5f 4c 69 6e 75 78  gz iup-3.5_Linux
0d40: 24 7b 4b 54 59 50 45 7d 5f 36 34 5f 6c 69 62 2e  ${KTYPE}_64_lib.
0d50: 74 61 72 2e 67 7a 22 0a 23 20 20 20 20 20 65 78  tar.gz".#     ex
0d60: 70 6f 72 74 20 66 69 6c 65 73 3d 22 63 64 2d 35  port files="cd-5
0d70: 2e 35 2e 31 5f 4c 69 6e 75 78 24 7b 4b 54 59 50  .5.1_Linux${KTYP
0d80: 45 7d 5f 6c 69 62 2e 74 61 72 2e 67 7a 20 69 6d  E}_lib.tar.gz im
0d90: 2d 33 2e 36 2e 33 5f 4c 69 6e 75 78 24 7b 4b 54  -3.6.3_Linux${KT
0da0: 59 50 45 7d 5f 6c 69 62 2e 74 61 72 2e 67 7a 20  YPE}_lib.tar.gz 
0db0: 69 75 70 2d 33 2e 35 5f 4c 69 6e 75 78 24 7b 4b  iup-3.5_Linux${K
0dc0: 54 59 50 45 7d 5f 6c 69 62 2e 74 61 72 2e 67 7a  TYPE}_lib.tar.gz
0dd0: 22 0a 23 20 66 69 0a 0a 6d 6b 64 69 72 20 24 50  ".# fi..mkdir $P
0de0: 52 45 46 49 58 2f 69 75 70 6c 69 62 0a 66 6f 72  REFIX/iuplib.for
0df0: 20 61 20 69 6e 20 60 65 63 68 6f 20 24 66 69 6c   a in `echo $fil
0e00: 65 73 60 20 3b 20 64 6f 0a 20 20 20 20 69 66 20  es` ; do.    if 
0e10: 21 20 5b 5b 20 2d 65 20 24 61 20 5d 5d 20 3b 20  ! [[ -e $a ]] ; 
0e20: 74 68 65 6e 0a 09 77 67 65 74 20 68 74 74 70 3a  then..wget http:
0e30: 2f 2f 77 77 77 2e 6b 69 61 74 6f 61 2e 63 6f 6d  //www.kiatoa.com
0e40: 2f 6d 61 74 74 2f 69 75 70 2f 24 61 0a 20 20 20  /matt/iup/$a.   
0e50: 20 66 69 0a 20 20 20 20 28 63 64 20 24 50 52 45   fi.    (cd $PRE
0e60: 46 49 58 2f 6c 69 62 3b 74 61 72 20 78 66 76 7a  FIX/lib;tar xfvz
0e70: 20 24 42 55 49 4c 44 48 4f 4d 45 2f 24 61 3b 6d   $BUILDHOME/$a;m
0e80: 76 20 69 6e 63 6c 75 64 65 2f 2a 20 2e 2e 2f 69  v include/* ../i
0e90: 6e 63 6c 75 64 65 29 0a 64 6f 6e 65 0a 0a 23 20  nclude).done..# 
0ea0: 66 66 63 61 6c 6c 20 6f 62 74 61 69 6e 65 64 20  ffcall obtained 
0eb0: 66 72 6f 6d 3a 0a 23 20 63 76 73 20 2d 7a 33 20  from:.# cvs -z3 
0ec0: 2d 64 3a 70 73 65 72 76 65 72 3a 61 6e 6f 6e 79  -d:pserver:anony
0ed0: 6d 6f 75 73 40 63 76 73 2e 73 61 76 61 6e 6e 61  mous@cvs.savanna
0ee0: 68 2e 67 6e 75 2e 6f 72 67 3a 2f 73 6f 75 72 63  h.gnu.org:/sourc
0ef0: 65 73 2f 6c 69 62 66 66 63 61 6c 6c 20 63 6f 20  es/libffcall co 
0f00: 66 66 63 61 6c 6c 20 0a 0a 69 66 20 21 20 5b 5b  ffcall ..if ! [[
0f10: 20 2d 65 20 66 66 63 61 6c 6c 2e 74 61 72 2e 67   -e ffcall.tar.g
0f20: 7a 20 5d 5d 20 3b 20 74 68 65 6e 0a 20 20 20 20  z ]] ; then.    
0f30: 77 67 65 74 20 68 74 74 70 3a 2f 2f 77 77 77 2e  wget http://www.
0f40: 6b 69 61 74 6f 61 2e 63 6f 6d 2f 6d 61 74 74 2f  kiatoa.com/matt/
0f50: 69 75 70 2f 66 66 63 61 6c 6c 2e 74 61 72 2e 67  iup/ffcall.tar.g
0f60: 7a 20 0a 66 69 0a 0a 74 61 72 20 78 66 76 7a 20  z .fi..tar xfvz 
0f70: 66 66 63 61 6c 6c 2e 74 61 72 2e 67 7a 0a 0a 63  ffcall.tar.gz..c
0f80: 64 20 66 66 63 61 6c 6c 0a 2e 2f 63 6f 6e 66 69  d ffcall../confi
0f90: 67 75 72 65 20 2d 2d 70 72 65 66 69 78 3d 24 50  gure --prefix=$P
0fa0: 52 45 46 49 58 20 2d 2d 65 6e 61 62 6c 65 2d 73  REFIX --enable-s
0fb0: 68 61 72 65 64 0a 6d 61 6b 65 0a 6d 61 6b 65 20  hared.make.make 
0fc0: 69 6e 73 74 61 6c 6c 0a 0a 0a 63 64 20 24 42 55  install...cd $BU
0fd0: 49 4c 44 48 4f 4d 45 0a 65 78 70 6f 72 74 20 4c  ILDHOME.export L
0fe0: 49 42 50 41 54 48 3d 24 50 52 45 46 49 58 2f 6c  IBPATH=$PREFIX/l
0ff0: 69 62 24 41 44 44 49 54 49 4f 4e 41 4c 5f 4c 49  ib$ADDITIONAL_LI
1000: 42 50 41 54 48 0a 65 78 70 6f 72 74 20 4c 44 5f  BPATH.export LD_
1010: 4c 49 42 52 41 52 59 5f 50 41 54 48 3d 24 4c 49  LIBRARY_PATH=$LI
1020: 42 50 41 54 48 0a 43 53 43 5f 4f 50 54 49 4f 4e  BPATH.CSC_OPTION
1030: 53 3d 22 2d 49 24 50 52 45 46 49 58 2f 69 6e 63  S="-I$PREFIX/inc
1040: 6c 75 64 65 20 2d 4c 24 4c 49 42 50 41 54 48 22  lude -L$LIBPATH"
1050: 20 63 68 69 63 6b 65 6e 2d 69 6e 73 74 61 6c 6c   chicken-install
1060: 20 24 50 52 4f 58 20 2d 44 20 6e 6f 2d 6c 69 62   $PROX -D no-lib
1070: 72 61 72 79 2d 63 68 65 63 6b 73 20 69 75 70 0a  rary-checks iup.
1080: 43 53 43 5f 4f 50 54 49 4f 4e 53 3d 22 2d 49 24  CSC_OPTIONS="-I$
1090: 50 52 45 46 49 58 2f 69 6e 63 6c 75 64 65 20 2d  PREFIX/include -
10a0: 4c 24 4c 49 42 50 41 54 48 22 20 63 68 69 63 6b  L$LIBPATH" chick
10b0: 65 6e 2d 69 6e 73 74 61 6c 6c 20 24 50 52 4f 58  en-install $PROX
10c0: 20 2d 44 20 6e 6f 2d 6c 69 62 72 61 72 79 2d 63   -D no-library-c
10d0: 68 65 63 6b 73 20 63 61 6e 76 61 73 2d 64 72 61  hecks canvas-dra
10e0: 77 0a 0a 23 20 65 78 70 6f 72 74 20 43 44 5f 52  w..# export CD_R
10f0: 45 4c 3d 64 37 30 34 35 32 35 65 62 65 31 63 36  EL=d704525ebe1c6
1100: 64 30 38 0a 23 20 69 66 20 21 20 5b 5b 20 2d 65  d08.# if ! [[ -e
1110: 20 20 43 61 6e 76 61 73 5f 44 72 61 77 2d 24 43    Canvas_Draw-$C
1120: 44 5f 52 45 4c 2e 7a 69 70 20 5d 5d 3b 20 74 68  D_REL.zip ]]; th
1130: 65 6e 0a 23 20 20 20 20 20 77 67 65 74 20 68 74  en.#     wget ht
1140: 74 70 3a 2f 2f 77 77 77 2e 6b 69 61 74 6f 61 2e  tp://www.kiatoa.
1150: 63 6f 6d 2f 6d 61 74 74 2f 69 75 70 2f 43 61 6e  com/matt/iup/Can
1160: 76 61 73 5f 44 72 61 77 2d 24 43 44 5f 52 45 4c  vas_Draw-$CD_REL
1170: 2e 7a 69 70 0a 23 20 66 69 0a 23 20 0a 23 20 75  .zip.# fi.# .# u
1180: 6e 7a 69 70 20 2d 6f 20 43 61 6e 76 61 73 5f 44  nzip -o Canvas_D
1190: 72 61 77 2d 24 43 44 5f 52 45 4c 2e 7a 69 70 0a  raw-$CD_REL.zip.
11a0: 23 20 0a 23 20 63 64 20 22 43 61 6e 76 61 73 20  # .# cd "Canvas 
11b0: 44 72 61 77 2d 24 43 44 5f 52 45 4c 2f 63 68 69  Draw-$CD_REL/chi
11c0: 63 6b 65 6e 22 0a 23 20 43 53 43 5f 4f 50 54 49  cken".# CSC_OPTI
11d0: 4f 4e 53 3d 22 2d 49 24 50 52 45 46 49 58 2f 69  ONS="-I$PREFIX/i
11e0: 6e 63 6c 75 64 65 20 2d 4c 24 4c 49 42 50 41 54  nclude -L$LIBPAT
11f0: 48 22 20 63 68 69 63 6b 65 6e 2d 69 6e 73 74 61  H" chicken-insta
1200: 6c 6c 20 24 50 52 4f 58 20 2d 44 20 6e 6f 2d 6c  ll $PROX -D no-l
1210: 69 62 72 61 72 79 2d 63 68 65 63 6b 73 0a 0a 65  ibrary-checks..e
1220: 63 68 6f 20 59 6f 75 20 6d 61 79 20 6e 65 65 64  cho You may need
1230: 20 74 6f 20 61 64 64 20 24 4c 44 5f 4c 49 42 52   to add $LD_LIBR
1240: 41 52 59 5f 50 41 54 48 20 74 6f 20 79 6f 75 72  ARY_PATH to your
1250: 20 4c 44 5f 4c 49 42 52 41 52 59 5f 50 41 54 48   LD_LIBRARY_PATH
1260: 20 76 61 72 69 61 62 6c 65 2c 20 61 20 73 65 74   variable, a set
1270: 75 70 2d 63 68 69 63 6b 65 6e 34 78 2e 73 68 20  up-chicken4x.sh 
1280: 0a 65 63 68 6f 20 66 69 6c 65 20 63 61 6e 20 62  .echo file can b
1290: 65 20 66 6f 75 6e 64 20 69 6e 20 74 68 65 20 63  e found in the c
12a0: 75 72 72 65 6e 74 20 64 69 72 65 63 74 6f 72 79  urrent directory
12b0: 20 77 68 69 63 68 20 73 68 6f 75 6c 64 20 77 6f   which should wo
12c0: 72 6b 20 66 6f 72 20 73 65 74 74 69 6e 67 20 75  rk for setting u
12d0: 70 20 74 6f 20 72 75 6e 20 63 68 69 63 6b 65 6e  p to run chicken
12e0: 34 78 0a                                         4x.