shithub: mc

Download patch

ref: 37382a5df854971f64bf07f9c6a7c94f2e7d058e
parent: 7e3d48053773f02748160f3ac7fe60cdb1bb2971
author: Ori Bernstein <ori@eigenstate.org>
date: Fri Aug 28 16:13:49 EDT 2015

Update bootstrap scripts.

--- a/Makefile
+++ b/Makefile
@@ -22,6 +22,7 @@
 
 .PHONY: bootstrap
 bootstrap: buildmyr
+	cp mbld/mbld xmbld
 	./genbootstrap.sh
 
 buildmyr:
--- a/genbootstrap.sh
+++ b/genbootstrap.sh
@@ -1,4 +1,5 @@
 #!/bin/sh
+set -x
 
 if test `uname` = Plan9; then
     export MYR_MUSE=../muse/6.out
@@ -5,9 +6,9 @@
     export MYR_MC=../6/6.out
     export MYR_RT=../rt/_myrrt.6
 else
-    export MYR_MUSE=../muse/muse
-    export MYR_MC=../6/6m
-    export MYR_RT=../rt/_myrrt.o
+    export MYR_MUSE=`pwd`/muse/muse
+    export MYR_MC=`pwd`/6/6m
+    export MYR_RT=`pwd`/rt/_myrrt.o
 fi
 ./mbldwrap.sh
 cp mbld/mbld xmbld
@@ -20,12 +21,11 @@
 echo '# This script is generated by genbootstrap.sh' >> $bootscript
 echo '# to regenerate, run "make bootstrap"' >> $bootscript
 echo 'pwd=`pwd`' >> $bootscript
-echo 'export PATH=`pwd`:`pwd`/6:`pwd`/muse:$PATH' >> $bootscript
 ./xmbld -Rnone | \
     sed "s:Entering directory '\\(.*\\)':	cd \$pwd/\\1:g" | \
     sed "s:Leaving directory.*:	cd \$pwd:g" | \
     sed "s:\\([a-zA-Z0-9_-]*\\)+.*:\`\$pwd/sysselect.sh \1\`:" | \
-    sed "s:`pwd`:\`pwd\`:g" | \
+    sed "s:`pwd`:\$pwd:g" | \
     grep '^	' | \
     sed 's/.*/echo &;&/' | \
     tee -a $bootscript
--- a/lib/cryptohash/bld.sub
+++ b/lib/cryptohash/bld.sub
@@ -3,5 +3,7 @@
 	sha1.myr
 	sha256.myr
 	sha512.myr
+
+	lib ../std:std
 ;;
 
--- a/mk/bootstrap/bootstrap+Linux-x86_64.sh
+++ b/mk/bootstrap/bootstrap+Linux-x86_64.sh
@@ -2,112 +2,121 @@
 # This script is generated by genbootstrap.sh
 # to regenerate, run "make bootstrap"
 pwd=`pwd`
-export PATH=`pwd`:`pwd`/6:`pwd`/muse:$PATH
-echo 	cd $pwd/libstd;	cd $pwd/libstd
-echo 	../6/6m	`$pwd/sysselect.sh syserrno`;	../6/6m	`$pwd/sysselect.sh syserrno`
-echo 	../6/6m	systypes.myr ;	../6/6m	systypes.myr 
-echo 	../6/6m	`$pwd/sysselect.sh sys`;	../6/6m	`$pwd/sysselect.sh sys`
-echo 	../6/6m	`$pwd/sysselect.sh ifreq`;	../6/6m	`$pwd/sysselect.sh ifreq`
+echo 	cd $pwd/lib/std;	cd $pwd/lib/std
+echo 	$pwd/6/6m	`$pwd/sysselect.sh syserrno`;	$pwd/6/6m	`$pwd/sysselect.sh syserrno`
+echo 	$pwd/6/6m	systypes.myr ;	$pwd/6/6m	systypes.myr 
+echo 	$pwd/6/6m	`$pwd/sysselect.sh sys`;	$pwd/6/6m	`$pwd/sysselect.sh sys`
+echo 	$pwd/6/6m	`$pwd/sysselect.sh ifreq`;	$pwd/6/6m	`$pwd/sysselect.sh ifreq`
 echo 	as	-g -o util.o `$pwd/sysselect.sh util`;	as	-g -o util.o `$pwd/sysselect.sh util`
 echo 	as	-g -o syscall.o `$pwd/sysselect.sh syscall`;	as	-g -o syscall.o `$pwd/sysselect.sh syscall`
