Hi all, 2015-06-30 6:55 GMT+08:00 Isaac Dunham <[email protected]>: > On Sun, Jun 28, 2015 at 10:57:00PM -0400, Rich Felker wrote: >> On Sun, Jun 28, 2015 at 06:15:26PM -0500, Rob Landley wrote: >> > > Are there perhaps any other shells that work on nommu? It would be >> > > nice to be able to put off toysh until you have time to do a really >> > > good job on it rather than rushing it because there's nothing else you >> > > can use... >> > >> > Eh, I can do it in stages. And setting up another shell is effort (and >> > natural test/use cases) that's _not_ going into toysh development, so >> > I'd rather do it right than do other things that get thrown away. >> > >> > That said, sure, http://www.cod5.org/archive/ links to es and pdksh for >> > example, and uclibc had like 5 of them (all kinda crappy if I recall). >> > None really an improvement on hush in terms of actually building stuff. >> >> I'm pretty sure pdksh conforms to POSIX (at least the 1992 version) so >> it's probably sufficient for running portable scripts including all >> configure scripts. I know your goal is much higher (bash >> compatibility) but it sounds like pdksh could get you a working >> environment until you finish toysh, with little or no effort spent on >> the temporary solution. > > Some comments: > - pdksh is a lot closer to bash compatability than "conforms to the 1992 > edition of POSIX" would imply. > This is partly because bash copied many of its feaures from ksh. > > - there *are* configure scripts that need bash--I don't remember the > software, but I have run into them. Of course, I've also seen configure > scripts that used ed and software that required the old csh (the one > that got "&&" and "||" backwards) to build. > I never looked into exactly what was required, though: I just rm'd > anything like that. > configure scripts used to be portable, but nowdays they often just try. > > - pdksh works almost everywhere, but this is portability the hard way: > there are special cases for every *nix of the time, as well as *every* > other OS (yes, DOS and EMX support included...and probably VMS as well). > And the code is every bit as ugly as one would infer from that, and > quite possibly more so. > > So theoretically, there probably is a code path that works with nommu. > But it will almost certainly be nontrivial to even identify it, let > alone get nommu properly detected and support automatically built. > > - OpenBSD ships a version of ksh that has been minimally altered as > their /bin/sh; this is the basis for loksh. It has been modified > only minimally. > > I think it's entirely sensible for Rob to not poke at pdksh; getting it > to work right on all Aboriginal's platforms is likely to be a large > drain. If someone else wants to fix it up and patch Aboriginal until > they can pass the smoketests on all platforms, accepting their patch > to use pdksh in Aboriginal might be sensible; but before that, it's > too big a project for a temporary gain. >
Regarding pdksh, IIRC it uses fork() for subshells (just like mksh). I wonder how can it work in NoMMU environment. > > Thanks, > Isaac Dunham > > > _______________________________________________ > Toybox mailing list > [email protected] > http://lists.landley.net/listinfo.cgi/toybox-landley.net _______________________________________________ Toybox mailing list [email protected] http://lists.landley.net/listinfo.cgi/toybox-landley.net
