为DragonOS移植了的relibc

Jeremy Soller 729709a8e6 Update all modules to new Pal mechanism 6 năm trước cách đây
cbindgen @ 95821b3bbe 6d110ef0cb Use a sys module for OS specific information 7 năm trước cách đây
include c25ce6a5f3 Include stddef.h in sys/types.h 6 năm trước cách đây
openlibm @ b7b3b4bc31 3267409c57 Add very basic example 7 năm trước cách đây
ralloc @ f9b8c35fe8 6c11a18240 Go back to patched ralloc 6 năm trước cách đây
src 729709a8e6 Update all modules to new Pal mechanism 6 năm trước cách đây
tests 83cb46afd8 Fix path to crt0.o and libc.a 6 năm trước cách đây
va_list @ 1e7a8b6b6f 5936c7a76e Add scanf 6 năm trước cách đây
.gitignore e9484e4d60 Ignore *all* target directories 6 năm trước cách đây
.gitlab-ci.yml 30ec8aa2c9 Add redox to CI 6 năm trước cách đây
.gitmodules a573549df8 Update links to gitlab 6 năm trước cách đây
.travis.yml 6a4220458c ci: Ensure that the correct compiler is installed 7 năm trước cách đây
Cargo.lock 1c4e8852dd Migrate to new FEXEC system call 6 năm trước cách đây
Cargo.toml b20307dca0 Implement fnmatch.h 6 năm trước cách đây
LICENSE ba515d83df Create LICENSE 7 năm trước cách đây
Makefile 729709a8e6 Update all modules to new Pal mechanism 6 năm trước cách đây
README.md fd05aca991 Update README.md 6 năm trước cách đây
bindgen_transform.sh 799c8828c2 mkdir and rmdir 7 năm trước cách đây
build.rs 9fc785dcc6 Add stack_chk functionality 6 năm trước cách đây
ci.sh e1abe80992 Fix CI 7 năm trước cách đây
fmt.sh 17778ba1b4 Remove missing rustfmt.toml options 6 năm trước cách đây
rust-toolchain 878f466b67 Update to new ralloc, new panic implementation, new compiler-builtins 6 năm trước cách đây
rustfmt.toml 9c169a186f Run fmt.sh 6 năm trước cách đây

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