-echo 	../muse/muse	-o sys ifreq.use syserrno.use systypes.use sys.use ;	../muse/muse	-o sys ifreq.use syserrno.use systypes.use sys.use 
+echo 	$pwd/muse/muse	-o sys ifreq.use syserrno.use systypes.use sys.use ;	$pwd/muse/muse	-o sys ifreq.use syserrno.use systypes.use sys.use 
 echo 	ar	-rcs libsys.a ifreq.o util.o syserrno.o syscall.o systypes.o sys.o ;	ar	-rcs libsys.a ifreq.o util.o syserrno.o syscall.o systypes.o sys.o 
-echo 	../6/6m	-I . types.myr ;	../6/6m	-I . types.myr 
-echo 	../6/6m	-I . cstrconv.myr ;	../6/6m	-I . cstrconv.myr 
-echo 	../6/6m	-I . option.myr ;	../6/6m	-I . option.myr 
-echo 	../6/6m	-I . errno.myr ;	../6/6m	-I . errno.myr 
-echo 	../6/6m	-I . `$pwd/sysselect.sh syswrap`;	../6/6m	-I . `$pwd/sysselect.sh syswrap`
-echo 	../6/6m	-I . die.myr ;	../6/6m	-I . die.myr 
-echo 	../6/6m	-I . sleq.myr ;	../6/6m	-I . sleq.myr 
-echo 	../6/6m	-I . hassuffix.myr ;	../6/6m	-I . hassuffix.myr 
-echo 	../6/6m	-I . extremum.myr ;	../6/6m	-I . extremum.myr 
-echo 	../6/6m	-I . units.myr ;	../6/6m	-I . units.myr 
-echo 	../6/6m	-I . alloc.myr ;	../6/6m	-I . alloc.myr 
-echo 	../6/6m	-I . rand.myr ;	../6/6m	-I . rand.myr 
-echo 	../6/6m	-I . slcp.myr ;	../6/6m	-I . slcp.myr 
-echo 	../6/6m	-I . sldup.myr ;	../6/6m	-I . sldup.myr 
-echo 	../6/6m	-I . now.myr ;	../6/6m	-I . now.myr 
-echo 	../6/6m	-I . sljoin.myr ;	../6/6m	-I . sljoin.myr 
-echo 	../6/6m	-I . result.myr ;	../6/6m	-I . result.myr 
-echo 	../6/6m	-I . slurp.myr ;	../6/6m	-I . slurp.myr 
-echo 	../6/6m	-I . strfind.myr ;	../6/6m	-I . strfind.myr 
-echo 	../6/6m	-I . dirname.myr ;	../6/6m	-I . dirname.myr 
-echo 	../6/6m	-I . introspect.myr ;	../6/6m	-I . introspect.myr 
-echo 	../6/6m	-I . slpush.myr ;	../6/6m	-I . slpush.myr 
-echo 	../6/6m	-I . strsplit.myr ;	../6/6m	-I . strsplit.myr 
-echo 	../6/6m	-I . fltbits.myr ;	../6/6m	-I . fltbits.myr 
-echo 	../6/6m	-I . chartype.myr ;	../6/6m	-I . chartype.myr 
-echo 	../6/6m	-I . cmp.myr ;	../6/6m	-I . cmp.myr 
-echo 	../6/6m	-I . hasprefix.myr ;	../6/6m	-I . hasprefix.myr 
-echo 	../6/6m	-I . utf.myr ;	../6/6m	-I . utf.myr 
-echo 	../6/6m	-I . intparse.myr ;	../6/6m	-I . intparse.myr 
-echo 	../6/6m	-I . slfill.myr ;	../6/6m	-I . slfill.myr 
-echo 	../6/6m	-I . bigint.myr ;	../6/6m	-I . bigint.myr 
-echo 	../6/6m	-I . strbuf.myr ;	../6/6m	-I . strbuf.myr 
-echo 	../6/6m	-I . fltfmt.myr ;	../6/6m	-I . fltfmt.myr 
-echo 	../6/6m	-I . hashfuncs.myr ;	../6/6m	-I . hashfuncs.myr 
-echo 	../6/6m	-I . htab.myr ;	../6/6m	-I . htab.myr 
-echo 	../6/6m	-I . `$pwd/sysselect.sh syswrap-ss`;	../6/6m	-I . `$pwd/sysselect.sh syswrap-ss`
-echo 	../6/6m	-I . varargs.myr ;	../6/6m	-I . varargs.myr 
-echo 	../6/6m	-I . fmt.myr ;	../6/6m	-I . fmt.myr 
-echo 	../6/6m	-I . optparse.myr ;	../6/6m	-I . optparse.myr 
-echo 	../6/6m	-I . `$pwd/sysselect.sh dir`;	../6/6m	-I . `$pwd/sysselect.sh dir`
-echo 	../6/6m	-I . ipparse.myr ;	../6/6m	-I . ipparse.myr 
-echo 	../6/6m	-I . `$pwd/sysselect.sh env`;	../6/6m	-I . `$pwd/sysselect.sh env`
-echo 	../6/6m	-I . execvp.myr ;	../6/6m	-I . execvp.myr 
-echo 	../6/6m	-I . slput.myr ;	../6/6m	-I . slput.myr 
-echo 	../6/6m	-I . spork.myr ;	../6/6m	-I . spork.myr 
-echo 	../6/6m	-I . getint.myr ;	../6/6m	-I . getint.myr 
-echo 	../6/6m	-I . blat.myr ;	../6/6m	-I . blat.myr 
-echo 	../6/6m	-I . clear.myr ;	../6/6m	-I . clear.myr 
-echo 	../6/6m	-I . `$pwd/sysselect.sh wait`;	../6/6m	-I . `$pwd/sysselect.sh wait`
-echo 	../6/6m	-I . strjoin.myr ;	../6/6m	-I . strjoin.myr 
-echo 	../6/6m	-I . mk.myr ;	../6/6m	-I . mk.myr 
-echo 	../6/6m	-I . putint.myr ;	../6/6m	-I . putint.myr 
-echo 	../6/6m	-I . mkpath.myr ;	../6/6m	-I . mkpath.myr 
-echo 	../6/6m	-I . endian.myr ;	../6/6m	-I . endian.myr 
-echo 	../6/6m	-I . strstrip.myr ;	../6/6m	-I . strstrip.myr 
-echo 	../6/6m	-I . `$pwd/sysselect.sh resolve`;	../6/6m	-I . `$pwd/sysselect.sh resolve`
-echo 	../6/6m	-I . pathjoin.myr ;	../6/6m	-I . pathjoin.myr 
-echo 	../6/6m	-I . bitset.myr ;	../6/6m	-I . bitset.myr 
-echo 	../6/6m	-I . fmtfuncs.myr ;	../6/6m	-I . fmtfuncs.myr 
-echo 	../6/6m	-I . try.myr ;	../6/6m	-I . try.myr 
-echo 	../6/6m	-I . sort.myr ;	../6/6m	-I . sort.myr 
-echo 	../6/6m	-I . search.myr ;	../6/6m	-I . search.myr 
-echo 	../6/6m	-I . getcwd.myr ;	../6/6m	-I . getcwd.myr 
-echo 	../6/6m	-I . swap.myr ;	../6/6m	-I . swap.myr 
-echo 	../6/6m	-I . `$pwd/sysselect.sh dial`;	../6/6m	-I . `$pwd/sysselect.sh dial`
-echo 	../muse/muse	-o std fmtfuncs.use fmt.use try.use pathjoin.use strjoin.use dir.use sljoin.use slpush.use strstrip.use htab.use now.use getcwd.use rand.use slurp.use varargs.use strbuf.use clear.use slput.use strsplit.use introspect.use alloc.use optparse.use fltbits.use sldup.use fltfmt.use extremum.use option.use slcp.use errno.use wait.use putint.use syswrap.use sort.use blat.use mk.use swap.use hassuffix.use execvp.use ipparse.use types.use strfind.use utf.use cstrconv.use search.use die.use units.use result.use bitset.use env.use resolve.use intparse.use hasprefix.use mkpath.use getint.use dirname.use sleq.use endian.use spork.use cmp.use syswrap-ss.use chartype.use bigint.use hashfuncs.use slfill.use dial.use ;	../muse/muse	-o std fmtfuncs.use fmt.use try.use pathjoin.use strjoin.use dir.use sljoin.use slpush.use strstrip.use htab.use now.use getcwd.use rand.use slurp.use varargs.use strbuf.use clear.use slput.use strsplit.use introspect.use alloc.use optparse.use fltbits.use sldup.use fltfmt.use extremum.use option.use slcp.use errno.use wait.use putint.use syswrap.use sort.use blat.use mk.use swap.use hassuffix.use execvp.use ipparse.use types.use strfind.use utf.use cstrconv.use search.use die.use units.use result.use bitset.use env.use resolve.use intparse.use hasprefix.use mkpath.use getint.use dirname.use sleq.use endian.use spork.use cmp.use syswrap-ss.use chartype.use bigint.use hashfuncs.use slfill.use dial.use 
+echo 	$pwd/6/6m	-I . types.myr ;	$pwd/6/6m	-I . types.myr 
+echo 	$pwd/6/6m	-I . cstrconv.myr ;	$pwd/6/6m	-I . cstrconv.myr 
+echo 	$pwd/6/6m	-I . option.myr ;	$pwd/6/6m	-I . option.myr 
+echo 	$pwd/6/6m	-I . errno.myr ;	$pwd/6/6m	-I . errno.myr 
+echo 	$pwd/6/6m	-I . `$pwd/sysselect.sh syswrap`;	$pwd/6/6m	-I . `$pwd/sysselect.sh syswrap`
+echo 	$pwd/6/6m	-I . die.myr ;	$pwd/6/6m	-I . die.myr 
+echo 	$pwd/6/6m	-I . sleq.myr ;	$pwd/6/6m	-I . sleq.myr 
+echo 	$pwd/6/6m	-I . hassuffix.myr ;	$pwd/6/6m	-I . hassuffix.myr 
+echo 	$pwd/6/6m	-I . extremum.myr ;	$pwd/6/6m	-I . extremum.myr 
+echo 	$pwd/6/6m	-I . units.myr ;	$pwd/6/6m	-I . units.myr 
+echo 	$pwd/6/6m	-I . alloc.myr ;	$pwd/6/6m	-I . alloc.myr 
+echo 	$pwd/6/6m	-I . rand.myr ;	$pwd/6/6m	-I . rand.myr 
+echo 	$pwd/6/6m	-I . slcp.myr ;	$pwd/6/6m	-I . slcp.myr 
+echo 	$pwd/6/6m	-I . sldup.myr ;	$pwd/6/6m	-I . sldup.myr 
+echo 	$pwd/6/6m	-I . now.myr ;	$pwd/6/6m	-I . now.myr 
+echo 	$pwd/6/6m	-I . sljoin.myr ;	$pwd/6/6m	-I . sljoin.myr 
+echo 	$pwd/6/6m	-I . result.myr ;	$pwd/6/6m	-I . result.myr 
+echo 	$pwd/6/6m	-I . slurp.myr ;	$pwd/6/6m	-I . slurp.myr 
+echo 	$pwd/6/6m	-I . strfind.myr ;	$pwd/6/6m	-I . strfind.myr 
+echo 	$pwd/6/6m	-I . dirname.myr ;	$pwd/6/6m	-I . dirname.myr 
+echo 	$pwd/6/6m	-I . introspect.myr ;	$pwd/6/6m	-I . introspect.myr 
+echo 	$pwd/6/6m	-I . slpush.myr ;	$pwd/6/6m	-I . slpush.myr 
+echo 	$pwd/6/6m	-I . strsplit.myr ;	$pwd/6/6m	-I . strsplit.myr 
+echo 	$pwd/6/6m	-I . fltbits.myr ;	$pwd/6/6m	-I . fltbits.myr 
+echo 	$pwd/6/6m	-I . chartype.myr ;	$pwd/6/6m	-I . chartype.myr 
+echo 	$pwd/6/6m	-I . cmp.myr ;	$pwd/6/6m	-I . cmp.myr 
+echo 	$pwd/6/6m	-I . hasprefix.myr ;	$pwd/6/6m	-I . hasprefix.myr 
+echo 	$pwd/6/6m	-I . utf.myr ;	$pwd/6/6m	-I . utf.myr 
+echo 	$pwd/6/6m	-I . intparse.myr ;	$pwd/6/6m	-I . intparse.myr 
+echo 	$pwd/6/6m	-I . slfill.myr ;	$pwd/6/6m	-I . slfill.myr 
+echo 	$pwd/6/6m	-I . bigint.myr ;	$pwd/6/6m	-I . bigint.myr 
+echo 	$pwd/6/6m	-I . strbuf.myr ;	$pwd/6/6m	-I . strbuf.myr 
+echo 	$pwd/6/6m	-I . fltfmt.myr ;	$pwd/6/6m	-I . fltfmt.myr 
+echo 	$pwd/6/6m	-I . hashfuncs.myr ;	$pwd/6/6m	-I . hashfuncs.myr 
+echo 	$pwd/6/6m	-I . htab.myr ;	$pwd/6/6m	-I . htab.myr 
+echo 	$pwd/6/6m	-I . `$pwd/sysselect.sh syswrap-ss`;	$pwd/6/6m	-I . `$pwd/sysselect.sh syswrap-ss`
+echo 	$pwd/6/6m	-I . varargs.myr ;	$pwd/6/6m	-I . varargs.myr 
+echo 	$pwd/6/6m	-I . fmt.myr ;	$pwd/6/6m	-I . fmt.myr 
+echo 	$pwd/6/6m	-I . optparse.myr ;	$pwd/6/6m	-I . optparse.myr 
+echo 	$pwd/6/6m	-I . `$pwd/sysselect.sh dir`;	$pwd/6/6m	-I . `$pwd/sysselect.sh dir`
+echo 	$pwd/6/6m	-I . ipparse.myr ;	$pwd/6/6m	-I . ipparse.myr 
+echo 	$pwd/6/6m	-I . `$pwd/sysselect.sh env`;	$pwd/6/6m	-I . `$pwd/sysselect.sh env`
+echo 	$pwd/6/6m	-I . execvp.myr ;	$pwd/6/6m	-I . execvp.myr 
+echo 	$pwd/6/6m	-I . slput.myr ;	$pwd/6/6m	-I . slput.myr 
+echo 	$pwd/6/6m	-I . spork.myr ;	$pwd/6/6m	-I . spork.myr 
+echo 	$pwd/6/6m	-I . getint.myr ;	$pwd/6/6m	-I . getint.myr 
+echo 	$pwd/6/6m	-I . blat.myr ;	$pwd/6/6m	-I . blat.myr 
+echo 	$pwd/6/6m	-I . clear.myr ;	$pwd/6/6m	-I . clear.myr 
+echo 	$pwd/6/6m	-I . `$pwd/sysselect.sh wait`;	$pwd/6/6m	-I . `$pwd/sysselect.sh wait`
+echo 	$pwd/6/6m	-I . strjoin.myr ;	$pwd/6/6m	-I . strjoin.myr 
+echo 	$pwd/6/6m	-I . mk.myr ;	$pwd/6/6m	-I . mk.myr 
+echo 	$pwd/6/6m	-I . putint.myr ;	$pwd/6/6m	-I . putint.myr 
+echo 	$pwd/6/6m	-I . mkpath.myr ;	$pwd/6/6m	-I . mkpath.myr 
+echo 	$pwd/6/6m	-I . endian.myr ;	$pwd/6/6m	-I . endian.myr 
+echo 	$pwd/6/6m	-I . strstrip.myr ;	$pwd/6/6m	-I . strstrip.myr 
+echo 	$pwd/6/6m	-I . `$pwd/sysselect.sh resolve`;	$pwd/6/6m	-I . `$pwd/sysselect.sh resolve`
+echo 	$pwd/6/6m	-I . pathjoin.myr ;	$pwd/6/6m	-I . pathjoin.myr 
+echo 	$pwd/6/6m	-I . bitset.myr ;	$pwd/6/6m	-I . bitset.myr 
+echo 	$pwd/6/6m	-I . fmtfuncs.myr ;	$pwd/6/6m	-I . fmtfuncs.myr 
+echo 	$pwd/6/6m	-I . try.myr ;	$pwd/6/6m	-I . try.myr 
+echo 	$pwd/6/6m	-I . sort.myr ;	$pwd/6/6m	-I . sort.myr 
+echo 	$pwd/6/6m	-I . search.myr ;	$pwd/6/6m	-I . search.myr 
+echo 	$pwd/6/6m	-I . getcwd.myr ;	$pwd/6/6m	-I . getcwd.myr 
+echo 	$pwd/6/6m	-I . swap.myr ;	$pwd/6/6m	-I . swap.myr 
+echo 	$pwd/6/6m	-I . `$pwd/sysselect.sh dial`;	$pwd/6/6m	-I . `$pwd/sysselect.sh dial`
+echo 	$pwd/muse/muse	-o std fmtfuncs.use fmt.use try.use pathjoin.use strjoin.use dir.use sljoin.use slpush.use strstrip.use htab.use now.use getcwd.use rand.use slurp.use varargs.use strbuf.use clear.use slput.use strsplit.use introspect.use alloc.use optparse.use fltbits.use sldup.use fltfmt.use extremum.use option.use slcp.use errno.use wait.use putint.use syswrap.use sort.use blat.use mk.use swap.use hassuffix.use execvp.use ipparse.use types.use strfind.use utf.use cstrconv.use search.use die.use units.use result.use bitset.use env.use resolve.use intparse.use hasprefix.use mkpath.use getint.use dirname.use sleq.use endian.use spork.use cmp.use syswrap-ss.use chartype.use bigint.use hashfuncs.use slfill.use dial.use ;	$pwd/muse/muse	-o std fmtfuncs.use fmt.use try.use pathjoin.use strjoin.use dir.use sljoin.use slpush.use strstrip.use htab.use now.use getcwd.use rand.use slurp.use varargs.use strbuf.use clear.use slput.use strsplit.use introspect.use alloc.use optparse.use fltbits.use sldup.use fltfmt.use extremum.use option.use slcp.use errno.use wait.use putint.use syswrap.use sort.use blat.use mk.use swap.use hassuffix.use execvp.use ipparse.use types.use strfind.use utf.use cstrconv.use search.use die.use units.use result.use bitset.use env.use resolve.use intparse.use hasprefix.use mkpath.use getint.use dirname.use sleq.use endian.use spork.use cmp.use syswrap-ss.use chartype.use bigint.use hashfuncs.use slfill.use dial.use 
 echo 	ar	-rcs libstd.a fmtfuncs.o fmt.o try.o pathjoin.o strjoin.o dir.o sljoin.o slpush.o strstrip.o htab.o now.o getcwd.o rand.o slurp.o varargs.o strbuf.o clear.o slput.o strsplit.o introspect.o alloc.o optparse.o fltbits.o sldup.o fltfmt.o extremum.o option.o slcp.o errno.o wait.o putint.o syswrap.o sort.o blat.o mk.o swap.o hassuffix.o execvp.o ipparse.o types.o strfind.o utf.o cstrconv.o search.o die.o units.o result.o bitset.o env.o resolve.o intparse.o hasprefix.o mkpath.o getint.o dirname.o sleq.o endian.o spork.o cmp.o syswrap-ss.o chartype.o bigint.o hashfuncs.o slfill.o dial.o ;	ar	-rcs libstd.a fmtfuncs.o fmt.o try.o pathjoin.o strjoin.o dir.o sljoin.o slpush.o strstrip.o htab.o now.o getcwd.o rand.o slurp.o varargs.o strbuf.o clear.o slput.o strsplit.o introspect.o alloc.o optparse.o fltbits.o sldup.o fltfmt.o extremum.o option.o slcp.o errno.o wait.o putint.o syswrap.o sort.o blat.o mk.o swap.o hassuffix.o execvp.o ipparse.o types.o strfind.o utf.o cstrconv.o search.o die.o units.o result.o bitset.o env.o resolve.o intparse.o hasprefix.o mkpath.o getint.o dirname.o sleq.o endian.o spork.o cmp.o syswrap-ss.o chartype.o bigint.o hashfuncs.o slfill.o dial.o 
 echo 	cd $pwd;	cd $pwd
