Re: [9fans] Busy mouse WAS: Re: Making read(1) an rc(1) builtin?
My load is also close to zero, when just moving the mouse. If, for example, I do a du -a in an Acme win window, the mouse disappears and/or becomes unusuably slow until Acme finishes. sounds like a video issue, rather than a mouse issue. i imagine that your machine is just slow. Acme also hangs for me while retrieving files and directory listings on /n/sources. Although the mouse remains responsive during that time, Acme becomes unresponsive... not even selecting text with the button1 works. that's how it works. acme's threading model means that everything comes to a screeching halt when you load a file. you just don't notice the delay when it's local. the mouse, the i would think that the fact that your machine is doing 8259-style interrupts has something to do with it. No hablo 8259. ?? http://en.wikipedia.org/wiki/Intel_8259 like the reptilian part of your brain, it proves that evolution is a bad housekeeper. - erik
Re: [9fans] Plan 9 port of the Go toolchain
.../src/cmd/8a/asm.c, around line #900: /* This null SHdr must appear before all others */ sh = newElfShdr(elfstr[ElfStrEmpty]); My guess is that this needs to be followed by an instruction to write out the header, which in fact does not take place. The code is corect. newElfShdr updates a global table. You can delete the sh = but not the whole line. 308c308 archreloc(Reloc *r, Sym *s, vlong *val) --- archreloc(Reloc *r, Sym *, vlong *val) If you insert USED(s) as a statement in the body of the function, we can take back the change. Russ
Re: [9fans] Go Plan 9
Hello, I'm unable to make go plan9 crosscompiler. Can you help me? # I use patched repo hg qclone https://bitbucket.org/paulzhol/golang-plan9-runtime-patches go cd go hg qpush -a # build as usual export GOROOT=`pwd` export GOOS=linux export GOBIN=$GOROOT/bin export PATH=$GOBIN:$PATH mkdir -p $GOROOT/bin cd $GOROOT/src . ./make.bash # prepare pkgs cd $GOROOT/src/pkg make clean export GOOS=plan9 make # and get make -C net install make[1]: Entering directory `/home/sergeykish/abs/go/src/go-build/src/pkg/net' make[1]: *** No rule to make target `fd_plan9.go', needed by `_go_.8'. Stop. make[1]: Leaving directory `/home/sergeykish/abs/go/src/go-build/src/pkg/net' What now?
Re: [9fans] Go Plan 9
is there a reason you didn't build it from the official Go sources? i only needed to make a couple of tweaks (see the patch below) to build it. a couple of things to watch out for: - make sure you have two different GOBIN's; one for your local Linux box and the other for making the Plan 9 binaries - be sure to have the right GOBIN in the first part of your PATH for your target environment i use drawterm from the build box and then i can execute Plan 9 binaries produced by 8[gl] from /mnt/term/whatever -Skip $ hg diff diff -r b002b8e25d25 src/pkg/Makefile --- a/src/pkg/Makefile Tue Apr 05 18:07:01 2011 -0400 +++ b/src/pkg/Makefile Sat Apr 09 11:18:04 2011 -0700 @@ -106,7 +106,6 @@ image/png\ index/suffixarray\ io\ - io/ioutil\ json\ log\ math\ @@ -139,7 +138,6 @@ sync/atomic\ syscall\ syslog\ - tabwriter\ template\ testing\ testing/iotest\ @@ -206,6 +204,14 @@ NOTEST+=net syslog endif +# Disable packages that plan9 doesn't support yet +ifneq ($(GOOS),plan9) +DIRS+=\ + tabwriter\ + io/ioutil\ + +endif + # Disable tests that windows cannot run yet. ifeq ($(GOOS),windows) NOTEST+=os/signal# no signals diff -r b002b8e25d25 src/pkg/path/filepath/Makefile --- a/src/pkg/path/filepath/MakefileTue Apr 05 18:07:01 2011 -0400 +++ b/src/pkg/path/filepath/MakefileSat Apr 09 11:18:04 2011 -0700 @@ -15,6 +15,9 @@ GOFILES_darwin=\ path_unix.go +GOFILES_plan9=\ + path_unix.go + GOFILES_linux=\ path_unix.go diff -r b002b8e25d25 src/pkg/time/Makefile --- a/src/pkg/time/Makefile Tue Apr 05 18:07:01 2011 -0400 +++ b/src/pkg/time/Makefile Sat Apr 09 11:18:04 2011 -0700 @@ -21,6 +21,9 @@ GOFILES_linux=\ zoneinfo_unix.go\ +GOFILES_plan9=\ + zoneinfo_unix.go\ + GOFILES_windows=\ zoneinfo_windows.go\ On Sat, Apr 9, 2011 at 10:51 AM, Sergey Kish sergey.k...@gmail.com wrote: Hello, I'm unable to make go plan9 crosscompiler. Can you help me? # I use patched repo hg qclone https://bitbucket.org/paulzhol/golang-plan9-runtime-patches go cd go hg qpush -a # build as usual export GOROOT=`pwd` export GOOS=linux export GOBIN=$GOROOT/bin export PATH=$GOBIN:$PATH mkdir -p $GOROOT/bin cd $GOROOT/src . ./make.bash # prepare pkgs cd $GOROOT/src/pkg make clean export GOOS=plan9 make # and get make -C net install make[1]: Entering directory `/home/sergeykish/abs/go/src/go-build/src/pkg/net' make[1]: *** No rule to make target `fd_plan9.go', needed by `_go_.8'. Stop. make[1]: Leaving directory `/home/sergeykish/abs/go/src/go-build/src/pkg/net' What now?
Re: [9fans] Go Plan 9
Try make -k install like in the wiki instructions. This should continue building packages even if some fail to compile. On Apr 9, 2011 8:53 PM, Sergey Kish sergey.k...@gmail.com wrote: Hello, I'm unable to make go plan9 crosscompiler. Can you help me? # I use patched repo hg qclone https://bitbucket.org/paulzhol/golang-plan9-runtime-patches go cd go hg qpush -a # build as usual export GOROOT=`pwd` export GOOS=linux export GOBIN=$GOROOT/bin export PATH=$GOBIN:$PATH mkdir -p $GOROOT/bin cd $GOROOT/src . ./make.bash # prepare pkgs cd $GOROOT/src/pkg make clean export GOOS=plan9 make # and get make -C net install make[1]: Entering directory `/home/sergeykish/abs/go/src/go-build/src/pkg/net' make[1]: *** No rule to make target `fd_plan9.go', needed by `_go_.8'. Stop. make[1]: Leaving directory `/home/sergeykish/abs/go/src/go-build/src/pkg/net' What now?
Re: [9fans] Go Plan 9
The mainline go will not compile syscall after the last post-weekly tag due to the mmap support. Russ wrote he'll look into it next week. I try to maintain the bitbucket patch que with CLs still being reviewed (Anthony's time changes for example) so people can test them as a whole. There is no need for two different GOBINs, the same 8g/8l you built for eg. Linux are able to produce Linux ELFs and Plan 9 a.out simply by changing to GOOS environment variable. Pavel On Apr 9, 2011 9:26 PM, Skip Tavakkolian skip.tavakkol...@gmail.com wrote:
Re: [9fans] Go Plan 9
Great info! thanks. -Skip On Sat, Apr 9, 2011 at 11:53 AM, Pavel Zholkover paulz...@gmail.com wrote: The mainline go will not compile syscall after the last post-weekly tag due to the mmap support. Russ wrote he'll look into it next week. I try to maintain the bitbucket patch que with CLs still being reviewed (Anthony's time changes for example) so people can test them as a whole. There is no need for two different GOBINs, the same 8g/8l you built for eg. Linux are able to produce Linux ELFs and Plan 9 a.out simply by changing to GOOS environment variable. Pavel On Apr 9, 2011 9:26 PM, Skip Tavakkolian skip.tavakkol...@gmail.com wrote:
[9fans] Go Plan 9
Sorry, Skip was right.. It looks like make install in src/pkg will also build and overwrite some of the cmd tools already in your GOBIN with Plan 9 a.out. This is probably not what you were looking for. The new build incantation is: cd $GOROOT/src/pkg make clean mkdir -p $GROOT/bin/plan9 GOOS=plan9 GOBIN=$GOROOT/bin/plan9 make -k install Pavel On Sat, Apr 9, 2011 at 10:04 PM, Skip Tavakkolian skip.tavakkol...@gmail.com wrote: Great info! thanks. -Skip On Sat, Apr 9, 2011 at 11:53 AM, Pavel Zholkover paulz...@gmail.com wrote: The mainline go will not compile syscall after the last post-weekly tag due to the mmap support. Russ wrote he'll look into it next week. I try to maintain the bitbucket patch que with CLs still being reviewed (Anthony's time changes for example) so people can test them as a whole. There is no need for two different GOBINs, the same 8g/8l you built for eg. Linux are able to produce Linux ELFs and Plan 9 a.out simply by changing to GOOS environment variable. Pavel On Apr 9, 2011 9:26 PM, Skip Tavakkolian skip.tavakkol...@gmail.com wrote:
Re: [9fans] Go Plan 9
The new build incantation is: cd $GOROOT/src/pkg make clean mkdir -p $GROOT/bin/plan9 GOOS=plan9 GOBIN=$GOROOT/bin/plan9 make -k install I won't try this until the mmap problem you refer to is resolved, so a question is in order: are the plan 9 tools essential to the operation of 8l with GOOS=plan9 and will they be found by default or will one need to make sure that the PATH is set to find them ahead of the Linux ones? Wait. You are talking about a.out executables, these are specifically for the Plan 9 environment, aren't they? I guess I need to look for myself :-) Alternatively, is it sufficient to specify a different GOBIN or does the PATH need to be changed? I think I know the answer to this question is that the PATH needs changing, but I am normally wrong in these matters. ++L