Megatest

Hex Artifact Content
Login

Artifact a97ce9bc7ec6e4a71cbfed13ad4c2f230a9079e0:


0000: 23 20 6d 61 6b 65 20 69 6e 73 74 61 6c 6c 20 43  # make install C
0010: 53 43 4f 50 54 53 3d 27 2d 61 63 63 75 6d 75 6c  SCOPTS='-accumul
0020: 61 74 65 2d 70 72 6f 66 69 6c 65 20 2d 70 72 6f  ate-profile -pro
0030: 66 69 6c 65 2d 6e 61 6d 65 20 24 28 50 57 44 29  file-name $(PWD)
0040: 2f 70 72 6f 66 69 6c 65 2d 77 77 24 28 73 68 65  /profile-ww$(she
0050: 6c 6c 20 64 61 74 65 20 2b 25 56 2e 25 75 29 27  ll date +%V.%u)'
0060: 0a 23 20 72 6d 20 3c 66 69 6c 65 73 3e 2e 6f 20  .# rm <files>.o 
0070: 3b 20 6d 61 6b 65 20 69 6e 73 74 61 6c 6c 20 43  ; make install C
0080: 53 43 4f 50 54 53 3d 27 2d 70 72 6f 66 69 6c 65  SCOPTS='-profile
0090: 27 20 3b 20 2e 2e 2e 20 3b 20 20 63 68 69 63 6b  ' ; ... ;  chick
00a0: 65 6e 2d 70 72 6f 66 69 6c 65 20 7c 20 6c 65 73  en-profile | les
00b0: 73 0a 0a 50 52 45 46 49 58 3d 24 28 50 57 44 29  s..PREFIX=$(PWD)
00c0: 0a 43 53 43 4f 50 54 53 3d 20 0a 49 4e 53 54 41  .CSCOPTS= .INSTA
00d0: 4c 4c 3d 69 6e 73 74 61 6c 6c 0a 53 52 43 46 49  LL=install.SRCFI
00e0: 4c 45 53 20 3d 20 63 6f 6d 6d 6f 6e 2e 73 63 6d  LES = common.scm
00f0: 20 69 74 65 6d 73 2e 73 63 6d 20 6c 61 75 6e 63   items.scm launc
0100: 68 2e 73 63 6d 20 5c 0a 20 20 20 6f 64 73 2e 73  h.scm \.   ods.s
0110: 63 6d 20 72 75 6e 63 6f 6e 66 69 67 2e 73 63 6d  cm runconfig.scm
0120: 20 73 65 72 76 65 72 2e 73 63 6d 20 63 6f 6e 66   server.scm conf
0130: 69 67 66 2e 73 63 6d 20 5c 0a 20 20 20 64 62 2e  igf.scm \.   db.
0140: 73 63 6d 20 6b 65 79 73 2e 73 63 6d 20 6d 61 72  scm keys.scm mar
0150: 67 73 2e 73 63 6d 20 6d 65 67 61 74 65 73 74 2d  gs.scm megatest-
0160: 76 65 72 73 69 6f 6e 2e 73 63 6d 20 5c 0a 20 20  version.scm \.  
0170: 20 70 72 6f 63 65 73 73 2e 73 63 6d 20 72 75 6e   process.scm run
0180: 73 2e 73 63 6d 20 74 61 73 6b 73 2e 73 63 6d 20  s.scm tasks.scm 
0190: 74 65 73 74 73 2e 73 63 6d 20 67 65 6e 65 78 61  tests.scm genexa
01a0: 6d 70 6c 65 2e 73 63 6d 20 5c 0a 20 20 20 68 74  mple.scm \.   ht
01b0: 74 70 2d 74 72 61 6e 73 70 6f 72 74 2e 73 63 6d  tp-transport.scm
01c0: 20 66 69 6c 65 64 62 2e 73 63 6d 20 5c 0a 20 20   filedb.scm \.  
01d0: 20 63 6c 69 65 6e 74 2e 73 63 6d 20 73 79 6e 63   client.scm sync
01e0: 68 61 73 68 2e 73 63 6d 20 64 61 65 6d 6f 6e 2e  hash.scm daemon.
01f0: 73 63 6d 20 6d 74 2e 73 63 6d 20 5c 0a 20 20 20  scm mt.scm \.   
0200: 65 7a 73 74 65 70 73 2e 73 63 6d 20 6c 6f 63 6b  ezsteps.scm lock
0210: 2d 71 75 65 75 65 2e 73 63 6d 20 73 64 62 2e 73  -queue.scm sdb.s
0220: 63 6d 20 5c 0a 20 20 20 72 6d 74 2e 73 63 6d 20  cm \.   rmt.scm 
0230: 61 70 69 2e 73 63 6d 20 74 64 62 2e 73 63 6d 20  api.scm tdb.scm 
0240: 72 70 63 2d 74 72 61 6e 73 70 6f 72 74 2e 73 63  rpc-transport.sc
0250: 6d 20 5c 0a 20 20 20 70 6f 72 74 6c 6f 67 67 65  m \.   portlogge
0260: 72 2e 73 63 6d 20 61 72 63 68 69 76 65 2e 73 63  r.scm archive.sc
0270: 6d 20 65 6e 76 2e 73 63 6d 0a 0a 23 20 45 67 67  m env.scm..# Egg
0280: 73 20 74 6f 20 69 6e 73 74 61 6c 6c 20 28 73 74  s to install (st
0290: 72 61 69 67 68 74 66 6f 72 77 61 72 64 20 6f 6e  raightforward on
02a0: 65 73 29 0a 45 47 47 53 3d 6d 61 74 63 68 61 62  es).EGGS=matchab
02b0: 6c 65 20 72 65 61 64 6c 69 6e 65 20 61 70 72 6f  le readline apro
02c0: 70 6f 73 20 62 61 73 65 36 34 20 72 65 67 65 78  pos base64 regex
02d0: 2d 6c 69 74 65 72 61 6c 73 20 66 6f 72 6d 61 74  -literals format
02e0: 20 72 65 67 65 78 2d 63 61 73 65 20 74 65 73 74   regex-case test
02f0: 20 63 6f 6f 70 73 20 74 72 61 63 65 20 63 73 76   coops trace csv
0300: 20 5c 0a 64 6f 74 2d 6c 6f 63 6b 69 6e 67 20 70   \.dot-locking p
0310: 6f 73 69 78 2d 75 74 69 6c 73 20 70 6f 73 69 78  osix-utils posix
0320: 2d 65 78 74 72 61 73 20 64 69 72 65 63 74 6f 72  -extras director
0330: 79 2d 75 74 69 6c 73 20 68 6f 73 74 69 6e 66 6f  y-utils hostinfo
0340: 20 74 63 70 2d 73 65 72 76 65 72 20 72 70 63 20   tcp-server rpc 
0350: 63 73 76 2d 78 6d 6c 20 66 6d 74 20 5c 0a 6a 73  csv-xml fmt \.js
0360: 6f 6e 20 6d 64 35 20 61 77 66 75 6c 20 68 74 74  on md5 awful htt
0370: 70 2d 63 6c 69 65 6e 74 20 73 70 69 66 66 79 20  p-client spiffy 
0380: 75 72 69 2d 63 6f 6d 6d 6f 6e 20 69 6e 74 61 72  uri-common intar
0390: 77 65 62 20 73 70 69 66 66 79 2d 72 65 71 75 65  web spiffy-reque
03a0: 73 74 2d 76 61 72 73 20 5c 0a 73 70 69 66 66 79  st-vars \.spiffy
03b0: 2d 64 69 72 65 63 74 6f 72 79 2d 6c 69 73 74 69  -directory-listi
03c0: 6e 67 20 73 73 61 78 20 73 78 6d 6c 2d 73 65 72  ng ssax sxml-ser
03d0: 69 61 6c 69 7a 65 72 20 73 78 6d 6c 2d 6d 6f 64  ializer sxml-mod
03e0: 69 66 69 63 61 74 69 6f 6e 73 20 69 75 70 20 63  ifications iup c
03f0: 61 6e 76 61 73 2d 64 72 61 77 20 73 71 6c 69 74  anvas-draw sqlit
0400: 65 33 0a 0a 47 55 49 53 52 43 46 20 20 3d 20 64  e3..GUISRCF  = d
0410: 61 73 68 62 6f 61 72 64 2d 74 65 73 74 73 2e 73  ashboard-tests.s
0420: 63 6d 20 64 61 73 68 62 6f 61 72 64 2d 67 75 69  cm dashboard-gui
0430: 6d 6f 6e 69 74 6f 72 2e 73 63 6d 20 67 75 74 69  monitor.scm guti
0440: 6c 73 2e 73 63 6d 20 64 63 6f 6d 6d 6f 6e 2e 73  ls.scm dcommon.s
0450: 63 6d 20 74 72 65 65 2e 73 63 6d 20 76 67 2e 73  cm tree.scm vg.s
0460: 63 6d 0a 0a 4f 46 49 4c 45 53 20 20 20 3d 20 24  cm..OFILES   = $
0470: 28 53 52 43 46 49 4c 45 53 3a 25 2e 73 63 6d 3d  (SRCFILES:%.scm=
0480: 25 2e 6f 29 0a 47 4f 46 49 4c 45 53 20 20 3d 20  %.o).GOFILES  = 
0490: 24 28 47 55 49 53 52 43 46 3a 25 2e 73 63 6d 3d  $(GUISRCF:%.scm=
04a0: 25 2e 6f 29 0a 0a 41 44 54 4c 53 43 52 3d 6d 74  %.o)..ADTLSCR=mt
04b0: 5f 6c 61 73 74 73 74 65 70 20 6d 74 5f 72 75 6e  _laststep mt_run
04c0: 73 74 65 70 20 6d 74 5f 65 7a 73 74 65 70 0a 48  step mt_ezstep.H
04d0: 45 4c 50 45 52 53 3d 24 28 61 64 64 70 72 65 66  ELPERS=$(addpref
04e0: 69 78 20 24 28 50 52 45 46 49 58 29 2f 62 69 6e  ix $(PREFIX)/bin
04f0: 2f 2c 24 28 41 44 54 4c 53 43 52 29 29 0a 44 45  /,$(ADTLSCR)).DE
0500: 50 4c 4f 59 48 45 4c 50 45 52 53 3d 24 28 61 64  PLOYHELPERS=$(ad
0510: 64 70 72 65 66 69 78 20 64 65 70 6c 6f 79 74 61  dprefix deployta
0520: 72 67 2f 2c 24 28 41 44 54 4c 53 43 52 29 29 0a  rg/,$(ADTLSCR)).
0530: 4d 54 45 53 54 48 41 53 48 3d 24 28 73 68 65 6c  MTESTHASH=$(shel
0540: 6c 20 66 6f 73 73 69 6c 20 69 6e 66 6f 7c 67 72  l fossil info|gr
0550: 65 70 20 63 68 65 63 6b 6f 75 74 3a 7c 20 61 77  ep checkout:| aw
0560: 6b 20 27 7b 70 72 69 6e 74 20 24 24 32 7d 27 29  k '{print $$2}')
0570: 0a 0a 43 53 49 50 41 54 48 3d 24 28 73 68 65 6c  ..CSIPATH=$(shel
0580: 6c 20 77 68 69 63 68 20 63 73 69 29 0a 43 4b 50  l which csi).CKP
0590: 41 54 48 3d 24 28 73 68 65 6c 6c 20 64 69 72 6e  ATH=$(shell dirn
05a0: 61 6d 65 20 24 28 73 68 65 6c 6c 20 64 69 72 6e  ame $(shell dirn
05b0: 61 6d 65 20 24 28 43 53 49 50 41 54 48 29 29 29  ame $(CSIPATH)))
05c0: 0a 23 20 41 52 43 48 53 54 52 3d 24 28 73 68 65  .# ARCHSTR=$(she
05d0: 6c 6c 20 75 6e 61 6d 65 20 2d 6d 29 5f 24 28 73  ll uname -m)_$(s
05e0: 68 65 6c 6c 20 75 6e 61 6d 65 20 2d 72 29 0a 23  hell uname -r).#
05f0: 20 42 41 53 48 5f 4d 41 43 48 54 59 50 45 3d 24   BASH_MACHTYPE=$
0600: 28 73 68 65 6c 6c 20 62 61 73 68 20 2d 63 20 22  (shell bash -c "
0610: 65 63 68 6f 20 5c 24 24 4d 41 43 48 54 59 50 45  echo \$$MACHTYPE
0620: 22 29 0a 23 20 41 52 43 48 53 54 52 3d 24 28 42  ").# ARCHSTR=$(B
0630: 41 53 48 5f 4d 41 43 48 54 59 50 45 29 5f 24 28  ASH_MACHTYPE)_$(
0640: 73 68 65 6c 6c 20 6c 73 62 5f 72 65 6c 65 61 73  shell lsb_releas
0650: 65 20 2d 73 72 29 0a 41 52 43 48 53 54 52 3d 24  e -sr).ARCHSTR=$
0660: 28 73 68 65 6c 6c 20 6c 73 62 5f 72 65 6c 65 61  (shell lsb_relea
0670: 73 65 20 2d 73 72 29 0a 23 20 41 52 43 48 53 54  se -sr).# ARCHST
0680: 52 3d 24 28 73 68 65 6c 6c 20 62 61 73 68 20 2d  R=$(shell bash -
0690: 63 20 22 65 63 68 6f 20 5c 24 24 4d 41 43 48 54  c "echo \$$MACHT
06a0: 59 50 45 22 29 0a 0a 50 4e 47 46 49 4c 45 53 20  YPE")..PNGFILES 
06b0: 3d 20 24 28 73 68 65 6c 6c 20 63 64 20 64 6f 63  = $(shell cd doc
06c0: 73 2f 6d 61 6e 75 61 6c 3b 6c 73 20 2a 70 6e 67  s/manual;ls *png
06d0: 29 0a 0a 61 6c 6c 20 3a 20 24 28 50 52 45 46 49  )..all : $(PREFI
06e0: 58 29 2f 62 69 6e 2f 2e 24 28 41 52 43 48 53 54  X)/bin/.$(ARCHST
06f0: 52 29 20 6d 74 65 73 74 20 64 62 6f 61 72 64 20  R) mtest dboard 
0700: 0a 0a 6d 74 65 73 74 3a 20 24 28 4f 46 49 4c 45  ..mtest: $(OFILE
0710: 53 29 20 72 65 61 64 6c 69 6e 65 2d 66 69 78 2e  S) readline-fix.
0720: 73 63 6d 20 6d 65 67 61 74 65 73 74 2e 6f 0a 09  scm megatest.o..
0730: 63 73 63 20 24 28 43 53 43 4f 50 54 53 29 20 24  csc $(CSCOPTS) $
0740: 28 4f 46 49 4c 45 53 29 20 6d 65 67 61 74 65 73  (OFILES) megates
0750: 74 2e 6f 20 2d 6f 20 6d 74 65 73 74 0a 0a 64 62  t.o -o mtest..db
0760: 6f 61 72 64 20 3a 20 24 28 4f 46 49 4c 45 53 29  oard : $(OFILES)
0770: 20 24 28 47 4f 46 49 4c 45 53 29 20 64 61 73 68   $(GOFILES) dash
0780: 62 6f 61 72 64 2e 73 63 6d 0a 09 63 73 63 20 24  board.scm..csc $
0790: 28 43 53 43 4f 50 54 53 29 20 24 28 4f 46 49 4c  (CSCOPTS) $(OFIL
07a0: 45 53 29 20 64 61 73 68 62 6f 61 72 64 2e 73 63  ES) dashboard.sc
07b0: 6d 20 24 28 47 4f 46 49 4c 45 53 29 20 2d 6f 20  m $(GOFILES) -o 
07c0: 64 62 6f 61 72 64 0a 0a 6e 64 62 6f 61 72 64 20  dboard..ndboard 
07d0: 3a 20 6e 65 77 64 61 73 68 62 6f 61 72 64 2e 73  : newdashboard.s
07e0: 63 6d 20 24 28 4f 46 49 4c 45 53 29 20 24 28 47  cm $(OFILES) $(G
07f0: 4f 46 49 4c 45 53 29 0a 09 63 73 63 20 24 28 43  OFILES)..csc $(C
0800: 53 43 4f 50 54 53 29 20 24 28 4f 46 49 4c 45 53  SCOPTS) $(OFILES
0810: 29 20 24 28 47 4f 46 49 4c 45 53 29 20 6e 65 77  ) $(GOFILES) new
0820: 64 61 73 68 62 6f 61 72 64 2e 73 63 6d 20 2d 6f  dashboard.scm -o
0830: 20 6e 64 62 6f 61 72 64 0a 0a 23 20 69 6e 73 74   ndboard..# inst
0840: 61 6c 6c 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f  all documentatio
0850: 6e 20 74 6f 20 24 28 50 52 45 46 49 58 29 2f 64  n to $(PREFIX)/d
0860: 6f 63 73 0a 23 20 44 4f 45 53 20 4e 4f 54 20 52  ocs.# DOES NOT R
0870: 45 42 55 49 4c 44 20 44 4f 43 53 0a 23 0a 24 28  EBUILD DOCS.#.$(
0880: 50 52 45 46 49 58 29 2f 73 68 61 72 65 2f 64 6f  PREFIX)/share/do
0890: 63 73 2f 6d 65 67 61 74 65 73 74 5f 6d 61 6e 75  cs/megatest_manu
08a0: 61 6c 2e 68 74 6d 6c 20 3a 20 64 6f 63 73 2f 6d  al.html : docs/m
08b0: 61 6e 75 61 6c 2f 6d 65 67 61 74 65 73 74 5f 6d  anual/megatest_m
08c0: 61 6e 75 61 6c 2e 68 74 6d 6c 0a 09 6d 6b 64 69  anual.html..mkdi
08d0: 72 20 2d 70 20 24 28 50 52 45 46 49 58 29 2f 73  r -p $(PREFIX)/s
08e0: 68 61 72 65 2f 64 6f 63 73 0a 09 24 28 49 4e 53  hare/docs..$(INS
08f0: 54 41 4c 4c 29 20 64 6f 63 73 2f 6d 61 6e 75 61  TALL) docs/manua
0900: 6c 2f 6d 65 67 61 74 65 73 74 5f 6d 61 6e 75 61  l/megatest_manua
0910: 6c 2e 68 74 6d 6c 20 24 28 50 52 45 46 49 58 29  l.html $(PREFIX)
0920: 2f 73 68 61 72 65 2f 64 6f 63 73 2f 6d 65 67 61  /share/docs/mega
0930: 74 65 73 74 5f 6d 61 6e 75 61 6c 2e 68 74 6d 6c  test_manual.html
0940: 0a 09 66 6f 72 20 70 6e 67 20 69 6e 20 24 28 50  ..for png in $(P
0950: 4e 47 46 49 4c 45 53 29 3b 64 6f 20 24 28 49 4e  NGFILES);do $(IN
0960: 53 54 41 4c 4c 29 20 64 6f 63 73 2f 6d 61 6e 75  STALL) docs/manu
0970: 61 6c 2f 24 24 70 6e 67 20 24 28 50 52 45 46 49  al/$$png $(PREFI
0980: 58 29 2f 73 68 61 72 65 2f 64 6f 63 73 2f 24 24  X)/share/docs/$$
0990: 70 6e 67 3b 64 6f 6e 65 0a 0a 23 6d 75 6c 74 69  png;done..#multi
09a0: 2d 64 62 6f 61 72 64 20 3a 20 6d 75 6c 74 69 2d  -dboard : multi-
09b0: 64 62 6f 61 72 64 2e 73 63 6d 20 24 28 4f 46 49  dboard.scm $(OFI
09c0: 4c 45 53 29 20 24 28 47 4f 46 49 4c 45 53 29 0a  LES) $(GOFILES).
09d0: 23 09 63 73 63 20 24 28 43 53 43 4f 50 54 53 29  #.csc $(CSCOPTS)
09e0: 20 24 28 4f 46 49 4c 45 53 29 20 24 28 47 4f 46   $(OFILES) $(GOF
09f0: 49 4c 45 53 29 20 6d 75 6c 74 69 2d 64 62 6f 61  ILES) multi-dboa
0a00: 72 64 2e 73 63 6d 20 2d 6f 20 6d 75 6c 74 69 2d  rd.scm -o multi-
0a10: 64 62 6f 61 72 64 0a 0a 23 20 0a 23 20 24 28 50  dboard..# .# $(P
0a20: 52 45 46 49 58 29 2f 62 69 6e 2f 72 65 76 74 61  REFIX)/bin/revta
0a30: 67 66 73 6c 20 3a 20 75 74 69 6c 73 2f 72 65 76  gfsl : utils/rev
0a40: 74 61 67 66 73 6c 2e 73 63 6d 0a 23 09 63 73 63  tagfsl.scm.#.csc
0a50: 20 75 74 69 6c 73 2f 72 65 76 74 61 67 66 73 6c   utils/revtagfsl
0a60: 2e 73 63 6d 20 2d 6f 20 24 28 50 52 45 46 49 58  .scm -o $(PREFIX
0a70: 29 2f 62 69 6e 2f 72 65 76 74 61 67 66 73 6c 0a  )/bin/revtagfsl.
0a80: 0a 23 20 53 70 65 63 69 61 6c 20 64 65 70 65 6e  .# Special depen
0a90: 64 65 6e 63 69 65 73 20 66 6f 72 20 74 68 65 20  dencies for the 
0aa0: 69 6e 63 6c 75 64 65 73 0a 74 65 73 74 73 2e 6f  includes.tests.o
0ab0: 20 64 62 2e 6f 20 6c 61 75 6e 63 68 2e 6f 20 72   db.o launch.o r
0ac0: 75 6e 73 2e 6f 20 64 61 73 68 62 6f 61 72 64 2d  uns.o dashboard-
0ad0: 74 65 73 74 73 2e 6f 20 64 61 73 68 62 6f 61 72  tests.o dashboar
0ae0: 64 2d 67 75 69 6d 6f 6e 69 74 6f 72 2e 6f 20 64  d-guimonitor.o d
0af0: 61 73 68 62 6f 61 72 64 2d 6d 61 69 6e 2e 6f 20  ashboard-main.o 
0b00: 6d 6f 6e 69 74 6f 72 2e 6f 20 64 61 73 68 62 6f  monitor.o dashbo
0b10: 61 72 64 2e 6f 20 20 5c 0a 61 72 63 68 69 76 65  ard.o  \.archive
0b20: 2e 6f 20 6d 65 67 61 74 65 73 74 2e 6f 20 3a 20  .o megatest.o : 
0b30: 64 62 5f 72 65 63 6f 72 64 73 2e 73 63 6d 0a 74  db_records.scm.t
0b40: 65 73 74 73 2e 6f 20 72 75 6e 73 2e 6f 20 64 61  ests.o runs.o da
0b50: 73 68 62 6f 61 72 64 2e 6f 20 64 61 73 68 62 6f  shboard.o dashbo
0b60: 61 72 64 2d 74 65 73 74 73 2e 6f 20 64 61 73 68  ard-tests.o dash
0b70: 62 6f 61 72 64 2d 6d 61 69 6e 2e 6f 20 20 3a 20  board-main.o  : 
0b80: 72 75 6e 5f 72 65 63 6f 72 64 73 2e 73 63 6d 0a  run_records.scm.
0b90: 64 62 2e 6f 20 65 7a 73 74 65 70 73 2e 6f 20 6b  db.o ezsteps.o k
0ba0: 65 79 73 2e 6f 20 6c 61 75 6e 63 68 2e 6f 20 6d  eys.o launch.o m
0bb0: 65 67 61 74 65 73 74 2e 6f 20 6d 6f 6e 69 74 6f  egatest.o monito
0bc0: 72 2e 6f 20 72 75 6e 73 2d 66 6f 72 2d 72 65 66  r.o runs-for-ref
0bd0: 2e 6f 20 72 75 6e 73 2e 6f 20 74 65 73 74 73 2e  .o runs.o tests.
0be0: 6f 20 3a 20 6b 65 79 5f 72 65 63 6f 72 64 73 2e  o : key_records.
0bf0: 73 63 6d 0a 74 65 73 74 73 2e 6f 20 74 61 73 6b  scm.tests.o task
0c00: 73 2e 6f 20 64 61 73 68 62 6f 61 72 64 2d 74 61  s.o dashboard-ta
0c10: 73 6b 73 2e 6f 20 3a 20 74 61 73 6b 5f 72 65 63  sks.o : task_rec
0c20: 6f 72 64 73 2e 73 63 6d 0a 72 75 6e 73 2e 6f 20  ords.scm.runs.o 
0c30: 3a 20 74 65 73 74 5f 72 65 63 6f 72 64 73 2e 73  : test_records.s
0c40: 63 6d 0a 6d 65 67 61 74 65 73 74 2e 6f 20 3a 20  cm.megatest.o : 
0c50: 6d 65 67 61 74 65 73 74 2d 66 6f 73 73 69 6c 2d  megatest-fossil-
0c60: 68 61 73 68 2e 73 63 6d 0a 72 6d 74 2e 73 63 6d  hash.scm.rmt.scm
0c70: 20 63 6c 69 65 6e 74 2e 73 63 6d 20 63 6f 6d 6d   client.scm comm
0c80: 6f 6e 2e 73 63 6d 20 63 6f 6e 66 69 67 66 2e 73  on.scm configf.s
0c90: 63 6d 20 64 61 73 68 62 6f 61 72 64 2d 67 75 69  cm dashboard-gui
0ca0: 6d 6f 6e 69 74 6f 72 2e 73 63 6d 20 64 61 73 68  monitor.scm dash
0cb0: 62 6f 61 72 64 2d 74 65 73 74 73 2e 73 63 6d 20  board-tests.scm 
0cc0: 64 61 73 68 62 6f 61 72 64 2e 73 63 6d 20 64 62  dashboard.scm db
0cd0: 2e 73 63 6d 20 64 63 6f 6d 6d 6f 6e 2e 73 63 6d  .scm dcommon.scm
0ce0: 20 65 7a 73 74 65 70 73 2e 73 63 6d 20 66 73 2d   ezsteps.scm fs-
0cf0: 74 72 61 6e 73 70 6f 72 74 2e 73 63 6d 20 68 74  transport.scm ht
0d00: 74 70 2d 74 72 61 6e 73 70 6f 72 74 2e 73 63 6d  tp-transport.scm
0d10: 20 69 6e 64 65 78 2d 74 72 65 65 2e 73 63 6d 20   index-tree.scm 
0d20: 69 74 65 6d 73 2e 73 63 6d 20 6b 65 79 73 2e 73  items.scm keys.s
0d30: 63 6d 20 6c 61 75 6e 63 68 2e 73 63 6d 20 6d 65  cm launch.scm me
0d40: 67 61 74 65 73 74 2e 73 63 6d 20 6d 6f 6e 69 74  gatest.scm monit
0d50: 6f 72 2e 73 63 6d 20 6d 74 2e 73 63 6d 20 6e 65  or.scm mt.scm ne
0d60: 77 64 61 73 68 62 6f 61 72 64 2e 73 63 6d 20 72  wdashboard.scm r
0d70: 75 6e 63 6f 6e 66 69 67 2e 73 63 6d 20 72 75 6e  unconfig.scm run
0d80: 73 2e 73 63 6d 20 73 65 72 76 65 72 2e 73 63 6d  s.scm server.scm
0d90: 20 74 64 62 2e 73 63 6d 20 74 65 73 74 73 2e 73   tdb.scm tests.s
0da0: 63 6d 20 74 72 65 65 2e 73 63 6d 20 3a 20 63 6f  cm tree.scm : co
0db0: 6d 6d 6f 6e 5f 72 65 63 6f 72 64 73 2e 73 63 6d  mmon_records.scm
0dc0: 20 72 70 63 2d 74 72 61 6e 73 70 6f 72 74 2e 73   rpc-transport.s
0dd0: 63 6d 0a 63 6f 6d 6d 6f 6e 5f 72 65 63 6f 72 64  cm.common_record
0de0: 73 2e 73 63 6d 20 3a 20 61 6c 74 64 62 2e 73 63  s.scm : altdb.sc
0df0: 6d 0a 76 67 2e 6f 20 64 61 73 68 62 6f 61 72 64  m.vg.o dashboard
0e00: 2e 6f 20 3a 20 76 67 5f 72 65 63 6f 72 64 73 2e  .o : vg_records.
0e10: 73 63 6d 0a 64 63 6f 6d 6d 6f 6e 2e 6f 20 3a 20  scm.dcommon.o : 
0e20: 72 75 6e 5f 72 65 63 6f 72 64 73 2e 73 63 6d 0a  run_records.scm.
0e30: 23 20 54 65 6d 70 6f 72 61 72 79 20 77 68 69 6c  # Temporary whil
0e40: 65 20 74 72 61 6e 73 69 74 69 6f 6e 69 6e 67 20  e transitioning 
0e50: 74 6f 20 6e 65 77 20 72 6f 75 74 69 6e 65 0a 23  to new routine.#
0e60: 20 72 75 6e 73 2e 6f 20 3a 20 72 75 6e 2d 74 65   runs.o : run-te
0e70: 73 74 73 2d 71 75 65 75 65 2d 63 6c 61 73 73 69  sts-queue-classi
0e80: 63 2e 73 63 6d 20 20 72 75 6e 2d 74 65 73 74 73  c.scm  run-tests
0e90: 2d 71 75 65 75 65 2d 6e 65 77 2e 73 63 6d 0a 0a  -queue-new.scm..
0ea0: 6d 65 67 61 74 65 73 74 2d 66 6f 73 73 69 6c 2d  megatest-fossil-
0eb0: 68 61 73 68 2e 73 63 6d 20 3a 20 24 28 53 52 43  hash.scm : $(SRC
0ec0: 46 49 4c 45 53 29 20 6d 65 67 61 74 65 73 74 2e  FILES) megatest.
0ed0: 73 63 6d 20 2a 5f 72 65 63 6f 72 64 73 2e 73 63  scm *_records.sc
0ee0: 6d 0a 09 65 63 68 6f 20 22 28 64 65 66 69 6e 65  m..echo "(define
0ef0: 20 6d 65 67 61 74 65 73 74 2d 66 6f 73 73 69 6c   megatest-fossil
0f00: 2d 68 61 73 68 20 5c 22 24 28 4d 54 45 53 54 48  -hash \"$(MTESTH
0f10: 41 53 48 29 5c 22 29 22 20 3e 20 6d 65 67 61 74  ASH)\")" > megat
0f20: 65 73 74 2d 66 6f 73 73 69 6c 2d 68 61 73 68 2e  est-fossil-hash.
0f30: 6e 65 77 0a 09 69 66 20 21 20 64 69 66 66 20 2d  new..if ! diff -
0f40: 71 20 6d 65 67 61 74 65 73 74 2d 66 6f 73 73 69  q megatest-fossi
0f50: 6c 2d 68 61 73 68 2e 6e 65 77 20 6d 65 67 61 74  l-hash.new megat
0f60: 65 73 74 2d 66 6f 73 73 69 6c 2d 68 61 73 68 2e  est-fossil-hash.
0f70: 73 63 6d 20 3b 20 74 68 65 6e 20 65 63 68 6f 20  scm ; then echo 
0f80: 63 6f 70 79 69 6e 67 20 2e 6e 65 77 20 74 6f 20  copying .new to 
0f90: 2e 73 63 6d 3b 63 70 20 2d 66 20 6d 65 67 61 74  .scm;cp -f megat
0fa0: 65 73 74 2d 66 6f 73 73 69 6c 2d 68 61 73 68 2e  est-fossil-hash.
0fb0: 6e 65 77 20 6d 65 67 61 74 65 73 74 2d 66 6f 73  new megatest-fos
0fc0: 73 69 6c 2d 68 61 73 68 2e 73 63 6d 3b 66 69 0a  sil-hash.scm;fi.
0fd0: 0a 24 28 4f 46 49 4c 45 53 29 20 24 28 47 4f 46  .$(OFILES) $(GOF
0fe0: 49 4c 45 53 29 20 3a 20 63 6f 6d 6d 6f 6e 5f 72  ILES) : common_r
0ff0: 65 63 6f 72 64 73 2e 73 63 6d 20 0a 0a 25 2e 6f  ecords.scm ..%.o
1000: 20 3a 20 25 2e 73 63 6d 0a 09 63 73 63 20 24 28   : %.scm..csc $(
1010: 43 53 43 4f 50 54 53 29 20 2d 63 20 24 3c 0a 0a  CSCOPTS) -c $<..
1020: 24 28 50 52 45 46 49 58 29 2f 62 69 6e 2f 2e 24  $(PREFIX)/bin/.$
1030: 28 41 52 43 48 53 54 52 29 2f 6d 74 65 73 74 20  (ARCHSTR)/mtest 
1040: 3a 20 6d 74 65 73 74 20 75 74 69 6c 73 2f 6d 6b  : mtest utils/mk
1050: 5f 77 72 61 70 70 65 72 0a 09 40 65 63 68 6f 20  _wrapper..@echo 
1060: 49 6e 73 74 61 6c 6c 69 6e 67 20 74 6f 20 50 52  Installing to PR
1070: 45 46 49 58 3d 24 28 50 52 45 46 49 58 29 0a 09  EFIX=$(PREFIX)..
1080: 24 28 49 4e 53 54 41 4c 4c 29 20 6d 74 65 73 74  $(INSTALL) mtest
1090: 20 24 28 50 52 45 46 49 58 29 2f 62 69 6e 2f 2e   $(PREFIX)/bin/.
10a0: 24 28 41 52 43 48 53 54 52 29 2f 6d 74 65 73 74  $(ARCHSTR)/mtest
10b0: 0a 09 75 74 69 6c 73 2f 6d 6b 5f 77 72 61 70 70  ..utils/mk_wrapp
10c0: 65 72 20 24 28 50 52 45 46 49 58 29 20 6d 74 65  er $(PREFIX) mte
10d0: 73 74 20 24 28 50 52 45 46 49 58 29 2f 62 69 6e  st $(PREFIX)/bin
10e0: 2f 6d 65 67 61 74 65 73 74 0a 09 63 68 6d 6f 64  /megatest..chmod
10f0: 20 61 2b 78 20 24 28 50 52 45 46 49 58 29 2f 62   a+x $(PREFIX)/b
1100: 69 6e 2f 6d 65 67 61 74 65 73 74 0a 0a 24 28 50  in/megatest..$(P
1110: 52 45 46 49 58 29 2f 62 69 6e 2f 2e 24 28 41 52  REFIX)/bin/.$(AR
1120: 43 48 53 54 52 29 2f 6e 64 62 6f 61 72 64 20 3a  CHSTR)/ndboard :
1130: 20 6e 64 62 6f 61 72 64 0a 09 24 28 49 4e 53 54   ndboard..$(INST
1140: 41 4c 4c 29 20 6e 64 62 6f 61 72 64 20 24 28 50  ALL) ndboard $(P
1150: 52 45 46 49 58 29 2f 62 69 6e 2f 2e 24 28 41 52  REFIX)/bin/.$(AR
1160: 43 48 53 54 52 29 2f 6e 64 62 6f 61 72 64 0a 0a  CHSTR)/ndboard..
1170: 24 28 50 52 45 46 49 58 29 2f 62 69 6e 2f 6e 65  $(PREFIX)/bin/ne
1180: 77 64 61 73 68 62 6f 61 72 64 20 3a 20 24 28 50  wdashboard : $(P
1190: 52 45 46 49 58 29 2f 62 69 6e 2f 2e 24 28 41 52  REFIX)/bin/.$(AR
11a0: 43 48 53 54 52 29 2f 6e 64 62 6f 61 72 64 20 75  CHSTR)/ndboard u
11b0: 74 69 6c 73 2f 6d 6b 5f 77 72 61 70 70 65 72 0a  tils/mk_wrapper.
11c0: 09 75 74 69 6c 73 2f 6d 6b 5f 77 72 61 70 70 65  .utils/mk_wrappe
11d0: 72 20 24 28 50 52 45 46 49 58 29 20 6e 64 62 6f  r $(PREFIX) ndbo
11e0: 61 72 64 20 24 28 50 52 45 46 49 58 29 2f 62 69  ard $(PREFIX)/bi
11f0: 6e 2f 6e 65 77 64 61 73 68 62 6f 61 72 64 0a 09  n/newdashboard..
1200: 63 68 6d 6f 64 20 61 2b 78 20 24 28 50 52 45 46  chmod a+x $(PREF
1210: 49 58 29 2f 62 69 6e 2f 6e 65 77 64 61 73 68 62  IX)/bin/newdashb
1220: 6f 61 72 64 0a 0a 23 24 28 50 52 45 46 49 58 29  oard..#$(PREFIX)
1230: 2f 62 69 6e 2f 2e 24 28 41 52 43 48 53 54 52 29  /bin/.$(ARCHSTR)
1240: 2f 6d 64 62 6f 61 72 64 20 3a 20 6d 75 6c 74 69  /mdboard : multi
1250: 2d 64 62 6f 61 72 64 0a 23 09 24 28 49 4e 53 54  -dboard.#.$(INST
1260: 41 4c 4c 29 20 6d 75 6c 74 69 2d 64 62 6f 61 72  ALL) multi-dboar
1270: 64 20 24 28 50 52 45 46 49 58 29 2f 62 69 6e 2f  d $(PREFIX)/bin/
1280: 2e 24 28 41 52 43 48 53 54 52 29 2f 6d 64 62 6f  .$(ARCHSTR)/mdbo
1290: 61 72 64 0a 0a 23 20 24 28 50 52 45 46 49 58 29  ard..# $(PREFIX)
12a0: 2f 62 69 6e 2f 6d 64 62 6f 61 72 64 20 3a 20 24  /bin/mdboard : $
12b0: 28 50 52 45 46 49 58 29 2f 62 69 6e 2f 2e 24 28  (PREFIX)/bin/.$(
12c0: 41 52 43 48 53 54 52 29 2f 6d 64 62 6f 61 72 64  ARCHSTR)/mdboard
12d0: 20 20 75 74 69 6c 73 2f 6d 6b 5f 77 72 61 70 70    utils/mk_wrapp
12e0: 65 72 0a 23 20 09 75 74 69 6c 73 2f 6d 6b 5f 77  er.# .utils/mk_w
12f0: 72 61 70 70 65 72 20 24 28 50 52 45 46 49 58 29  rapper $(PREFIX)
1300: 20 6d 64 62 6f 61 72 64 20 24 28 50 52 45 46 49   mdboard $(PREFI
1310: 58 29 2f 62 69 6e 2f 6d 64 62 6f 61 72 64 0a 23  X)/bin/mdboard.#
1320: 20 09 63 68 6d 6f 64 20 61 2b 78 20 24 28 50 52   .chmod a+x $(PR
1330: 45 46 49 58 29 2f 62 69 6e 2f 6d 64 62 6f 61 72  EFIX)/bin/mdboar
1340: 64 0a 0a 23 20 24 28 48 45 4c 50 45 52 53 29 20  d..# $(HELPERS) 
1350: 3a 20 75 74 69 6c 73 2f 25 0a 23 20 09 24 28 49  : utils/%.# .$(I
1360: 4e 53 54 41 4c 4c 29 20 24 3c 20 24 40 0a 23 20  NSTALL) $< $@.# 
1370: 09 63 68 6d 6f 64 20 61 2b 78 20 24 40 0a 0a 24  .chmod a+x $@..$
1380: 28 50 52 45 46 49 58 29 2f 62 69 6e 2f 6d 74 5f  (PREFIX)/bin/mt_
1390: 6c 61 73 74 73 74 65 70 20 3a 20 75 74 69 6c 73  laststep : utils
13a0: 2f 6d 74 5f 6c 61 73 74 73 74 65 70 0a 09 24 28  /mt_laststep..$(
13b0: 49 4e 53 54 41 4c 4c 29 20 24 3c 20 24 40 0a 09  INSTALL) $< $@..
13c0: 63 68 6d 6f 64 20 61 2b 78 20 24 40 0a 0a 24 28  chmod a+x $@..$(
13d0: 50 52 45 46 49 58 29 2f 62 69 6e 2f 6d 74 5f 72  PREFIX)/bin/mt_r
13e0: 75 6e 73 74 65 70 20 3a 20 75 74 69 6c 73 2f 6d  unstep : utils/m
13f0: 74 5f 72 75 6e 73 74 65 70 0a 09 24 28 49 4e 53  t_runstep..$(INS
1400: 54 41 4c 4c 29 20 24 3c 20 24 40 0a 09 63 68 6d  TALL) $< $@..chm
1410: 6f 64 20 61 2b 78 20 24 40 0a 0a 24 28 50 52 45  od a+x $@..$(PRE
1420: 46 49 58 29 2f 62 69 6e 2f 6d 74 5f 65 7a 73 74  FIX)/bin/mt_ezst
1430: 65 70 20 3a 20 75 74 69 6c 73 2f 6d 74 5f 65 7a  ep : utils/mt_ez
1440: 73 74 65 70 0a 09 24 28 49 4e 53 54 41 4c 4c 29  step..$(INSTALL)
1450: 20 24 3c 20 24 40 0a 09 63 68 6d 6f 64 20 61 2b   $< $@..chmod a+
1460: 78 20 24 40 0a 0a 24 28 50 52 45 46 49 58 29 2f  x $@..$(PREFIX)/
1470: 62 69 6e 2f 6d 74 5f 78 74 65 72 6d 20 3a 20 75  bin/mt_xterm : u
1480: 74 69 6c 73 2f 6d 74 5f 78 74 65 72 6d 0a 09 24  tils/mt_xterm..$
1490: 28 49 4e 53 54 41 4c 4c 29 20 24 3c 20 24 40 0a  (INSTALL) $< $@.
14a0: 09 63 68 6d 6f 64 20 61 2b 78 20 24 40 0a 0a 24  .chmod a+x $@..$
14b0: 28 50 52 45 46 49 58 29 2f 62 69 6e 2f 6e 62 66  (PREFIX)/bin/nbf
14c0: 61 6b 65 20 3a 20 75 74 69 6c 73 2f 6e 62 66 61  ake : utils/nbfa
14d0: 6b 65 0a 09 24 28 49 4e 53 54 41 4c 4c 29 20 24  ke..$(INSTALL) $
14e0: 3c 20 24 40 0a 09 63 68 6d 6f 64 20 61 2b 78 20  < $@..chmod a+x 
14f0: 24 40 0a 0a 24 28 50 52 45 46 49 58 29 2f 62 69  $@..$(PREFIX)/bi
1500: 6e 2f 72 65 6d 72 75 6e 20 3a 20 75 74 69 6c 73  n/remrun : utils
1510: 2f 72 65 6d 72 75 6e 0a 09 24 28 49 4e 53 54 41  /remrun..$(INSTA
1520: 4c 4c 29 20 24 3c 20 24 40 0a 09 63 68 6d 6f 64  LL) $< $@..chmod
1530: 20 61 2b 78 20 24 40 0a 0a 24 28 50 52 45 46 49   a+x $@..$(PREFI
1540: 58 29 2f 62 69 6e 2f 76 69 65 77 73 63 72 65 65  X)/bin/viewscree
1550: 6e 20 3a 20 75 74 69 6c 73 2f 76 69 65 77 73 63  n : utils/viewsc
1560: 72 65 65 6e 0a 09 24 28 49 4e 53 54 41 4c 4c 29  reen..$(INSTALL)
1570: 20 24 3c 20 24 40 0a 09 63 68 6d 6f 64 20 61 2b   $< $@..chmod a+
1580: 78 20 24 40 0a 0a 24 28 50 52 45 46 49 58 29 2f  x $@..$(PREFIX)/
1590: 62 69 6e 2f 6e 62 66 69 6e 64 20 3a 20 75 74 69  bin/nbfind : uti
15a0: 6c 73 2f 6e 62 66 69 6e 64 0a 09 24 28 49 4e 53  ls/nbfind..$(INS
15b0: 54 41 4c 4c 29 20 24 3c 20 24 40 0a 09 63 68 6d  TALL) $< $@..chm
15c0: 6f 64 20 61 2b 78 20 24 40 0a 0a 24 28 50 52 45  od a+x $@..$(PRE
15d0: 46 49 58 29 2f 62 69 6e 2f 6c 6f 61 64 72 75 6e  FIX)/bin/loadrun
15e0: 6e 65 72 20 3a 20 75 74 69 6c 73 2f 6c 6f 61 64  ner : utils/load
15f0: 72 75 6e 6e 65 72 0a 09 24 28 49 4e 53 54 41 4c  runner..$(INSTAL
1600: 4c 29 20 24 3c 20 24 40 0a 09 63 68 6d 6f 64 20  L) $< $@..chmod 
1610: 61 2b 78 20 24 40 0a 0a 23 20 24 28 50 52 45 46  a+x $@..# $(PREF
1620: 49 58 29 2f 62 69 6e 2f 72 65 66 64 62 20 3a 20  IX)/bin/refdb : 
1630: 72 65 66 64 62 0a 23 20 09 24 28 49 4e 53 54 41  refdb.# .$(INSTA
1640: 4c 4c 29 20 24 3c 20 24 40 0a 23 20 09 63 68 6d  LL) $< $@.# .chm
1650: 6f 64 20 61 2b 78 20 24 40 0a 0a 64 65 70 6c 6f  od a+x $@..deplo
1660: 79 74 61 72 67 2f 6e 62 66 61 6b 65 20 3a 20 75  ytarg/nbfake : u
1670: 74 69 6c 73 2f 6e 62 66 61 6b 65 0a 09 24 28 49  tils/nbfake..$(I
1680: 4e 53 54 41 4c 4c 29 20 24 3c 20 24 40 0a 09 63  NSTALL) $< $@..c
1690: 68 6d 6f 64 20 61 2b 78 20 24 40 0a 0a 64 65 70  hmod a+x $@..dep
16a0: 6c 6f 79 74 61 72 67 2f 76 69 65 77 73 63 72 65  loytarg/viewscre
16b0: 65 6e 20 3a 20 75 74 69 6c 73 2f 76 69 65 77 73  en : utils/views
16c0: 63 72 65 65 6e 0a 09 24 28 49 4e 53 54 41 4c 4c  creen..$(INSTALL
16d0: 29 20 24 3c 20 24 40 0a 09 63 68 6d 6f 64 20 61  ) $< $@..chmod a
16e0: 2b 78 20 24 40 0a 0a 64 65 70 6c 6f 79 74 61 72  +x $@..deploytar
16f0: 67 2f 6e 62 66 69 6e 64 20 3a 20 75 74 69 6c 73  g/nbfind : utils
1700: 2f 6e 62 66 69 6e 64 0a 09 24 28 49 4e 53 54 41  /nbfind..$(INSTA
1710: 4c 4c 29 20 24 3c 20 24 40 0a 09 63 68 6d 6f 64  LL) $< $@..chmod
1720: 20 61 2b 78 20 24 40 0a 0a 23 20 69 6e 73 74 61   a+x $@..# insta
1730: 6c 6c 20 64 61 73 68 62 6f 61 72 64 20 61 73 20  ll dashboard as 
1740: 64 62 6f 61 72 64 20 73 6f 20 77 72 61 70 70 65  dboard so wrappe
1750: 72 20 73 63 72 69 70 74 20 63 61 6e 20 62 65 20  r script can be 
1760: 63 61 6c 6c 65 64 20 64 61 73 68 62 6f 61 72 64  called dashboard
1770: 0a 24 28 50 52 45 46 49 58 29 2f 62 69 6e 2f 2e  .$(PREFIX)/bin/.
1780: 24 28 41 52 43 48 53 54 52 29 2f 64 62 6f 61 72  $(ARCHSTR)/dboar
1790: 64 20 3a 20 64 62 6f 61 72 64 20 24 28 46 49 4c  d : dboard $(FIL
17a0: 45 53 29 20 75 74 69 6c 73 2f 6d 6b 5f 77 72 61  ES) utils/mk_wra
17b0: 70 70 65 72 0a 09 75 74 69 6c 73 2f 6d 6b 5f 77  pper..utils/mk_w
17c0: 72 61 70 70 65 72 20 24 28 50 52 45 46 49 58 29  rapper $(PREFIX)
17d0: 20 64 62 6f 61 72 64 20 24 28 50 52 45 46 49 58   dboard $(PREFIX
17e0: 29 2f 62 69 6e 2f 64 61 73 68 62 6f 61 72 64 0a  )/bin/dashboard.
17f0: 09 63 68 6d 6f 64 20 61 2b 78 20 24 28 50 52 45  .chmod a+x $(PRE
1800: 46 49 58 29 2f 62 69 6e 2f 64 61 73 68 62 6f 61  FIX)/bin/dashboa
1810: 72 64 0a 09 24 28 49 4e 53 54 41 4c 4c 29 20 64  rd..$(INSTALL) d
1820: 62 6f 61 72 64 20 24 28 50 52 45 46 49 58 29 2f  board $(PREFIX)/
1830: 62 69 6e 2f 2e 24 28 41 52 43 48 53 54 52 29 2f  bin/.$(ARCHSTR)/
1840: 64 62 6f 61 72 64 0a 0a 69 6e 73 74 61 6c 6c 20  dboard..install 
1850: 3a 20 24 28 50 52 45 46 49 58 29 2f 62 69 6e 2f  : $(PREFIX)/bin/
1860: 2e 24 28 41 52 43 48 53 54 52 29 20 24 28 50 52  .$(ARCHSTR) $(PR
1870: 45 46 49 58 29 2f 62 69 6e 2f 2e 24 28 41 52 43  EFIX)/bin/.$(ARC
1880: 48 53 54 52 29 2f 6d 74 65 73 74 20 24 28 50 52  HSTR)/mtest $(PR
1890: 45 46 49 58 29 2f 62 69 6e 2f 6d 65 67 61 74 65  EFIX)/bin/megate
18a0: 73 74 20 5c 0a 20 20 20 20 20 20 20 20 20 20 24  st \.          $
18b0: 28 50 52 45 46 49 58 29 2f 62 69 6e 2f 2e 24 28  (PREFIX)/bin/.$(
18c0: 41 52 43 48 53 54 52 29 2f 64 62 6f 61 72 64 20  ARCHSTR)/dboard 
18d0: 24 28 50 52 45 46 49 58 29 2f 62 69 6e 2f 64 61  $(PREFIX)/bin/da
18e0: 73 68 62 6f 61 72 64 20 24 28 48 45 4c 50 45 52  shboard $(HELPER
18f0: 53 29 20 24 28 50 52 45 46 49 58 29 2f 62 69 6e  S) $(PREFIX)/bin
1900: 2f 6e 62 66 61 6b 65 20 5c 0a 09 20 20 24 28 50  /nbfake \..  $(P
1910: 52 45 46 49 58 29 2f 62 69 6e 2f 6e 62 66 69 6e  REFIX)/bin/nbfin
1920: 64 20 24 28 50 52 45 46 49 58 29 2f 62 69 6e 2f  d $(PREFIX)/bin/
1930: 6c 6f 61 64 72 75 6e 6e 65 72 20 24 28 50 52 45  loadrunner $(PRE
1940: 46 49 58 29 2f 62 69 6e 2f 76 69 65 77 73 63 72  FIX)/bin/viewscr
1950: 65 65 6e 20 24 28 50 52 45 46 49 58 29 2f 62 69  een $(PREFIX)/bi
1960: 6e 2f 6d 74 5f 78 74 65 72 6d 20 5c 0a 09 20 20  n/mt_xterm \..  
1970: 24 28 50 52 45 46 49 58 29 2f 73 68 61 72 65 2f  $(PREFIX)/share/
1980: 64 6f 63 73 2f 6d 65 67 61 74 65 73 74 5f 6d 61  docs/megatest_ma
1990: 6e 75 61 6c 2e 68 74 6d 6c 20 24 28 50 52 45 46  nual.html $(PREF
19a0: 49 58 29 2f 62 69 6e 2f 72 65 6d 72 75 6e 0a 0a  IX)/bin/remrun..
19b0: 24 28 50 52 45 46 49 58 29 2f 62 69 6e 2f 2e 24  $(PREFIX)/bin/.$
19c0: 28 41 52 43 48 53 54 52 29 20 3a 20 0a 09 6d 6b  (ARCHSTR) : ..mk
19d0: 64 69 72 20 2d 70 20 24 28 50 52 45 46 49 58 29  dir -p $(PREFIX)
19e0: 2f 62 69 6e 2f 2e 24 28 41 52 43 48 53 54 52 29  /bin/.$(ARCHSTR)
19f0: 0a 0a 74 65 73 74 3a 20 74 65 73 74 73 2f 74 65  ..test: tests/te
1a00: 73 74 73 2e 73 63 6d 0a 09 63 64 20 74 65 73 74  sts.scm..cd test
1a10: 73 3b 63 73 69 20 2d 49 20 2e 2e 20 2d 62 20 2d  s;csi -I .. -b -
1a20: 6e 20 74 65 73 74 73 2e 73 63 6d 0a 0a 65 78 74  n tests.scm..ext
1a30: 2d 74 65 73 74 73 2f 2e 66 73 6c 63 6b 6f 75 74  -tests/.fslckout
1a40: 20 3a 20 24 28 4d 54 51 41 5f 46 4f 53 53 49 4c   : $(MTQA_FOSSIL
1a50: 29 0a 09 6d 6b 64 69 72 20 2d 70 20 65 78 74 2d  )..mkdir -p ext-
1a60: 74 65 73 74 73 0a 09 63 64 20 65 78 74 2d 74 65  tests..cd ext-te
1a70: 73 74 73 3b 66 6f 73 73 69 6c 20 6f 70 65 6e 20  sts;fossil open 
1a80: 2d 2d 6e 65 73 74 65 64 20 24 28 4d 54 51 41 5f  --nested $(MTQA_
1a90: 46 4f 53 53 49 4c 29 0a 0a 24 28 4d 54 51 41 5f  FOSSIL)..$(MTQA_
1aa0: 46 4f 53 53 49 4c 29 20 3a 0a 09 66 6f 73 73 69  FOSSIL) :..fossi
1ab0: 6c 20 63 6c 6f 6e 65 20 68 74 74 70 73 3a 2f 2f  l clone https://
1ac0: 77 77 77 2e 6b 69 61 74 6f 61 2e 63 6f 6d 2f 66  www.kiatoa.com/f
1ad0: 6f 73 73 69 6c 73 2f 6d 65 67 61 74 65 73 74 5f  ossils/megatest_
1ae0: 71 61 20 24 28 4d 54 51 41 5f 46 4f 53 53 49 4c  qa $(MTQA_FOSSIL
1af0: 29 0a 0a 63 6c 65 61 6e 20 3a 20 0a 09 72 6d 20  )..clean : ..rm 
1b00: 2d 66 20 24 28 4f 46 49 4c 45 53 29 20 24 28 47  -f $(OFILES) $(G
1b10: 4f 46 49 4c 45 53 29 20 6d 65 67 61 74 65 73 74  OFILES) megatest
1b20: 20 64 62 6f 61 72 64 20 64 62 6f 61 72 64 2e 6f   dboard dboard.o
1b30: 20 6d 65 67 61 74 65 73 74 2e 6f 20 64 61 73 68   megatest.o dash
1b40: 62 6f 61 72 64 2e 6f 20 6d 65 67 61 74 65 73 74  board.o megatest
1b50: 2d 66 6f 73 73 69 6c 2d 68 61 73 68 2e 2a 20 61  -fossil-hash.* a
1b60: 6c 74 64 62 2e 73 63 6d 0a 0a 23 3d 3d 3d 3d 3d  ltdb.scm..#=====
1b70: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
1b80: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
1b90: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
1ba0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
1bb0: 3d 0a 23 20 4d 61 6b 65 20 74 68 65 20 72 65 63  =.# Make the rec
1bc0: 6f 72 64 73 20 66 69 6c 65 73 0a 23 3d 3d 3d 3d  ords files.#====
1bd0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
1be0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
1bf0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
1c00: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
1c10: 3d 3d 0a 0a 23 20 76 67 5f 72 65 63 6f 72 64 73  ==..# vg_records
1c20: 2e 73 63 6d 20 3a 20 72 65 63 6f 72 64 73 2e 73  .scm : records.s
1c30: 68 0a 23 09 2e 2f 72 65 63 6f 72 64 73 2e 73 68  h.#../records.sh
1c40: 0a 0a 23 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ..#=============
1c50: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
1c60: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
1c70: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
1c80: 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 23 20 44 65 70 6c  =========.# Depl
1c90: 6f 79 20 73 65 63 74 69 6f 6e 20 28 6e 6f 74 20  oy section (not 
1ca0: 63 6f 6d 70 6c 65 74 65 20 79 65 74 29 0a 23 3d  complete yet).#=
1cb0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
1cc0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
1cd0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
1ce0: 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  ================
1cf0: 3d 3d 3d 3d 3d 0a 0a 24 28 44 45 50 4c 4f 59 48  =====..$(DEPLOYH
1d00: 45 4c 50 45 52 53 29 20 3a 20 75 74 69 6c 73 2f  ELPERS) : utils/
1d10: 6d 74 5f 2a 0a 09 24 28 49 4e 53 54 41 4c 4c 29  mt_*..$(INSTALL)
1d20: 20 24 3c 20 24 40 0a 09 63 68 6d 6f 64 20 61 2b   $< $@..chmod a+
1d30: 58 20 24 40 0a 0a 64 65 70 6c 6f 79 74 61 72 67  X $@..deploytarg
1d40: 2f 61 70 72 6f 70 6f 73 2e 73 6f 20 3a 20 4d 61  /apropos.so : Ma
1d50: 6b 65 66 69 6c 65 0a 09 63 68 69 63 6b 65 6e 2d  kefile..chicken-
1d60: 69 6e 73 74 61 6c 6c 20 2d 70 20 64 65 70 6c 6f  install -p deplo
1d70: 79 74 61 72 67 20 2d 64 65 70 6c 6f 79 20 2d 6b  ytarg -deploy -k
1d80: 65 65 70 2d 69 6e 73 74 61 6c 6c 65 64 20 24 28  eep-installed $(
1d90: 45 47 47 53 29 0a 0a 23 09 66 6f 72 20 69 20 69  EGGS)..#.for i i
1da0: 6e 20 61 70 72 6f 70 6f 73 20 62 61 73 65 36 34  n apropos base64
1db0: 20 63 61 6e 76 61 73 2d 64 72 61 77 20 63 73 76   canvas-draw csv
1dc0: 2d 78 6d 6c 20 64 69 72 65 63 74 6f 72 79 2d 75  -xml directory-u
1dd0: 74 69 6c 73 20 64 6f 74 2d 6c 6f 63 6b 69 6e 67  tils dot-locking
1de0: 20 65 78 74 72 61 73 20 66 6d 74 20 66 6f 72 6d   extras fmt form
1df0: 61 74 20 68 6f 73 74 69 6e 66 6f 20 68 74 74 70  at hostinfo http
1e00: 2d 63 6c 69 65 6e 74 20 69 6e 74 61 72 77 65 62  -client intarweb
1e10: 20 6a 73 6f 6e 20 6d 64 35 20 6d 65 73 73 61 67   json md5 messag
1e20: 65 2d 64 69 67 65 73 74 20 70 6f 73 69 78 20 70  e-digest posix p
1e30: 6f 73 69 78 2d 65 78 74 72 61 73 20 72 65 61 64  osix-extras read
1e40: 6c 69 6e 65 20 72 65 67 65 78 20 72 65 67 65 78  line regex regex
1e50: 2d 63 61 73 65 20 73 31 31 6e 20 73 70 69 66 66  -case s11n spiff
1e60: 79 20 73 70 69 66 66 79 2d 72 65 71 75 65 73 74  y spiffy-request
1e70: 2d 76 61 72 73 20 73 71 6c 69 74 65 33 20 73 72  -vars sqlite3 sr
1e80: 66 69 2d 31 20 73 72 66 69 2d 31 38 20 73 72 66  fi-1 srfi-18 srf
1e90: 69 2d 36 39 20 74 63 70 20 74 65 73 74 20 75 72  i-69 tcp test ur
1ea0: 69 2d 63 6f 6d 6d 6f 6e 20 63 68 65 63 6b 2d 65  i-common check-e
1eb0: 72 72 6f 72 73 20 73 79 6e 63 68 20 6d 61 74 63  rrors synch matc
1ec0: 68 61 62 6c 65 20 73 71 6c 2d 6e 75 6c 6c 20 74  hable sql-null t
1ed0: 63 70 2d 73 65 72 76 65 72 20 72 70 63 20 62 6c  cp-server rpc bl
1ee0: 6f 62 2d 75 74 69 6c 73 20 73 74 72 69 6e 67 2d  ob-utils string-
1ef0: 75 74 69 6c 73 20 76 61 72 69 61 62 6c 65 2d 69  utils variable-i
1f00: 74 65 6d 20 64 65 66 73 74 72 75 63 74 20 75 72  tem defstruct ur
1f10: 69 2d 67 65 6e 65 72 69 63 20 73 65 6e 64 66 69  i-generic sendfi
1f20: 6c 65 20 6f 70 65 6e 73 6c 6c 20 6f 70 65 6e 73  le opensll opens
1f30: 73 6c 20 6c 6f 6f 6b 75 70 2d 74 61 62 6c 65 20  sl lookup-table 
1f40: 6c 69 73 74 2d 75 74 69 6c 73 20 73 74 61 63 6b  list-utils stack
1f50: 3b 20 64 6f 20 5c 0a 23 09 63 68 69 63 6b 65 6e  ; do \.#.chicken
1f60: 2d 69 6e 73 74 61 6c 6c 20 2d 70 72 65 66 69 78  -install -prefix
1f70: 20 64 65 70 6c 6f 79 74 61 72 67 20 2d 64 65 70   deploytarg -dep
1f80: 6c 6f 79 20 24 24 69 3b 64 6f 6e 65 0a 0a 23 20  loy $$i;done..# 
1f90: 64 65 70 6c 6f 79 74 61 72 67 2f 6c 69 62 73 71  deploytarg/libsq
1fa0: 6c 69 74 65 33 2e 73 6f 20 3a 20 0a 23 20 09 43  lite3.so : .# .C
1fb0: 53 43 5f 4f 50 54 49 4f 4e 53 3d 22 2d 49 64 65  SC_OPTIONS="-Ide
1fc0: 70 6c 6f 79 74 61 72 67 20 2d 4c 64 65 70 6c 6f  ploytarg -Ldeplo
1fd0: 79 74 61 72 67 22 20 24 43 48 49 43 4b 45 4e 5f  ytarg" $CHICKEN_
1fe0: 49 4e 53 54 41 4c 4c 20 2d 70 72 65 66 69 78 20  INSTALL -prefix 
1ff0: 64 65 70 6c 6f 79 74 61 72 67 20 2d 64 65 70 6c  deploytarg -depl
2000: 6f 79 20 73 71 6c 69 74 65 33 0a 0a 64 65 70 6c  oy sqlite3..depl
2010: 6f 79 20 3a 20 64 65 70 6c 6f 79 74 61 72 67 2f  oy : deploytarg/
2020: 6d 74 65 73 74 20 64 65 70 6c 6f 79 74 61 72 67  mtest deploytarg
2030: 2f 64 62 6f 61 72 64 20 24 28 44 45 50 4c 4f 59  /dboard $(DEPLOY
2040: 48 45 4c 50 45 52 53 29 20 64 65 70 6c 6f 79 74  HELPERS) deployt
2050: 61 72 67 2f 6e 62 66 61 6b 65 20 64 65 70 6c 6f  arg/nbfake deplo
2060: 79 74 61 72 67 2f 72 65 6d 72 75 6e 20 64 65 70  ytarg/remrun dep
2070: 6c 6f 79 74 61 72 67 2f 76 69 65 77 73 63 65 65  loytarg/viewscee
2080: 6e 20 64 65 70 6c 6f 79 74 61 72 67 2f 6e 62 66  n deploytarg/nbf
2090: 69 6e 64 20 64 65 70 6c 6f 79 74 61 72 67 2f 61  ind deploytarg/a
20a0: 70 72 6f 70 6f 73 2e 73 6f 0a 0a 23 20 64 65 70  propos.so..# dep
20b0: 6c 6f 79 74 61 72 67 2f 6c 69 62 69 75 70 63 64  loytarg/libiupcd
20c0: 2e 73 6f 20 3a 20 24 28 43 4b 50 41 54 48 29 2f  .so : $(CKPATH)/
20d0: 6c 69 62 2f 6c 69 62 69 75 70 63 64 2e 73 6f 0a  lib/libiupcd.so.
20e0: 23 20 09 66 6f 72 20 69 20 69 6e 20 69 75 70 20  # .for i in iup 
20f0: 69 6d 20 63 64 20 61 76 20 63 61 6c 6c 20 73 71  im cd av call sq
2100: 6c 69 74 65 3b 20 64 6f 20 5c 0a 23 20 09 20 20  lite; do \.# .  
2110: 63 70 20 24 28 43 4b 50 41 54 48 29 2f 6c 69 62  cp $(CKPATH)/lib
2120: 2f 6c 69 62 24 24 69 2a 20 64 65 70 6c 6f 79 74  /lib$$i* deployt
2130: 61 72 67 2f 20 3b 20 5c 0a 23 20 09 64 6f 6e 65  arg/ ; \.# .done
2140: 0a 23 20 09 63 70 20 24 28 43 4b 50 41 54 48 29  .# .cp $(CKPATH)
2150: 2f 69 6e 63 6c 75 64 65 2f 2a 2e 68 20 64 65 70  /include/*.h dep
2160: 6c 6f 79 74 61 72 67 0a 0a 23 20 70 75 74 73 20  loytarg..# puts 
2170: 64 65 70 6c 6f 79 65 64 20 6d 65 67 61 74 65 73  deployed megates
2180: 74 20 69 6e 20 64 69 72 65 63 74 6f 72 79 20 22  t in directory "
2190: 6d 65 67 61 74 65 73 74 22 0a 64 65 70 6c 6f 79  megatest".deploy
21a0: 74 61 72 67 2f 6d 74 65 73 74 20 3a 20 24 28 4f  targ/mtest : $(O
21b0: 46 49 4c 45 53 29 20 6d 65 67 61 74 65 73 74 2e  FILES) megatest.
21c0: 6f 20 64 65 70 6c 6f 79 74 61 72 67 2f 61 70 72  o deploytarg/apr
21d0: 6f 70 6f 73 2e 73 6f 0a 09 63 73 63 20 2d 64 65  opos.so..csc -de
21e0: 70 6c 6f 79 20 24 28 43 53 43 4f 50 54 53 29 20  ploy $(CSCOPTS) 
21f0: 24 28 4f 46 49 4c 45 53 29 20 6d 65 67 61 74 65  $(OFILES) megate
2200: 73 74 2e 73 63 6d 20 2d 6f 20 64 65 70 6c 6f 79  st.scm -o deploy
2210: 74 61 72 67 0a 09 6d 76 20 64 65 70 6c 6f 79 74  targ..mv deployt
2220: 61 72 67 2f 64 65 70 6c 6f 79 74 61 72 67 20 64  arg/deploytarg d
2230: 65 70 6c 6f 79 74 61 72 67 2f 6d 74 65 73 74 0a  eploytarg/mtest.
2240: 0a 64 65 70 6c 6f 79 74 61 72 67 2f 64 62 6f 61  .deploytarg/dboa
2250: 72 64 20 3a 20 20 24 28 4f 46 49 4c 45 53 29 20  rd :  $(OFILES) 
2260: 24 28 47 4f 46 49 4c 45 53 29 20 64 61 73 68 62  $(GOFILES) dashb
2270: 6f 61 72 64 2e 73 63 6d 20 64 65 70 6c 6f 79 74  oard.scm deployt
2280: 61 72 67 2f 61 70 72 6f 70 6f 73 2e 73 6f 0a 09  arg/apropos.so..
2290: 63 73 63 20 2d 64 65 70 6c 6f 79 20 24 28 4f 46  csc -deploy $(OF
22a0: 49 4c 45 53 29 20 24 28 47 4f 46 49 4c 45 53 29  ILES) $(GOFILES)
22b0: 20 64 61 73 68 62 6f 61 72 64 2e 73 63 6d 20 2d   dashboard.scm -
22c0: 6f 20 64 65 70 6c 6f 79 74 61 72 67 0a 09 6d 76  o deploytarg..mv
22d0: 20 64 65 70 6c 6f 79 74 61 72 67 2f 64 65 70 6c   deploytarg/depl
22e0: 6f 79 74 61 72 67 20 64 65 70 6c 6f 79 74 61 72  oytarg deploytar
22f0: 67 2f 64 62 6f 61 72 64 0a 0a 23 20 44 41 54 41  g/dboard..# DATA
2300: 53 48 41 52 45 4f 3d 63 6f 6e 66 69 67 66 2e 6f  SHAREO=configf.o
2310: 20 63 6f 6d 6d 6f 6e 2e 6f 20 70 72 6f 63 65 73   common.o proces
2320: 73 2e 6f 20 74 72 65 65 2e 6f 20 64 63 6f 6d 6d  s.o tree.o dcomm
2330: 6f 6e 2e 6f 20 6d 61 72 67 73 2e 6f 20 6c 61 75  on.o margs.o lau
2340: 6e 63 68 2e 6f 20 67 75 74 69 6c 73 2e 6f 20 64  nch.o gutils.o d
2350: 62 2e 6f 20 73 79 6e 63 68 61 73 68 2e 6f 20 73  b.o synchash.o s
2360: 65 72 76 65 72 2e 6f 20 5c 0a 23 20 20 20 20 20  erver.o \.#     
2370: 20 20 20 20 20 20 20 6d 65 67 61 74 65 73 74 2d         megatest-
2380: 76 65 72 73 69 6f 6e 2e 6f 20 74 64 62 2e 6f 20  version.o tdb.o 
2390: 6f 64 73 2e 6f 20 6d 74 2e 6f 20 6b 65 79 73 2e  ods.o mt.o keys.
23a0: 6f 0a 64 61 74 61 73 68 61 72 65 2d 74 65 73 74  o.datashare-test
23b0: 69 6e 67 2f 73 64 20 3a 20 64 61 74 61 73 68 61  ing/sd : datasha
23c0: 72 65 2e 73 63 6d 20 24 28 4f 46 49 4c 45 53 29  re.scm $(OFILES)
23d0: 0a 09 63 73 63 20 24 28 43 53 43 4f 50 54 53 29  ..csc $(CSCOPTS)
23e0: 20 64 61 74 61 73 68 61 72 65 2e 73 63 6d 20 24   datashare.scm $
23f0: 28 4f 46 49 4c 45 53 29 20 2d 6f 20 64 61 74 61  (OFILES) -o data
2400: 73 68 61 72 65 2d 74 65 73 74 69 6e 67 2f 73 64  share-testing/sd
2410: 0a 0a 64 61 74 61 73 68 61 72 65 2d 74 65 73 74  ..datashare-test
2420: 69 6e 67 2f 73 64 61 74 3a 20 73 68 61 72 65 64  ing/sdat: shared
2430: 61 74 2e 73 63 6d 20 24 28 4f 46 49 4c 45 53 29  at.scm $(OFILES)
2440: 0a 09 63 73 63 20 24 28 43 53 43 4f 50 54 53 29  ..csc $(CSCOPTS)
2450: 20 73 68 61 72 65 64 61 74 2e 73 63 6d 20 24 28   sharedat.scm $(
2460: 4f 46 49 4c 45 53 29 20 2d 6f 20 64 61 74 61 73  OFILES) -o datas
2470: 68 61 72 65 2d 74 65 73 74 69 6e 67 2f 73 64 61  hare-testing/sda
2480: 74 0a 0a 73 64 20 3a 20 64 61 74 61 73 68 61 72  t..sd : datashar
2490: 65 2d 74 65 73 74 69 6e 67 2f 73 64 0a 09 6d 6b  e-testing/sd..mk
24a0: 64 69 72 20 2d 70 20 2f 74 6d 70 2f 24 28 55 53  dir -p /tmp/$(US
24b0: 45 52 29 2f 64 61 74 61 73 68 61 72 65 2f 64 69  ER)/datashare/di
24c0: 73 6b 31 20 2f 74 6d 70 2f 24 28 55 53 45 52 29  sk1 /tmp/$(USER)
24d0: 2f 62 61 73 65 70 61 74 68 0a 0a 78 74 65 72 6d  /basepath..xterm
24e0: 20 3a 20 73 64 0a 09 28 65 78 70 6f 72 74 20 42   : sd..(export B
24f0: 41 53 45 50 41 54 48 3d 2f 74 6d 70 2f 24 28 55  ASEPATH=/tmp/$(U
2500: 53 45 52 29 2f 62 61 73 65 70 61 74 68 20 3b 20  SER)/basepath ; 
2510: 65 78 70 6f 72 74 20 50 41 54 48 3d 22 24 28 50  export PATH="$(P
2520: 57 44 29 2f 64 61 74 61 73 68 61 72 65 2d 74 65  WD)/datashare-te
2530: 73 74 69 6e 67 3a 24 28 50 41 54 48 29 22 20 3b  sting:$(PATH)" ;
2540: 20 78 74 65 72 6d 20 26 29 0a 0a 64 61 74 61 73   xterm &)..datas
2550: 68 61 72 65 2d 74 65 73 74 69 6e 67 2f 73 70 75  hare-testing/spu
2560: 62 6c 69 73 68 20 3a 20 73 70 75 62 6c 69 73 68  blish : spublish
2570: 2e 73 63 6d 20 24 28 4f 46 49 4c 45 53 29 0a 09  .scm $(OFILES)..
2580: 63 73 63 20 24 28 43 53 43 4f 50 54 53 29 20 73  csc $(CSCOPTS) s
2590: 70 75 62 6c 69 73 68 2e 73 63 6d 20 24 28 4f 46  publish.scm $(OF
25a0: 49 4c 45 53 29 20 2d 6f 20 64 61 74 61 73 68 61  ILES) -o datasha
25b0: 72 65 2d 74 65 73 74 69 6e 67 2f 73 70 75 62 6c  re-testing/spubl
25c0: 69 73 68 0a 0a 64 61 74 61 73 68 61 72 65 2d 74  ish..datashare-t
25d0: 65 73 74 69 6e 67 2f 73 72 65 74 72 69 65 76 65  esting/sretrieve
25e0: 20 3a 20 73 72 65 74 72 69 65 76 65 2e 73 63 6d   : sretrieve.scm
25f0: 20 6d 65 67 61 74 65 73 74 2d 76 65 72 73 69 6f   megatest-versio
2600: 6e 2e 6f 20 6d 61 72 67 73 2e 6f 20 63 6f 6e 66  n.o margs.o conf
2610: 69 67 66 2e 6f 20 70 72 6f 63 65 73 73 2e 6f 20  igf.o process.o 
2620: 0a 09 63 73 63 20 24 28 43 53 43 4f 50 54 53 29  ..csc $(CSCOPTS)
2630: 20 73 72 65 74 72 69 65 76 65 2e 73 63 6d 20 6d   sretrieve.scm m
2640: 65 67 61 74 65 73 74 2d 76 65 72 73 69 6f 6e 2e  egatest-version.
2650: 6f 20 6d 61 72 67 73 2e 6f 20 63 6f 6e 66 69 67  o margs.o config
2660: 66 2e 6f 20 70 72 6f 63 65 73 73 2e 6f 20 2d 6f  f.o process.o -o
2670: 20 64 61 74 61 73 68 61 72 65 2d 74 65 73 74 69   datashare-testi
2680: 6e 67 2f 73 72 65 74 72 69 65 76 65 0a 0a 73 72  ng/sretrieve..sr
2690: 65 74 72 69 65 76 65 2f 73 72 65 74 72 69 65 76  etrieve/sretriev
26a0: 65 20 3a 20 64 61 74 61 73 68 61 72 65 2d 74 65  e : datashare-te
26b0: 73 74 69 6e 67 2f 73 72 65 74 72 69 65 76 65 0a  sting/sretrieve.
26c0: 09 63 73 63 20 24 28 43 53 43 4f 50 54 53 29 20  .csc $(CSCOPTS) 
26d0: 2d 64 65 70 6c 6f 79 20 2d 64 65 70 6c 6f 79 65  -deploy -deploye
26e0: 64 20 73 72 65 74 72 69 65 76 65 2e 73 63 6d 20  d sretrieve.scm 
26f0: 6d 65 67 61 74 65 73 74 2d 76 65 72 73 69 6f 6e  megatest-version
2700: 2e 6f 20 6d 61 72 67 73 2e 6f 20 63 6f 6e 66 69  .o margs.o confi
2710: 67 66 2e 6f 20 70 72 6f 63 65 73 73 2e 6f 0a 09  gf.o process.o..
2720: 63 68 69 63 6b 65 6e 2d 69 6e 73 74 61 6c 6c 20  chicken-install 
2730: 2d 6b 65 65 70 2d 69 6e 73 74 61 6c 6c 65 64 20  -keep-installed 
2740: 24 28 50 52 4f 58 59 29 20 2d 64 65 70 6c 6f 79  $(PROXY) -deploy
2750: 20 2d 70 72 65 66 69 78 20 73 72 65 74 72 69 65   -prefix sretrie
2760: 76 65 20 64 65 66 73 74 72 75 63 74 20 73 72 66  ve defstruct srf
2770: 69 2d 31 38 20 66 6f 72 6d 61 74 20 73 71 6c 2d  i-18 format sql-
2780: 64 65 2d 6c 69 74 65 20 5c 0a 20 20 20 20 20 20  de-lite \.      
2790: 20 20 20 20 20 20 20 73 72 66 69 2d 31 20 70 6f         srfi-1 po
27a0: 73 69 78 20 72 65 67 65 78 20 72 65 67 65 78 2d  six regex regex-
27b0: 63 61 73 65 20 73 72 66 69 2d 36 39 0a 0a 23 20  case srfi-69..# 
27c0: 62 61 73 65 36 34 20 64 6f 74 2d 6c 6f 63 6b 69  base64 dot-locki
27d0: 6e 67 20 5c 0a 23 20 20 20 20 20 20 20 20 20 20  ng \.#          
27e0: 20 20 20 63 73 76 2d 78 6d 6c 20 7a 33 0a 0a 23     csv-xml z3..#
27f0: 20 20 22 28 64 65 66 69 6e 65 20 28 74 6f 70 6c    "(define (topl
2800: 65 76 65 6c 2d 63 6f 6d 6d 61 6e 64 20 2e 20 61  evel-command . a
2810: 29 20 23 66 29 22 0a 23 20 69 66 20 65 67 72 65  ) #f)".# if egre
2820: 70 20 27 76 65 72 73 69 6f 6e 2e 2a 33 2e 30 27  p 'version.*3.0'
2830: 20 24 28 73 68 65 6c 6c 20 64 69 72 6e 61 6d 65   $(shell dirname
2840: 20 24 28 73 68 65 6c 6c 20 64 69 72 6e 61 6d 65   $(shell dirname
2850: 20 24 28 73 68 65 6c 6c 20 77 68 69 63 68 20 63   $(shell which c
2860: 73 69 29 29 29 2f 6c 69 62 2f 63 68 69 63 6b 65  si)))/lib/chicke
2870: 6e 2f 37 2f 72 65 61 64 6c 69 6e 65 2e 73 65 74  n/7/readline.set
2880: 75 70 2d 69 6e 66 6f 3b 74 68 65 6e 20 5c 0a 0a  up-info;then \..
2890: 72 65 61 64 6c 69 6e 65 2d 66 69 78 2e 73 63 6d  readline-fix.scm
28a0: 20 3a 0a 09 69 66 20 5b 5b 20 24 28 73 68 65 6c   :..if [[ $(shel
28b0: 6c 20 63 68 69 63 6b 65 6e 2d 73 74 61 74 75 73  l chicken-status
28c0: 20 7c 20 67 72 65 70 20 72 65 61 64 6c 69 6e 65   | grep readline
28d0: 20 7c 20 61 77 6b 20 27 7b 70 72 69 6e 74 20 24   | awk '{print $
28e0: 34 7d 27 20 7c 20 63 75 74 20 2d 64 2e 20 2d 66  4}' | cut -d. -f
28f0: 31 29 20 2d 67 74 20 33 20 5d 5d 3b 74 68 65 6e  1) -gt 3 ]];then
2900: 20 5c 0a 09 20 20 20 65 63 68 6f 20 22 28 64 65   \..   echo "(de
2910: 66 69 6e 65 20 2a 75 73 65 2d 6e 65 77 2d 72 65  fine *use-new-re
2920: 61 64 6c 69 6e 65 2a 20 23 66 29 22 20 3e 20 72  adline* #f)" > r
2930: 65 61 64 6c 69 6e 65 2d 66 69 78 2e 73 63 6d 3b  eadline-fix.scm;
2940: 20 5c 0a 09 65 6c 73 65 20 5c 0a 09 20 20 20 65   \..else \..   e
2950: 63 68 6f 20 22 28 64 65 66 69 6e 65 20 2a 75 73  cho "(define *us
2960: 65 2d 6e 65 77 2d 72 65 61 64 6c 69 6e 65 2a 20  e-new-readline* 
2970: 23 74 29 22 20 3e 20 72 65 61 64 6c 69 6e 65 2d  #t)" > readline-
2980: 66 69 78 2e 73 63 6d 3b 5c 0a 09 66 69 0a 0a 61  fix.scm;\..fi..a
2990: 6c 74 64 62 2e 73 63 6d 20 3a 0a 09 65 63 68 6f  ltdb.scm :..echo
29a0: 20 22 3b 3b 20 6f 70 74 69 6f 6e 61 6c 20 61 6c   ";; optional al
29b0: 74 65 72 6e 61 74 65 20 64 62 20 73 65 74 75 70  ternate db setup
29c0: 22 20 3e 20 61 6c 74 64 62 2e 73 63 6d 0a 09 65  " > altdb.scm..e
29d0: 63 68 6f 20 22 28 64 65 66 69 6e 65 20 2a 61 76  cho "(define *av
29e0: 61 69 6c 61 62 6c 65 2d 64 62 2a 20 28 6d 61 6b  ailable-db* (mak
29f0: 65 2d 68 61 73 68 2d 74 61 62 6c 65 29 29 22 20  e-hash-table))" 
2a00: 3e 3e 20 61 6c 74 64 62 2e 73 63 6d 0a 09 69 66  >> altdb.scm..if
2a10: 20 20 63 73 69 20 2d 6e 65 20 27 28 75 73 65 20    csi -ne '(use 
2a20: 6d 79 73 71 6c 2d 63 6c 69 65 6e 74 29 27 3b 74  mysql-client)';t
2a30: 68 65 6e 20 5c 0a 20 20 20 20 20 20 20 20 20 20  hen \.          
2a40: 20 65 63 68 6f 20 22 28 75 73 65 20 6d 79 73 71   echo "(use mysq
2a50: 6c 2d 63 6c 69 65 6e 74 29 28 68 61 73 68 2d 74  l-client)(hash-t
2a60: 61 62 6c 65 2d 73 65 74 21 20 2a 61 76 61 69 6c  able-set! *avail
2a70: 61 62 6c 65 2d 64 62 2a 20 27 6d 79 73 71 6c 20  able-db* 'mysql 
2a80: 23 74 29 22 20 3e 3e 20 61 6c 74 64 62 2e 73 63  #t)" >> altdb.sc
2a90: 6d 3b 20 5c 0a 09 66 69 0a 09 69 66 20 63 73 69  m; \..fi..if csi
2aa0: 20 2d 6e 65 20 27 28 75 73 65 20 70 6f 73 74 67   -ne '(use postg
2ab0: 72 65 73 71 6c 29 27 3b 74 68 65 6e 20 5c 0a 09  resql)';then \..
2ac0: 20 20 20 65 63 68 6f 20 22 28 75 73 65 20 70 6f     echo "(use po
2ad0: 73 74 67 72 65 73 71 6c 29 28 68 61 73 68 2d 74  stgresql)(hash-t
2ae0: 61 62 6c 65 2d 73 65 74 21 20 2a 61 76 61 69 6c  able-set! *avail
2af0: 61 62 6c 65 2d 64 62 2a 20 27 70 6f 73 74 67 72  able-db* 'postgr
2b00: 65 73 71 6c 20 23 74 29 22 20 3e 3e 20 61 6c 74  esql #t)" >> alt
2b10: 64 62 2e 73 63 6d 3b 5c 0a 09 66 69 0a 0a 70 6f  db.scm;\..fi..po
2b20: 72 74 6c 6f 67 67 65 72 2d 65 78 61 6d 70 6c 65  rtlogger-example
2b30: 20 3a 20 70 6f 72 74 6c 6f 67 67 65 72 2d 65 78   : portlogger-ex
2b40: 61 6d 70 6c 65 2e 73 63 6d 20 61 70 69 2e 6f 20  ample.scm api.o 
2b50: 61 72 63 68 69 76 65 2e 6f 20 63 6c 69 65 6e 74  archive.o client
2b60: 2e 6f 20 63 6f 6d 6d 6f 6e 2e 6f 20 63 6f 6e 66  .o common.o conf
2b70: 69 67 66 2e 6f 20 64 61 65 6d 6f 6e 2e 6f 20 64  igf.o daemon.o d
2b80: 61 73 68 62 6f 61 72 64 2d 74 65 73 74 73 2e 6f  ashboard-tests.o
2b90: 20 64 62 2e 6f 20 64 63 6f 6d 6d 6f 6e 2e 6f 20   db.o dcommon.o 
2ba0: 65 7a 73 74 65 70 73 2e 6f 20 66 69 6c 65 64 62  ezsteps.o filedb
2bb0: 2e 6f 20 67 65 6e 65 78 61 6d 70 6c 65 2e 6f 20  .o genexample.o 
2bc0: 67 75 74 69 6c 73 2e 6f 20 68 74 74 70 2d 74 72  gutils.o http-tr
2bd0: 61 6e 73 70 6f 72 74 2e 6f 20 69 74 65 6d 73 2e  ansport.o items.
2be0: 6f 20 6b 65 79 73 2e 6f 20 6c 61 75 6e 63 68 2e  o keys.o launch.
2bf0: 6f 20 6c 6f 63 6b 2d 71 75 65 75 65 2e 6f 20 6d  o lock-queue.o m
2c00: 61 72 67 73 2e 6f 20 6d 65 67 61 74 65 73 74 2d  args.o megatest-
2c10: 76 65 72 73 69 6f 6e 2e 6f 20 6d 74 2e 6f 20 6f  version.o mt.o o
2c20: 64 73 2e 6f 20 70 6f 72 74 6c 6f 67 67 65 72 2e  ds.o portlogger.
2c30: 6f 20 70 72 6f 63 65 73 73 2e 6f 20 72 6d 74 2e  o process.o rmt.
2c40: 6f 20 72 70 63 2d 74 72 61 6e 73 70 6f 72 74 2e  o rpc-transport.
2c50: 6f 20 72 75 6e 63 6f 6e 66 69 67 2e 6f 20 72 75  o runconfig.o ru
2c60: 6e 73 2e 6f 20 73 64 62 2e 6f 20 73 65 72 76 65  ns.o sdb.o serve
2c70: 72 2e 6f 20 73 79 6e 63 68 61 73 68 2e 6f 20 74  r.o synchash.o t
2c80: 61 73 6b 73 2e 6f 20 74 64 62 2e 6f 20 74 65 73  asks.o tdb.o tes
2c90: 74 73 2e 6f 20 74 72 65 65 2e 6f 0a 09 63 73 63  ts.o tree.o..csc
2ca0: 20 24 28 43 53 43 4f 50 54 53 29 20 70 6f 72 74   $(CSCOPTS) port
2cb0: 6c 6f 67 67 65 72 2d 65 78 61 6d 70 6c 65 2e 73  logger-example.s
2cc0: 63 6d 20 61 70 69 2e 6f 20 61 72 63 68 69 76 65  cm api.o archive
2cd0: 2e 6f 20 63 6c 69 65 6e 74 2e 6f 20 63 6f 6d 6d  .o client.o comm
2ce0: 6f 6e 2e 6f 20 63 6f 6e 66 69 67 66 2e 6f 20 64  on.o configf.o d
2cf0: 61 65 6d 6f 6e 2e 6f 20 64 61 73 68 62 6f 61 72  aemon.o dashboar
2d00: 64 2d 74 65 73 74 73 2e 6f 20 64 62 2e 6f 20 64  d-tests.o db.o d
2d10: 63 6f 6d 6d 6f 6e 2e 6f 20 65 7a 73 74 65 70 73  common.o ezsteps
2d20: 2e 6f 20 66 69 6c 65 64 62 2e 6f 20 67 65 6e 65  .o filedb.o gene
2d30: 78 61 6d 70 6c 65 2e 6f 20 67 75 74 69 6c 73 2e  xample.o gutils.
2d40: 6f 20 68 74 74 70 2d 74 72 61 6e 73 70 6f 72 74  o http-transport
2d50: 2e 6f 20 69 74 65 6d 73 2e 6f 20 6b 65 79 73 2e  .o items.o keys.
2d60: 6f 20 6c 61 75 6e 63 68 2e 6f 20 6c 6f 63 6b 2d  o launch.o lock-
2d70: 71 75 65 75 65 2e 6f 20 6d 61 72 67 73 2e 6f 20  queue.o margs.o 
2d80: 6d 65 67 61 74 65 73 74 2d 76 65 72 73 69 6f 6e  megatest-version
2d90: 2e 6f 20 6d 74 2e 6f 20 6f 64 73 2e 6f 20 70 6f  .o mt.o ods.o po
2da0: 72 74 6c 6f 67 67 65 72 2e 6f 20 70 72 6f 63 65  rtlogger.o proce
2db0: 73 73 2e 6f 20 72 6d 74 2e 6f 20 72 70 63 2d 74  ss.o rmt.o rpc-t
2dc0: 72 61 6e 73 70 6f 72 74 2e 6f 20 72 75 6e 63 6f  ransport.o runco
2dd0: 6e 66 69 67 2e 6f 20 72 75 6e 73 2e 6f 20 73 64  nfig.o runs.o sd
2de0: 62 2e 6f 20 73 65 72 76 65 72 2e 6f 20 73 79 6e  b.o server.o syn
2df0: 63 68 61 73 68 2e 6f 20 74 61 73 6b 73 2e 6f 20  chash.o tasks.o 
2e00: 74 64 62 2e 6f 20 74 65 73 74 73 2e 6f 20 74 72  tdb.o tests.o tr
2e10: 65 65 2e 6f 0a                                   ee.o.