-echo 	cd $pwd/libbio;	cd $pwd/libbio
-echo 	../6/6m	-I ../libstd bio.myr ;	../6/6m	-I ../libstd bio.myr 
-echo 	../6/6m	-I ../libstd puti.myr ;	../6/6m	-I ../libstd puti.myr 
-echo 	../6/6m	-I ../libstd geti.myr ;	../6/6m	-I ../libstd geti.myr 
-echo 	../muse/muse	-o bio puti.use bio.use geti.use ;	../muse/muse	-o bio puti.use bio.use geti.use 
+echo 	cd $pwd/lib/regex;	cd $pwd/lib/regex
+echo 	$pwd/6/6m	-I ../std types.myr ;	$pwd/6/6m	-I ../std types.myr 
+echo 	$pwd/6/6m	-I ../std interp.myr ;	$pwd/6/6m	-I ../std interp.myr 
+echo 	$pwd/6/6m	-I ../std ranges.myr ;	$pwd/6/6m	-I ../std ranges.myr 
+echo 	$pwd/6/6m	-I ../std compile.myr ;	$pwd/6/6m	-I ../std compile.myr 
+echo 	$pwd/muse/muse	-o regex interp.use types.use compile.use ranges.use ;	$pwd/muse/muse	-o regex interp.use types.use compile.use ranges.use 
+echo 	ar	-rcs libregex.a interp.o types.o compile.o ranges.o ;	ar	-rcs libregex.a interp.o types.o compile.o ranges.o 
+echo 	cd $pwd;	cd $pwd
+echo 	cd $pwd/lib/bio;	cd $pwd/lib/bio
+echo 	$pwd/6/6m	-I ../std bio.myr ;	$pwd/6/6m	-I ../std bio.myr 
+echo 	$pwd/6/6m	-I ../std puti.myr ;	$pwd/6/6m	-I ../std puti.myr 
+echo 	$pwd/6/6m	-I ../std geti.myr ;	$pwd/6/6m	-I ../std geti.myr 
+echo 	$pwd/muse/muse	-o bio puti.use bio.use geti.use ;	$pwd/muse/muse	-o bio puti.use bio.use geti.use 
 echo 	ar	-rcs libbio.a puti.o bio.o geti.o ;	ar	-rcs libbio.a puti.o bio.o geti.o 
 echo 	cd $pwd;	cd $pwd
-echo 	cd $pwd/libregex;	cd $pwd/libregex
-echo 	../6/6m	-I ../libstd types.myr ;	../6/6m	-I ../libstd types.myr 
-echo 	../6/6m	-I ../libstd interp.myr ;	../6/6m	-I ../libstd interp.myr 
-echo 	../6/6m	-I ../libstd ranges.myr ;	../6/6m	-I ../libstd ranges.myr 
-echo 	../6/6m	-I ../libstd compile.myr ;	../6/6m	-I ../libstd compile.myr 
-echo 	../muse/muse	-o regex interp.use types.use compile.use ranges.use ;	../muse/muse	-o regex interp.use types.use compile.use ranges.use 
-echo 	ar	-rcs libregex.a interp.o types.o compile.o ranges.o ;	ar	-rcs libregex.a interp.o types.o compile.o ranges.o 
-echo 	../6/6m	-I . -I ../libbio -I ../libstd redump.myr ;	../6/6m	-I . -I ../libbio -I ../libstd redump.myr 
-echo 	ld	-o redump ../rt/_myrrt.o redump.o -L. -L../libbio -L../libstd -lregex -lbio -lstd -lsys ;	ld	-o redump ../rt/_myrrt.o redump.o -L. -L../libbio -L../libstd -lregex -lbio -lstd -lsys 
+echo 	cd $pwd/lib/regex;	cd $pwd/lib/regex
+echo 	$pwd/6/6m	-I . -I ../bio -I ../std redump.myr ;	$pwd/6/6m	-I . -I ../bio -I ../std redump.myr 
+echo 	ld	-o redump $pwd/rt/_myrrt.o redump.o -L. -L../bio -L../std -lregex -lbio -lstd -lsys ;	ld	-o redump $pwd/rt/_myrrt.o redump.o -L. -L../bio -L../std -lregex -lbio -lstd -lsys 
 echo 	cd $pwd;	cd $pwd
