]> git.lizzy.rs Git - rust.git/commit
std: Add compatibility with android-9
authorAlex Crichton <alex@alexcrichton.com>
Mon, 25 Apr 2016 20:39:05 +0000 (13:39 -0700)
committerAlex Crichton <alex@alexcrichton.com>
Wed, 27 Apr 2016 16:28:48 +0000 (09:28 -0700)
commitc31e2e77ed955faafffe7b22859f045cc1e5deec
treef5e315e9518b6c78f18b40a55d70bcc0da86db56
parentcfae4dea875ddcc5f23481106a149ea15b6be1e5
std: Add compatibility with android-9

The Gecko folks currently use Android API level 9 for their builds, so they're
requesting that we move back our minimum supported API level from 18 to 9. Turns
out, ABI-wise at least, there's not that many changes we need to take care of.
The `ftruncate64` API appeared in android-12 and the `log2` and `log2f` APIs
appeared in android-18. We can have a simple shim for `ftruncate64` which falls
back on `ftruncate` and the `log2` function can be approximated with just
`ln(f) / ln(2)`.

This should at least get the standard library building on API level 9, although
the tests aren't quite happening there just yet. As we seem to be growing a
number of Android compatibility shims, they're now centralized in a common
`sys::android` module.
src/libstd/num/f32.rs
src/libstd/num/f64.rs
src/libstd/sys/unix/android.rs [new file with mode: 0644]
src/libstd/sys/unix/fs.rs
src/libstd/sys/unix/mod.rs