Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/property404/cloyster
WIP C library implemented in Rust
https://github.com/property404/cloyster
Last synced: 27 days ago
JSON representation
WIP C library implemented in Rust
- Host: GitHub
- URL: https://github.com/property404/cloyster
- Owner: Property404
- License: lgpl-3.0
- Created: 2024-04-05T22:43:58.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2024-11-27T18:02:37.000Z (about 1 month ago)
- Last Synced: 2024-11-27T18:40:53.546Z (about 1 month ago)
- Language: Rust
- Size: 168 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.lgplv2.1
Awesome Lists containing this project
README
# Cloyster
Experiment to see how difficult it is to write a libc replacement
A big flaw here is that thread locals are barely implemented, so errno is only
protected in Rust with `spin::Mutex` 😬Enough functionality is implemented to run
[dbfi](https://github.com/Property404/dbfi) unmodified (except for the
Makefile)Only supports Linux(x86_64 and RISC-V)
Note that this requires a nightly compiler
## Crates
* Cloyster - Cloyster C library
* Shellder - Rust implementation of C functions without exports## Statically linking Cloyster
```
cargo build
...
gcc my_program.c -ffreestanding -nostdlib target/debug/libcloyster.a
./a.out
```## License
LGPLv2.1 OR LGPLv3 at your option