为DragonOS移植了的relibc

Dan Robertson 6a4220458c ci: Ensure that the correct compiler is installed 7 lat temu
cbindgen @ 95821b3bbe 6d110ef0cb Use a sys module for OS specific information 7 lat temu
include dabd8dc6a2 Move memory handling into string, do not use compiler_builtins for memory handling 7 lat temu
openlibm @ b7b3b4bc31 3267409c57 Add very basic example 7 lat temu
ralloc @ 31b781a287 866d952924 Support building for Redox 7 lat temu
src dc769fd977 Run ./fmt.sh 7 lat temu
tests 742339ca9e Hacky version of memalign 7 lat temu
va_list @ ba5a07a744 c2ae141df3 Aarch64: Merge the final components 7 lat temu
.gitignore f60fafe8fb * create basic strtok 7 lat temu
.gitmodules 866d952924 Support building for Redox 7 lat temu
.travis.yml 6a4220458c ci: Ensure that the correct compiler is installed 7 lat temu
Cargo.lock dabd8dc6a2 Move memory handling into string, do not use compiler_builtins for memory handling 7 lat temu
Cargo.toml dabd8dc6a2 Move memory handling into string, do not use compiler_builtins for memory handling 7 lat temu
LICENSE ba515d83df Create LICENSE 7 lat temu
Makefile afdc80629f Fix Makefile spurious rebuilds 7 lat temu
README.md 47ee733afa Complete Makefile 7 lat temu
bindgen_transform.sh 799c8828c2 mkdir and rmdir 7 lat temu
build.rs dc769fd977 Run ./fmt.sh 7 lat temu
ci.sh e1abe80992 Fix CI 7 lat temu
fmt.sh 6ced871d9a ctype: tests and reorganize 7 lat temu
rust-toolchain d4308b4c5d Update rust toolchain and lock file 7 lat temu
rustfmt.toml 846e495944 Get rustfmt passing on core relibc code 7 lat temu

README.md

relibc build

relibc is a portable POSIX C standard library written in Rust. It is under heavy development, and currently supports Redox and Linux.

The motivation for this project is twofold: Reduce issues the redox crew was having with newlib, and create a safer alternative to a C standard library written in C. It is mainly designed to be used under redox, as an alternative to newlib, but it also supports linux syscalls via the sc crate.

Contributing

Just search for any invocation of the unimplemented macro, and hop in! The ci server checks builds for linux and redox, checks formatting (via rustfmt), and runs the test suite. Run ci.sh locally to check that your changes will pass travis. Use fmt.sh to format your code and make test to run the C test suite.

Supported OSes

  • RedoxOS
  • Linux

Supported architectures

  • x86_64
  • Aarch64