mirage/mirage-platform — pull request #93 by talex5 (2014-07-02 15:56:08+00:00)
Title: [RFC] Upgrade to new (separate) kernel and libm, and drop dietlibc

This patch removes dietlibc, libm and most of the includes, replacing them with external dependencies on Mini-OS and openlibm. I separated out the deletions into their own commits so they don't drown out the other changes.

These changes do not themselves add support for ARM, but they do make it very easy to add, since the new Mini-OS and openlibm both support ARM, unlike the old code.

There is no replacement libc. It turned out that the only thing we needed was support for formatting floating point values. I took the code for that from musl (the FreeBSD code was large and difficult to separate out).

To test:

1. Download and install libminios from https://github.com/talex5/xen/releases/tag/minios-v0.1
2. Download and install openlibm from https://github.com/talex5/openlibm/releases/tag/v0.3.1-tal1
3. Use with mirage from https://github.com/talex5/mirage/commits/master

The openlibm release is from upstream master (while we're waiting for an official release). The ARM support on the minios branch is currently under review, while the changes to make it a library have not been reviewed at all.