Skip to content

An umbrella repository for Rust std on PlayStation Vita with newlib

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

vita-rust/vita-newlib-shims

Repository files navigation

vita-newlib-shims

MIT/Apache 2.0 Crates.io GitHub Actions Build Status Current Release Main Commits RSS Feed

Standard library support for PlayStation Vita in Rust relies on Vita SDK newlib. Unfortunately, not all of the POSIX functions are implemented in it.

This repository aims to temporarily fix that by providing shims for the missing functions.

To use this crate:

  1. Add it as a dependency to your project

    cargo add vita-newlib-shims
  2. Import this crate in the root of your project:

    #[cfg(target_os = "vita")]
    use vita_newlib_shims as _;
  3. VITASDK environment variable must be set to your Vita SDK location.

During build this crate will check the exported symbols from the libc.a object file using arm-vita-eabi-nm of your Vita SDK installation, and will only provide shims for the missing functions.

License

Except where noted (below and/or in individual files), all code in this repository is dual-licensed at your option under either: