ObjFW  Porting Obj-FW to a Hobby OS

Interesting project! I like the themes 🙂. Side note, though: Why are there only ZIP files of the source checked into the Git repo?

On topic: ObjFW should be a perfect fit for this, given that it supports a large range of very different OSes already, some of them having what can barely qualify as an excuse for a libc 😉. As well as running on embedded.

To get started, I would recommend to run configure with something like this:
```
./configure --host=x86_64-pc-unknown-elf --disable-shared --disable-threads --disable-sockets --disable-files
```
(Replace `--host=x86_64-pc-unknown-elf` with whatever triple your cross-compiler uses)

This should give you an ObjFW that requires no functionality from the OS and only a somewhat working libc for memory allocation etc. If you run into any problems with basically all features disabled, please provide compilation logs / describe errors, and I can see to make ObjFW not use what you are currently missing. It's possible that it currently requires something that all platforms happened to have in common by pure chance, though I think that's quite unlikely.

The next step then is probably that you want files, as those also give you the standard input and outputs. ObjFW currently assumes that there is `open()`, `read()`, `write()` and `close()` for this, though if it's helpful, I could also let it fall back to `fopen()`, `fread()`, `fwrite()` and `fclose()`. But so far, I have not found a system that only has the `f*` variant, despite the `f*` ones being C99 and the ones without `f` only being POSIX.

I suppose sockets aren't supported by your OS, so that probably should be kept disabled. Threads either use an OS-specific API or, if it does not know about an OS-specific API, checks if the OS supports pthreads. Shared library support just requires your OS to support, well, shared libraries (it assumes you are on ELF and use .so files if it does not know the OS).