#libc #linux

nightly no-std c-scape

A libc bottom-half implementation in Rust

80 releases (16 breaking)

new 0.16.1 May 22, 2024
0.15.44 Apr 22, 2024
0.15.41 Feb 29, 2024
0.15.40 Dec 30, 2023
0.3.0 Nov 18, 2021

#60 in No standard library

Download history 29/week @ 2024-02-02 70/week @ 2024-02-09 54/week @ 2024-02-16 362/week @ 2024-02-23 114/week @ 2024-03-01 65/week @ 2024-03-08 38/week @ 2024-03-15 26/week @ 2024-03-22 310/week @ 2024-03-29 84/week @ 2024-04-05 35/week @ 2024-04-12 200/week @ 2024-04-19 121/week @ 2024-04-26 42/week @ 2024-05-03 25/week @ 2024-05-10 381/week @ 2024-05-17

582 downloads per month
Used in 6 crates (via c-gull)

Apache-2.0…

570KB
16K SLoC

Contains (static library, 1KB) empty/riscv64/libxnet.a, (static library, 1KB) empty/aarch64/libc.a, (static library, 1KB) empty/aarch64/libcrypt.a, (static library, 1KB) empty/aarch64/libdl.a, (static library, 1KB) empty/aarch64/libgcc.a, (static library, 1KB) empty/aarch64/libgcc_s.a and 54 more.

c-scape

A layer underneath c-gull

Github Actions CI Status zulip chat crates.io page docs.rs docs

c-scape is a layer underneath c-gull. It provides a subset of libc features, containing only features that don't require Rust's std to implement. This allows it to be used by std itself.

Similar to c-gull, c-scape has "take-charge" and "coexist-with-libc" modes.

"take-charge" mode requires some additional setup; see the c-scape-example example crate for more details.

Dependencies

~9–19MB
~325K SLoC