summaryrefslogtreecommitdiff
path: root/vendor/linux-raw-sys/README.md
diff options
context:
space:
mode:
authorValentin Popov <valentin@popov.link>2024-01-08 00:21:28 +0300
committerValentin Popov <valentin@popov.link>2024-01-08 00:21:28 +0300
commit1b6a04ca5504955c571d1c97504fb45ea0befee4 (patch)
tree7579f518b23313e8a9748a88ab6173d5e030b227 /vendor/linux-raw-sys/README.md
parent5ecd8cf2cba827454317368b68571df0d13d7842 (diff)
downloadfparkan-1b6a04ca5504955c571d1c97504fb45ea0befee4.tar.xz
fparkan-1b6a04ca5504955c571d1c97504fb45ea0befee4.zip
Initial vendor packages
Signed-off-by: Valentin Popov <valentin@popov.link>
Diffstat (limited to 'vendor/linux-raw-sys/README.md')
-rw-r--r--vendor/linux-raw-sys/README.md44
1 files changed, 44 insertions, 0 deletions
diff --git a/vendor/linux-raw-sys/README.md b/vendor/linux-raw-sys/README.md
new file mode 100644
index 0000000..b44ef22
--- /dev/null
+++ b/vendor/linux-raw-sys/README.md
@@ -0,0 +1,44 @@
+<div align="center">
+ <h1><code>linux-raw-sys</code></h1>
+
+ <p>
+ <strong>Generated bindings for Linux's userspace API</strong>
+ </p>
+
+ <p>
+ <a href="https://github.com/sunfishcode/linux-raw-sys/actions?query=workflow%3ACI"><img src="https://github.com/sunfishcode/linux-raw-sys/workflows/CI/badge.svg" alt="Github Actions CI Status" /></a>
+ <a href="https://bytecodealliance.zulipchat.com/#narrow/stream/206238-general"><img src="https://img.shields.io/badge/zulip-join_chat-brightgreen.svg" alt="zulip chat" /></a>
+ <a href="https://crates.io/crates/linux-raw-sys"><img src="https://img.shields.io/crates/v/linux-raw-sys.svg" alt="crates.io page" /></a>
+ <a href="https://docs.rs/linux-raw-sys"><img src="https://docs.rs/linux-raw-sys/badge.svg" alt="docs.rs docs" /></a>
+ </p>
+</div>
+
+This crate contains bindgen-generated bindings for Linux's userspace API.
+
+This is primarily of interest if you want to make raw system calls directly,
+which is tedious and error prone and not necessary for most use cases. For a
+minimal type-safe, memory-safe, and I/O-safe API to the Linux system calls
+built on these bindings, see the [rustix crate].
+
+The full bindings are quite large, so they've been split up into modules and
+cargo features. By default, `general` and `errno` are enabled, which provide
+most things needed by general-purpose code.
+
+To regenerate the generated bindings, run `cargo update && cd gen && cargo run --release`.
+
+## Similar crates
+
+This is similar to [linux-sys], except the bindings are generated offline,
+rather than in a build.rs, making downstream builds simpler. And, this crate
+has bindings for more headers, as well as supplementary definitions not
+exported by Linux's headers but nonetheless needed by userspace.
+
+# Minimum Supported Rust Version (MSRV)
+
+This crate currently works on the version of [Rust on Debian stable], which is
+currently Rust 1.63. This policy may change in the future, in minor version
+releases, so users using a fixed version of Rust should pin to a specific
+version of this crate.
+
+[linux-sys]: https://crates.io/crates/linux-sys
+[rustix crate]: https://github.com/bytecodealliance/rustix#linux-raw-syscall-support