Yep, I did exactly the same. With kencc+a-few-patches+plan9port+few-symlinks you can easily cross compile plan9.
See my kencc fork changes: https://github.com/aryx/fork-kencc/commits/master (and my fork 9 fork: https://github.com/aryx/fork-plan9 ) On Jul 14, 2014, at 3:19 PM, David du Colombier <0in...@gmail.com<mailto:0in...@gmail.com>> wrote: Since I am building everything on Unix, and am using the Unix shell (bash in my case), I had to rewrite much of the mkfile rules, specifically ones that deal with loops, conditionals and substituting outputs from commands. Because all those rules are simple, this was a trivial task. I also needed to change sed programs embedded all over the place to be understandable to my systems sed. If you use plan9port's mk, you can define MKSHELL=rc in the mkfiles, instead of translating them to bash. In the same way, you can place $PLAN9/bin at the beginning of your PATH to use plan9port's sed instead of the Unix one. In my side, I also tried to compile the Plan 9 programs and libraries on Unix using Charles' toolchain. It was working pretty fine. The main issue I encountered was the lack of support for long Runes in his version. Thus, I simply copied the related code from Plan 9: https://urldefense.proofpoint.com/v1/url?u=http://www.9legacy.org/9legacy/patch/kencc-rune.diff&k=ZVNjlDMF0FElm4dQtryO4A%3D%3D%0A&r=%2FN9d7W2LRwZks3eyFNLr8Q%3D%3D%0A&m=aLQhZbTqEOAyTguyZu3l8YOQdmbEXDfuDYgNH8idwCE%3D%0A&s=a9410420e661f42c32ce304cfe6fe28914154e91a65bd7c1c9e5f0f341b0b146 -- David du Colombier