# Warning Theses notes are deprecated since Charles Forsyth's code was moved: - Charles Forsyth's compilers are now available on https://bitbucket.org/plan9-from-bell-labs/plan9 - Charles Forsyth's kernel is now available on https://bitbucket.org/forsyth/plan9-9k # Charles Forsyth's 9k repository git clone https://github.com/slowly-code-a-world/enhanced-plan9 cd /tmp/enhanced-plan9 mkdir /sys/src/9k dircp 9K /sys/src/9k for(i in PART1/*){ j=`{basename $i} dircp $i /$j } for(i in PART2/*){ j=`{basename $i} dircp $i /sys/$j } for(i in PART3/*){ j=`{basename $i} dircp $i /sys/$j } for(i in PART4/*){ j=`{basename $i} dircp $i /sys/src/9k/$j } for(i in AMD64_compiler/*){ j=`{basename $i} rm -rf /sys/src/cmd/$i dircp $i /sys/src/cmd/$j rm -rf /sys/src/cmd/6l/notes } # create empty directories dir=(\ /acme/bin/amd64\ /amd64/bin/ape\ /amd64/bin/ape\ /amd64/bin/auth\ /amd64/bin/aux\ /amd64/bin/bitsy\ /amd64/bin/dial\ /amd64/bin/disk\ /amd64/bin/fossil\ /amd64/bin/fs\ /amd64/bin/games\ /amd64/bin/ip\ /amd64/bin/ip/httpd\ /amd64/bin/ndb\ /amd64/bin/replica\ /amd64/bin/upas\ /amd64/bin/usb\ /amd64/bin/venti\ /amd64/lib/ape\ ) for(i in $dir) { rm -rf $i mkdir $i } # patch sorig /sys/src/libc/9syscall/mkfile | rc hget http://www.9legacy.org/9legacy/patch/9k-nsec.diff | ape/patch -p0 # compile for(i in /sys/src/cmd/6?) {cd $i && mk install && mk clean} cd /sys/src && objtype=amd64 {mk nuke && mk install && mk clean} dd -if /dev/zero -of /sys/src/9k/root/nvram -bs 512 -count 1 > /sys/src/9k/k10/uncached.h > /sys/src/9k/k10/adr.h cd /sys/src/9k/k10 && rm -f ../port/systab.[ch] && objtype=amd64 {mk nuke && mk CONF'='k10cpu install && mk nuke} rm -f /sys/src/9k/386/*.i /sys/src/9k/port/systab.[ch] /sys/src/9k/root/nvram # generate patches sdiff /sys/src/cmd/6a /sys/src/cmd/6c /sys/src/cmd/6l | night > /n/web/www.9legacy.org/9legacy/patch/forsyth-6c.diff sdiff /sys/src/libsec/amd64 /sys/src/libc/amd64 /sys/src/ape/lib/9/amd64 /sys/src/ape/lib/sec/amd64 /sys/src/ape/lib/mp/amd64 /sys/src/ape/lib/ap/amd64 /sys/src/libmp/amd64 /amd64/include | night > /n/web/www.9legacy.org/9legacy/patch/forsyth-amd64.diff sdiff /sys/src/libaml /sys/include/aml.h /sys/include/ptrace.h | night > /n/web/www.9legacy.org/9legacy/patch/forsyth-libaml.diff sdiff /sys/src/9k | night > /n/web/www.9legacy.org/9legacy/patch/forsyth-9k.diff hget http://www.9legacy.org/9legacy/patch/nix-nsec.diff | sed s/nix/9k/ > /n/web/www.9legacy.org/9legacy/patch/9k-nsec.diff