+echo 	cd $pwd/lib/cryptohash;	cd $pwd/lib/cryptohash
+echo 	$pwd/6/6m	-I ../std sha1.myr ;	$pwd/6/6m	-I ../std sha1.myr 
+echo 	$pwd/6/6m	-I ../std sha512.myr ;	$pwd/6/6m	-I ../std sha512.myr 
+echo 	$pwd/6/6m	-I ../std sha256.myr ;	$pwd/6/6m	-I ../std sha256.myr 
+echo 	$pwd/6/6m	-I ../std md5.myr ;	$pwd/6/6m	-I ../std md5.myr 
+echo 	$pwd/muse/muse	-o cryptohash md5.use sha1.use sha512.use sha256.use ;	$pwd/muse/muse	-o cryptohash md5.use sha1.use sha512.use sha256.use 
+echo 	ar	-rcs libcryptohash.a md5.o sha1.o sha512.o sha256.o ;	ar	-rcs libcryptohash.a md5.o sha1.o sha512.o sha256.o 
+echo 	cd $pwd;	cd $pwd
 echo 	cd $pwd/mbld;	cd $pwd/mbld
-echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd config.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd config.myr 
-echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd opts.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd opts.myr 
-echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd types.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd types.myr 
-echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd util.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd util.myr 
-echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd deps.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd deps.myr 
-echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd syssel.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd syssel.myr 
-echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd parse.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd parse.myr 
-echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd build.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd build.myr 
-echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd install.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd install.myr 
-echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd clean.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd clean.myr 
-echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd test.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd test.myr 
-echo 	../6/6m	-I ../libregex -I ../libbio -I ../libstd main.myr ;	../6/6m	-I ../libregex -I ../libbio -I ../libstd main.myr 
-echo 	ld	-o mbld ../rt/_myrrt.o clean.o config.o deps.o types.o syssel.o util.o parse.o main.o build.o opts.o install.o test.o -L../libregex -L../libbio -L../libstd -lregex -lbio -lstd -lsys ;	ld	-o mbld ../rt/_myrrt.o clean.o config.o deps.o types.o syssel.o util.o parse.o main.o build.o opts.o install.o test.o -L../libregex -L../libbio -L../libstd -lregex -lbio -lstd -lsys 
+echo 	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std config.myr ;	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std config.myr 
+echo 	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std opts.myr ;	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std opts.myr 
+echo 	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std types.myr ;	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std types.myr 
+echo 	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std util.myr ;	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std util.myr 
+echo 	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std deps.myr ;	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std deps.myr 
+echo 	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std syssel.myr ;	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std syssel.myr 
+echo 	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std parse.myr ;	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std parse.myr 
+echo 	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std build.myr ;	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std build.myr 
+echo 	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std install.myr ;	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std install.myr 
+echo 	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std clean.myr ;	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std clean.myr 
+echo 	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std test.myr ;	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std test.myr 
+echo 	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std main.myr ;	$pwd/6/6m	-I $pwd/lib/regex -I $pwd/lib/bio -I $pwd/lib/std main.myr 
+echo 	ld	-o mbld $pwd/rt/_myrrt.o clean.o config.o deps.o types.o syssel.o util.o parse.o main.o build.o opts.o install.o test.o -L$pwd/lib/regex -L$pwd/lib/bio -L$pwd/lib/std -lregex -lbio -lstd -lsys ;	ld	-o mbld $pwd/rt/_myrrt.o clean.o config.o deps.o types.o syssel.o util.o parse.o main.o build.o opts.o install.o test.o -L$pwd/lib/regex -L$pwd/lib/bio -L$pwd/lib/std -lregex -lbio -lstd -lsys