[PATCH] posix conformance listing

David Krakov krakov at gmail.com
Sat May 16 22:34:13 UTC 2009


Hi,

Attached a start for POSIX conformance documentation for busybox (see
TODO file and discussion last week ).
A table of all options as defined by POSIX and as implemented by
busybox (see for a FreeBSD example
http://people.freebsd.org/~schweikh/posix-utilities.html).

Only the tools that are stand-alone applets are documented (not ash
built-ins as 'read'), as there are multiple shells.
When there are two versions (echo) the stand-alone version was
checked. I think this may be the wrong way to go, as most users will
probably use the built-in version - but which shell?

The table was auto-generated by running, for each POSIX utility,
latest git allyesconfig* "busybox <tool> --help" and parsing the
output, and comparing that to tool options extracted from its man page
at http://www.opengroup.org/onlinepubs/9699919799/.
This means that it the usage string is not correct, the table is also
wrong. I noticed that for 'kill', for example, the usage string does
not mention the -s, -q, -o options.
For each option is set whether it exists in busybox and if it is, is
it compliant to the standard. Of course, checking compliance can only
be done manually - a process which will probably take some time (see
'cat' for example).

I didn't post the auto-generation script (python, ugly) because the
table will now change manually; I can post it if there is anyone
interested.

As for the tools not implemented by busybox at all, I think most of
them are indeed fairly esotetic. Some I was suprised to see missing
are link, file, newgrp, unlink.

* Well, *almost* allyesconfig - but nothing very POSIX-y was disabled.

David.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: conf.diff
Type: text/x-diff
Size: 24163 bytes
Desc: not available
URL: <http://lists.busybox.net/pipermail/busybox/attachments/20090517/944f2f61/attachment-0001.bin>


More information about the busybox mailing list