And permission to forward the reply to the list... Rob
-------- Original Message -------- Subject: Re: Inquiry Date: Wed, 28 May 2014 14:16:44 -0500 From: Rob Landley <[email protected]> To: [email protected] On 05/28/14 06:01, Stacy Kenworthy wrote: > Hi Rob, > > What would be the most helpful to the project at this point? More > development resources? Short answer, "more scripts/test/*.test entries written from the online POSIX docs". Long answer: helpful to which project, Aboriginal Linux, Toybox, or self-hosting Android? Aboriginal Linux is semi-mothballed because it hit its 1.0 release goals and now "does what it says on the tin". It rebuilds itself under itself, and builds Linux From Scratch, without any gnu packages except the toolchain. (Making that happen involved me becoming busybox maintainer for a couple years because I was doing more development than Erik was.) I'm using it as a toybox test harness (replace one busybox command with a toybox implementation, build it and build LFS under it, rinse repeat) until I run out of busybox commands to replace. I also need to replace uClibc with musl, which is more time consuming than hard. (Long-term, I want to do http://landley.net/qcc and one thing that needs to do is accept the gcc command line options. I made my toolchain relocatable with a wrapper binary that parses the gcc command line and rewrites it to start with --nostdinc --nostdlib and then explicitly say where to find all the headers and libraries and .o files the build uses. This wrapper was originally part of uClibc, abandoning said wrapper is how bulidroot got started. I think I explained that in http://landley.net/aboriginal/history.html if you're _really- bored. Anyway, writing a new version of that wrapper that's A) not a giant mass of scar tissue from too much patching by too many different people, B) not uClibc-centric, C) public domain instead of GPL, is useful for qcc so I'm letting the rewrite block aboriginal->musl migration to force me to _do_ said rewrite. The old one's in aboriginal/sources/toys/ccwrap.c if you're curious.) Toybox needs more users and testers, and it needs more cleanup work. Just trying to actually use the commands that are there in something real, and telling me if they work for you is quite helpful. (Well, the ones enabled by "make defconfig", anyway. The commands in "pending" should all default no because they've got various known problems and limitations.) I've put up a http://landley.net/toybox/cleanup.html page describing some of my "turn a 1500 line ifconfig into a 500 line ifconfig" work. The "pending" directory is full of stuff I haven't managed to clean up yet. I _desperately_ need more test suite entries, scripts/test doesn't have nearly full coverage. (You can run one test with "scripts/test.sh commandname" or run them all with "make test". In theory going through http://pubs.opengroup.org/onlinepubs/9699919799/idx/utilities.html finding commands we've already implemented and making test entries about everything the spec says (not just "what we should accept" but "what we should _fail_ on") would be great. It's also really nit-picky and time consuming. (I usually copy "cat.test" as a template, but if some tests should only run when certain config entries are enabled sort.test shows that, and chgrp has a "should only run as root" test. I've been meaning to do an aboriginal linux build control image that runs the toybox test suite as root in a known environment, that way tests for things like "mount" count be done without screwing up somebody's host if something goes wrong...) (Yes, automated regression testing with respect to standards documents is a thing I care about, even before the 1.0 release. :) For the android self-hosting thing, all of the above advances it (aboriginal with musl, toybox, llvm, and the android kernel is 3/4 of the way to self-hosting android). I need to bang on http://ellcc.org but the last time I tried it the results weren't pretty: http://ellcc.org/blog/?p=231 http://landley.net/notes-2014.html#08-03-2014 http://landley.net/notes-2014.html#20-01-2014 The last real discussion of that on the list was november: http://lists.landley.net/pipermail/aboriginal-landley.net/2013-November/date.html I note that ellcc was still using binutils, because http://lld.llvm.org "wasn't ready yet" (whatever that means). (There's a reason I still want to do qcc even if llvm starts working for this. If http://pcc.ludd.ltu.se/ revives that would be good too. Either needs a 'cfront' update to bootstrap llvm though...) Plus trying to build AOSP under Aboriginal, but that's "the distro bootstrapping problem". Which I'm sure I covered in my blog, and was probably also in https://speakerdeck.com/mirell/developing-for-non-x86-targets-using-qemu too. ("Firmware Linux" was the old name for Aboriginal Linux.) P.S. Do you mind if I cc: this response to the mailing list? Rob _______________________________________________ Toybox mailing list [email protected] http://lists.landley.net/listinfo.cgi/toybox-landley.net
