为DragonOS移植了的relibc

SamwiseFilmore 59f1b37be8 Fix dumb mistake há 6 anos atrás
cbindgen @ 95821b3bbe 6d110ef0cb Use a sys module for OS specific information há 7 anos atrás
include 4e99b55417 Implement basic setjmp using musl's awesome existing code há 6 anos atrás
openlibm @ b7b3b4bc31 3267409c57 Add very basic example há 7 anos atrás
ralloc @ 2d8d44970e 1b653c4e60 Update ralloc, fix invalid c++ names há 6 anos atrás
src 2283243d95 Replace setjmp lib.rs with empty file há 6 anos atrás
tests 4e99b55417 Implement basic setjmp using musl's awesome existing code há 6 anos atrás
va_list @ 1e7a8b6b6f 5936c7a76e Add scanf há 6 anos atrás
.gitignore f60fafe8fb * create basic strtok há 7 anos atrás
.gitlab-ci.yml 59f1b37be8 Fix dumb mistake há 6 anos atrás
.gitmodules a573549df8 Update links to gitlab há 6 anos atrás
.travis.yml 6a4220458c ci: Ensure that the correct compiler is installed há 7 anos atrás
Cargo.lock 4e99b55417 Implement basic setjmp using musl's awesome existing code há 6 anos atrás
Cargo.toml 4e99b55417 Implement basic setjmp using musl's awesome existing code há 6 anos atrás
LICENSE ba515d83df Create LICENSE há 7 anos atrás
Makefile 5945de62cb Install openlibm from Makefile há 6 anos atrás
README.md fd05aca991 Update README.md há 6 anos atrás
bindgen_transform.sh 799c8828c2 mkdir and rmdir há 7 anos atrás
build.rs dc769fd977 Run ./fmt.sh há 7 anos atrás
ci.sh e1abe80992 Fix CI há 7 anos atrás
fmt.sh 6ced871d9a ctype: tests and reorganize há 7 anos atrás
rust-toolchain d4308b4c5d Update rust toolchain and lock file há 7 anos atrás
rustfmt.toml 846e495944 Get rustfmt passing on core relibc code há 7 anos atrás

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

  • Redox OS
  • Linux

Supported architectures

  • x86_64
  • Aarch64