This helps caching between runs and can help speed up turnaround time for
various operations. The old android container didn't work out for some reason
due to permissions so the definition has now been vendored locally to just
rebuild it each time.
FreeBSD svn r262489 removed some *_MAXID definitions in sys/sysctl.h. They never
should've been used outside of the FreeBSD base system anyway. Mark them as
deprecated, hide them from the API docs, and disable their tests.
r273250 removed MAP_RENAME and MAP_NORESERVE, flags used by mmap(2), but old
binaries that use them will still work. Suppress their test errors.
r294930 changed stack_t.ss_sp from a char* to a void*. Suppress its test error.
MIPS32 and MIPS64 userspaces are mostly the same save the obvious ABI
difference, hence most of the const definitions could be shared.
This commit is not introducing any new significant additions, but mostly
just shuffles the existing files around to make the directory structure
more similar to the other, more mature platforms. The structs and extern
fn definitions are not touched. Plus a couple of new consts for MIPS64
to match MIPS32 coverage:
* `RLIM_INFINITY`
* `SYS_gettid`
Passed `libc-test` on Gentoo MIPS64el (n64 ABI), on a Loongson 3A2000
box. The test suite itself needs some more love to actually compile
cleanly on MIPS (`ctest` transitively depends on ancient `libc` version
which doesn't build on MIPS), but let's save that for another day.
Where structures included unions, I only defined the most useful member. This
means that sigevents can't be delivered using SIGEV_THREAD until Rust gets better
union support (SIGEV_THREAD_ID still works).
The `mipsel` `target_arch` was introduced with the initial MIPSel
support (rust-lang/rust@82ec1aef29),
but was subsequently removed with implementation of the Flexible Target
Specification (Rust RFC 0131,
rust-lang/rust@3a8f4ec32a).
Remove these to be consistent with other arches and reduce confusion.
I've very slightly formatted the deletions so as to not require a style
cleanup later and obscure `git blame` output.