Compare commits
21 Commits
progress
...
test-dunfe
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e83e2342e9 | ||
|
|
d4384db8c3 | ||
|
|
448047c7e4 | ||
|
|
bf6705fb7f | ||
|
|
1b59fd4590 | ||
|
|
09605d2ea5 | ||
|
|
ab86e0a068 | ||
|
|
494d879a1d | ||
|
|
b4877e0be0 | ||
|
|
3773dbcebd | ||
|
|
02db606a96 | ||
|
|
25ee517ae2 | ||
|
|
031fc5406e | ||
|
|
920db7b045 | ||
|
|
0048ea8253 | ||
|
|
e0180c565e | ||
|
|
b637307219 | ||
|
|
742cd5c095 | ||
|
|
2a9ee78d08 | ||
|
|
3638b7da88 | ||
|
|
08c385c922 |
42
.github/workflows/main.yml
vendored
42
.github/workflows/main.yml
vendored
@@ -1,6 +1,14 @@
|
||||
on: [pull_request]
|
||||
jobs:
|
||||
build:
|
||||
strategy:
|
||||
matrix:
|
||||
yoctobranch: [dunfell, hardknott]
|
||||
include:
|
||||
- yoctobranch: hardknott
|
||||
yoctoversion: 3.3.2
|
||||
- yoctobranch: dunfell
|
||||
yoctoversion: 3.1.9
|
||||
runs-on: self-hosted
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
@@ -8,16 +16,36 @@ jobs:
|
||||
path: 'meta-rust'
|
||||
- name: Fetch poky
|
||||
run: |
|
||||
mv poky/build/sstate-cache . || true
|
||||
rm -rf poky meta-openembedded
|
||||
git clone -b gatesgarth --single-branch git://git.yoctoproject.org/poky
|
||||
git clone -b gatesgarth --single-branch git://git.openembedded.org/meta-openembedded
|
||||
git clone -b ${{ matrix.yoctobranch }} --single-branch git://git.yoctoproject.org/poky
|
||||
git clone -b ${{ matrix.yoctobranch }} --single-branch git://git.openembedded.org/meta-openembedded
|
||||
- name: Configure build
|
||||
run: |
|
||||
cd poky
|
||||
. oe-init-build-env
|
||||
bitbake-layers add-layer ../../meta-openembedded/meta-oe
|
||||
bitbake-layers add-layer ../../meta-rust
|
||||
echo 'PARALLEL_MAKE:pn-rust-llvm-native = "-j2"' >> conf/local.conf
|
||||
echo 'TOOLCHAIN_HOST_TASK:append = " packagegroup-rust-cross-canadian-${MACHINE}"' >> conf/local.conf
|
||||
echo "SSTATE_MIRRORS = \"file://.* http://sstate.yoctoproject.org/${{ matrix.yoctoversion }}/PATH;downloadfilename=PATH \\n\"" >> conf/local.conf
|
||||
echo 'PREFERRED_PROVIDER_virtual/kernel = "linux-dummy"' >> conf/local.conf
|
||||
- name: Run bitbake
|
||||
run: |
|
||||
cd poky
|
||||
. oe-init-build-env
|
||||
mv ../../sstate-cache . || true
|
||||
bitbake-layers add-layer ../../meta-openembedded/meta-oe
|
||||
bitbake-layers add-layer ../../meta-rust
|
||||
echo 'PARALLEL_MAKE_pn-rust-llvm-native = "-j2"' >> conf/local.conf
|
||||
bitbake rust-hello-world
|
||||
- name: Test SDK
|
||||
run: |
|
||||
SDK_DIR=$PWD/sdk-test
|
||||
cd poky
|
||||
. oe-init-build-env
|
||||
bitbake core-image-minimal -c populate_sdk
|
||||
rm -rf $SDK_DIR
|
||||
./$(find ./tmp/deploy/sdk/ -name '*.sh') -d $SDK_DIR -y
|
||||
. $(find $SDK_DIR -name 'environment-setup-*')
|
||||
PROG=hello
|
||||
rm -rf $PROG
|
||||
cargo new $PROG
|
||||
cd $PROG
|
||||
cargo build
|
||||
file $(find ./target -name $PROG)
|
||||
|
||||
@@ -9,11 +9,11 @@ inherit cargo_common
|
||||
CARGO = "cargo"
|
||||
|
||||
# We need cargo to compile for the target
|
||||
BASEDEPENDS_append = " cargo-native"
|
||||
BASEDEPENDS:append = " cargo-native"
|
||||
|
||||
# Ensure we get the right rust variant
|
||||
DEPENDS_append_class-target = " virtual/${TARGET_PREFIX}rust ${RUSTLIB_DEP}"
|
||||
DEPENDS_append_class-native = " rust-native"
|
||||
DEPENDS:append:class-target = " virtual/${TARGET_PREFIX}rust ${RUSTLIB_DEP}"
|
||||
DEPENDS:append:class-native = " rust-native"
|
||||
|
||||
# Enable build separation
|
||||
B = "${WORKDIR}/build"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
inherit rust
|
||||
|
||||
RDEPENDS_${PN}_append_class-target = " ${RUSTLIB_DEP}"
|
||||
RDEPENDS:${PN}:append:class-target = " ${RUSTLIB_DEP}"
|
||||
|
||||
RUSTC_ARCHFLAGS += "-C opt-level=3 -g -L ${STAGING_DIR_HOST}/${rustlibdir} -C linker=${RUST_TARGET_CCLD}"
|
||||
EXTRA_OEMAKE += 'RUSTC_ARCHFLAGS="${RUSTC_ARCHFLAGS}"'
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
# Common variables used by all Rust builds
|
||||
export rustlibdir = "${libdir}/rust"
|
||||
FILES_${PN} += "${rustlibdir}/*.so"
|
||||
FILES_${PN}-dev += "${rustlibdir}/*.rlib ${rustlibdir}/*.rmeta"
|
||||
FILES_${PN}-dbg += "${rustlibdir}/.debug"
|
||||
FILES:${PN} += "${rustlibdir}/*.so"
|
||||
FILES:${PN}-dev += "${rustlibdir}/*.rlib ${rustlibdir}/*.rmeta"
|
||||
FILES:${PN}-dbg += "${rustlibdir}/.debug"
|
||||
|
||||
RUSTLIB = "-L ${STAGING_LIBDIR}/rust"
|
||||
RUST_DEBUG_REMAP = "--remap-path-prefix=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}"
|
||||
@@ -14,7 +14,7 @@ RUST_PANIC_STRATEGY ?= "unwind"
|
||||
# Native builds are not effected by TCLIBC. Without this, rust-native
|
||||
# thinks it's "target" (i.e. x86_64-linux) is a musl target.
|
||||
RUST_LIBC = "${TCLIBC}"
|
||||
RUST_LIBC_class-native = "glibc"
|
||||
RUST_LIBC:class-native = "glibc"
|
||||
|
||||
def determine_libc(d, thing):
|
||||
'''Determine which libc something should target'''
|
||||
@@ -27,7 +27,7 @@ def determine_libc(d, thing):
|
||||
elif thing == 'BUILD' and (d.getVar('HOST_SYS') != d.getVar('BUILD_SYS')):
|
||||
libc = d.getVar('RUST_LIBC')
|
||||
else:
|
||||
libc = d.getVar('RUST_LIBC_class-native')
|
||||
libc = d.getVar('RUST_LIBC:class-native')
|
||||
|
||||
return libc
|
||||
|
||||
@@ -103,7 +103,7 @@ def rust_base_triple(d, thing):
|
||||
#
|
||||
# Rust additionally will use two additional cases:
|
||||
# - undecorated (e.g. CC) - equivalent to TARGET
|
||||
# - triple suffix (e.g. CC_x86_64_unknown_linux_gnu) - both
|
||||
# - triple suffix (e.g. CC:x86_64_unknown_linux_gnu) - both
|
||||
# see: https://github.com/alexcrichton/gcc-rs
|
||||
# The way that Rust's internal triples and Yocto triples are mapped together
|
||||
# its likely best to not use the triple suffix due to potential confusion.
|
||||
@@ -138,6 +138,12 @@ create_wrapper () {
|
||||
chmod +x "${file}"
|
||||
}
|
||||
|
||||
export WRAPPER_TARGET_CC = "${CC}"
|
||||
export WRAPPER_TARGET_CXX = "${CXX}"
|
||||
export WRAPPER_TARGET_CCLD = "${CCLD}"
|
||||
export WRAPPER_TARGET_LDFLAGS = "${LDFLAGS}"
|
||||
export WRAPPER_TARGET_AR = "${AR}"
|
||||
|
||||
# compiler is used by gcc-rs
|
||||
# linker is used by rustc/cargo
|
||||
# archiver is used by the build of libstd-rs
|
||||
@@ -154,13 +160,14 @@ do_rust_create_wrappers () {
|
||||
create_wrapper "${RUST_BUILD_AR}" "${BUILD_AR}"
|
||||
|
||||
# Yocto Target / Rust Target C compiler
|
||||
create_wrapper "${RUST_TARGET_CC}" "${CC}"
|
||||
create_wrapper "${RUST_TARGET_CC}" "${WRAPPER_TARGET_CC}"
|
||||
# Yocto Target / Rust Target C++ compiler
|
||||
create_wrapper "${RUST_TARGET_CXX}" "${CXX}"
|
||||
create_wrapper "${RUST_TARGET_CXX}" "${WRAPPER_TARGET_CXX}"
|
||||
# Yocto Target / Rust Target linker
|
||||
create_wrapper "${RUST_TARGET_CCLD}" "${CCLD}" "${LDFLAGS}"
|
||||
create_wrapper "${RUST_TARGET_CCLD}" "${WRAPPER_TARGET_CCLD}" "${WRAPPER_TARGET_LDFLAGS}"
|
||||
# Yocto Target / Rust Target archiver
|
||||
create_wrapper "${RUST_TARGET_AR}" "${AR}"
|
||||
create_wrapper "${RUST_TARGET_AR}" "${WRAPPER_TARGET_AR}"
|
||||
|
||||
}
|
||||
|
||||
addtask rust_create_wrappers before do_configure after do_patch
|
||||
|
||||
@@ -15,7 +15,7 @@ def rust_base_dep(d):
|
||||
deps += " rust-native"
|
||||
return deps
|
||||
|
||||
DEPENDS_append = " ${@rust_base_dep(d)}"
|
||||
DEPENDS:append = " ${@rust_base_dep(d)}"
|
||||
|
||||
# BUILD_LDFLAGS
|
||||
# ${STAGING_LIBDIR_NATIVE}
|
||||
@@ -42,4 +42,4 @@ rustlib_suffix="${TUNE_ARCH}${TARGET_VENDOR}-${TARGET_OS}/rustlib/${HOST_SYS}/li
|
||||
rustlib_src="${prefix}/lib/${rustlib_suffix}"
|
||||
# Host sysroot standard library path
|
||||
rustlib="${libdir}/${rustlib_suffix}"
|
||||
rustlib_class-native="${libdir}/rustlib/${BUILD_SYS}/lib"
|
||||
rustlib:class-native="${libdir}/rustlib/${BUILD_SYS}/lib"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# Build errors with PIE options enabled
|
||||
SECURITY_CFLAGS_pn-rust-native = "${SECURITY_NO_PIE_CFLAGS}"
|
||||
SECURITY_CFLAGS_pn-rust-cross-${TARGET_ARCH} = "${SECURITY_NO_PIE_CFLAGS}"
|
||||
SECURITY_CFLAGS_pn-rust = "${SECURITY_NO_PIE_CFLAGS}"
|
||||
SECURITY_CFLAGS_pn-rust-llvm = "${SECURITY_NO_PIE_CFLAGS}"
|
||||
SECURITY_CFLAGS:pn-rust-native = "${SECURITY_NO_PIE_CFLAGS}"
|
||||
SECURITY_CFLAGS:pn-rust-cross-${TARGET_ARCH} = "${SECURITY_NO_PIE_CFLAGS}"
|
||||
SECURITY_CFLAGS:pn-rust = "${SECURITY_NO_PIE_CFLAGS}"
|
||||
SECURITY_CFLAGS:pn-rust-llvm = "${SECURITY_NO_PIE_CFLAGS}"
|
||||
|
||||
SECURITY_LDFLAGS_pn-rust-cross-arm = " -lssp_nonshared -lssp"
|
||||
SECURITY_LDFLAGS:pn-rust-cross-arm = " -lssp_nonshared -lssp"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# include this in your distribution to easily switch between versions
|
||||
# just by changing RUST_VERSION variable
|
||||
|
||||
RUST_VERSION ?= "1.49.0"
|
||||
RUST_VERSION ?= "1.51.0"
|
||||
|
||||
PREFERRED_VERSION_cargo ?= "${RUST_VERSION}"
|
||||
PREFERRED_VERSION_cargo-native ?= "${RUST_VERSION}"
|
||||
|
||||
@@ -9,7 +9,7 @@ BBFILE_PATTERN_rust-layer := "^${LAYERDIR}/"
|
||||
BBFILE_PRIORITY_rust-layer = "7"
|
||||
|
||||
LAYERDEPENDS_rust-layer = "core openembedded-layer"
|
||||
LAYERSERIES_COMPAT_rust-layer = "rocko sumo thud warrior zeus dunfell gatesgarth hardknott"
|
||||
LAYERSERIES_COMPAT_rust-layer = "dunfell gatesgarth hardknott honister"
|
||||
|
||||
# Override security flags
|
||||
require conf/distro/include/rust_security_flags.inc
|
||||
|
||||
@@ -232,8 +232,8 @@ INHERIT += "own-mirrors rm_work"
|
||||
# seen. The two lines below enable the SDL backend too. By default libsdl-native will
|
||||
# be built, if you want to use your host's libSDL instead of the minimal libsdl built
|
||||
# by libsdl-native then uncomment the ASSUME_PROVIDED line below.
|
||||
PACKAGECONFIG_append_pn-qemu-native = " sdl"
|
||||
PACKAGECONFIG_append_pn-nativesdk-qemu = " sdl"
|
||||
PACKAGECONFIG:append:pn-qemu-native = " sdl"
|
||||
PACKAGECONFIG:append:pn-nativesdk-qemu = " sdl"
|
||||
#ASSUME_PROVIDED += "libsdl-native"
|
||||
|
||||
# CONF_VERSION is increased each time build/conf/ changes incompatibly and is used to
|
||||
|
||||
@@ -7,9 +7,12 @@ PACKAGEGROUP_DISABLE_COMPLEMENTARY = "1"
|
||||
|
||||
RUST="rust-cross-canadian-${TRANSLATED_TARGET_ARCH}"
|
||||
CARGO="cargo-cross-canadian-${TRANSLATED_TARGET_ARCH}"
|
||||
RUST_TOOLS="rust-tools-cross-canadian-${TRANSLATED_TARGET_ARCH}"
|
||||
|
||||
RDEPENDS_${PN} = " \
|
||||
RDEPENDS:${PN} = " \
|
||||
${@all_multilib_tune_values(d, 'RUST')} \
|
||||
${@all_multilib_tune_values(d, 'CARGO')} \
|
||||
rust-cross-canadian-src \
|
||||
${@all_multilib_tune_values(d, 'RUST_TOOLS')} \
|
||||
"
|
||||
|
||||
|
||||
@@ -1,31 +0,0 @@
|
||||
From 7f8a197af9c33d0575187663f796f882064136dc Mon Sep 17 00:00:00 2001
|
||||
From: Johan Anderholm <johan.anderholm@gmail.com>
|
||||
Date: Sun, 27 Jan 2019 10:19:00 +0100
|
||||
Subject: [PATCH] Disable http2
|
||||
|
||||
http2 requires that curl is build with nghttp2 which in turn depends on
|
||||
many dependencies and ultimately a dependency loop in the case of
|
||||
curl-native. As long as multiplexing is disabled in cargo this should
|
||||
be fine.
|
||||
|
||||
Upstream-Status: Inappropriate
|
||||
---
|
||||
Cargo.toml | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Cargo.toml b/Cargo.toml
|
||||
index fde0a3188..a4a51939a 100644
|
||||
--- a/Cargo.toml
|
||||
+++ b/Cargo.toml
|
||||
@@ -25,7 +25,7 @@ cargo-platform = { path = "crates/cargo-platform", version = "0.1.1" }
|
||||
crates-io = { path = "crates/crates-io", version = "0.31.1" }
|
||||
crossbeam-utils = "0.8"
|
||||
crypto-hash = "0.3.1"
|
||||
-curl = { version = "0.4.23", features = ["http2"] }
|
||||
+curl = { version = "0.4.23" }
|
||||
curl-sys = "0.4.22"
|
||||
env_logger = "0.8.1"
|
||||
pretty_env_logger = { version = "0.4", optional = true }
|
||||
--
|
||||
2.28.0
|
||||
|
||||
@@ -1,73 +0,0 @@
|
||||
Add suppor for riscv64 and riscv32 musl targets
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
|
||||
--- a/vendor/cc/src/lib.rs
|
||||
+++ b/vendor/cc/src/lib.rs
|
||||
@@ -2361,6 +2361,7 @@ impl Build {
|
||||
"riscv-none-embed",
|
||||
]),
|
||||
"riscv64gc-unknown-linux-gnu" => Some("riscv64-linux-gnu"),
|
||||
+ "riscv64gc-unknown-linux-musl" => Some("riscv64-linux-musl"),
|
||||
"s390x-unknown-linux-gnu" => Some("s390x-linux-gnu"),
|
||||
"sparc-unknown-linux-gnu" => Some("sparc-linux-gnu"),
|
||||
"sparc64-unknown-linux-gnu" => Some("sparc64-linux-gnu"),
|
||||
--- a/compiler/rustc_target/src/spec/mod.rs
|
||||
+++ b/compiler/rustc_target/src/spec/mod.rs
|
||||
@@ -641,9 +641,11 @@ supported_targets! {
|
||||
("riscv32imc-unknown-none-elf", riscv32imc_unknown_none_elf),
|
||||
("riscv32imac-unknown-none-elf", riscv32imac_unknown_none_elf),
|
||||
("riscv32gc-unknown-linux-gnu", riscv32gc_unknown_linux_gnu),
|
||||
+ ("riscv32gc-unknown-linux-musl", riscv32gc_unknown_linux_musl),
|
||||
("riscv64imac-unknown-none-elf", riscv64imac_unknown_none_elf),
|
||||
("riscv64gc-unknown-none-elf", riscv64gc_unknown_none_elf),
|
||||
("riscv64gc-unknown-linux-gnu", riscv64gc_unknown_linux_gnu),
|
||||
+ ("riscv64gc-unknown-linux-musl", riscv64gc_unknown_linux_musl),
|
||||
|
||||
("aarch64-unknown-none", aarch64_unknown_none),
|
||||
("aarch64-unknown-none-softfloat", aarch64_unknown_none_softfloat),
|
||||
--- /dev/null
|
||||
+++ b/compiler/rustc_target/src/spec/riscv32gc_unknown_linux_musl.rs
|
||||
@@ -0,0 +1,19 @@
|
||||
+use crate::spec::{CodeModel, Target, TargetOptions};
|
||||
+
|
||||
+pub fn target() -> Target {
|
||||
+ Target {
|
||||
+ llvm_target: "riscv32-unknown-linux-musl".to_string(),
|
||||
+ pointer_width: 32,
|
||||
+ data_layout: "e-m:e-p:32:32-i64:64-n32-S128".to_string(),
|
||||
+ arch: "riscv32".to_string(),
|
||||
+ options: TargetOptions {
|
||||
+ unsupported_abis: super::riscv_base::unsupported_abis(),
|
||||
+ code_model: Some(CodeModel::Medium),
|
||||
+ cpu: "generic-rv32".to_string(),
|
||||
+ features: "+m,+a,+f,+d,+c".to_string(),
|
||||
+ llvm_abiname: "ilp32d".to_string(),
|
||||
+ max_atomic_width: Some(32),
|
||||
+ ..super::linux_musl_base::opts()
|
||||
+ },
|
||||
+ }
|
||||
+}
|
||||
--- /dev/null
|
||||
+++ b/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_musl.rs
|
||||
@@ -0,0 +1,19 @@
|
||||
+use crate::spec::{CodeModel, Target, TargetOptions};
|
||||
+
|
||||
+pub fn target() -> Target {
|
||||
+ Target {
|
||||
+ llvm_target: "riscv64-unknown-linux-musl".to_string(),
|
||||
+ pointer_width: 64,
|
||||
+ data_layout: "e-m:e-p:64:64-i64:64-i128:128-n64-S128".to_string(),
|
||||
+ arch: "riscv64".to_string(),
|
||||
+ options: TargetOptions {
|
||||
+ unsupported_abis: super::riscv_base::unsupported_abis(),
|
||||
+ code_model: Some(CodeModel::Medium),
|
||||
+ cpu: "generic-rv64".to_string(),
|
||||
+ features: "+m,+a,+f,+d,+c".to_string(),
|
||||
+ llvm_abiname: "lp64d".to_string(),
|
||||
+ max_atomic_width: Some(64),
|
||||
+ ..super::linux_musl_base::opts()
|
||||
+ },
|
||||
+ }
|
||||
+}
|
||||
@@ -1,37 +0,0 @@
|
||||
--- a/vendor/cc-1.0.60/.cargo-checksum.json
|
||||
+++ b/vendor/cc-1.0.60/.cargo-checksum.json
|
||||
@@ -1 +1 @@
|
||||
-{"files":{"Cargo.lock":"30b9e23f97015aea3eed3e17c6d76d565c2924efec8bdae64c899080847afe89","Cargo.toml":"f6f22b69df3df57c58373cdee72b22218ffa030bc375b36632660037dd72c866","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"51405d284d2e0620db62c655c652fc0ec84f20c1cb30529227355c9575a9e6dd","src/bin/gcc-shim.rs":"b77907875029494b6288841c3aed2e4939ed40708c7f597fca5c9e2570490ca6","src/com.rs":"bcdaf1c28b71e6ef889c6b08d1ce9d7c0761344a677f523bc4c3cd297957f804","src/lib.rs":"903c5f2f5dd0cc7d04f99f605a95e6abde8b38156fd4e73eefc58493f55a4e5a","src/registry.rs":"3cc1b5a50879fa751572878ae1d0afbfc960c11665258492754b2c8bccb0ff5d","src/setup_config.rs":"7014103587d3382eac599cb76f016e2609b8140970861b2237982d1db24af265","src/winapi.rs":"ea8b7edbb9ff87957254f465c2334e714c5d6b3b19a8d757c48ea7ca0881c50c","src/windows_registry.rs":"52afe8554f577c87841c48ddee3ba7ffe70a00129e1d6eeb2ec0efb3d2b9aa11","tests/cc_env.rs":"e02b3b0824ad039b47e4462c5ef6dbe6c824c28e7953af94a0f28f7b5158042e","tests/cflags.rs":"57f06eb5ce1557e5b4a032d0c4673e18fbe6f8d26c1deb153126e368b96b41b3","tests/cxxflags.rs":"c2c6c6d8a0d7146616fa1caed26876ee7bc9fcfffd525eb4743593cade5f3371","tests/support/mod.rs":"16274867f23871e9b07614eda4c7344da13d1751fed63d4f633857e40be86394","tests/test.rs":"65c073e0e2cf4aa0433066102788e9f57442719e6f32f5ad5248aa7132bb4597"},"package":"ef611cc68ff783f18535d77ddd080185275713d852c4f5cbb6122c462a7a825c"}
|
||||
\ No newline at end of file
|
||||
+{"files":{"Cargo.lock":"30b9e23f97015aea3eed3e17c6d76d565c2924efec8bdae64c899080847afe89","Cargo.toml":"f6f22b69df3df57c58373cdee72b22218ffa030bc375b36632660037dd72c866","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"51405d284d2e0620db62c655c652fc0ec84f20c1cb30529227355c9575a9e6dd","src/bin/gcc-shim.rs":"b77907875029494b6288841c3aed2e4939ed40708c7f597fca5c9e2570490ca6","src/com.rs":"bcdaf1c28b71e6ef889c6b08d1ce9d7c0761344a677f523bc4c3cd297957f804","src/lib.rs":"2788af2bdf425f267b33bc524f3e627851b52422e38f480a7e39eb834264fd73","src/registry.rs":"3cc1b5a50879fa751572878ae1d0afbfc960c11665258492754b2c8bccb0ff5d","src/setup_config.rs":"7014103587d3382eac599cb76f016e2609b8140970861b2237982d1db24af265","src/winapi.rs":"ea8b7edbb9ff87957254f465c2334e714c5d6b3b19a8d757c48ea7ca0881c50c","src/windows_registry.rs":"52afe8554f577c87841c48ddee3ba7ffe70a00129e1d6eeb2ec0efb3d2b9aa11","tests/cc_env.rs":"e02b3b0824ad039b47e4462c5ef6dbe6c824c28e7953af94a0f28f7b5158042e","tests/cflags.rs":"57f06eb5ce1557e5b4a032d0c4673e18fbe6f8d26c1deb153126e368b96b41b3","tests/cxxflags.rs":"c2c6c6d8a0d7146616fa1caed26876ee7bc9fcfffd525eb4743593cade5f3371","tests/support/mod.rs":"16274867f23871e9b07614eda4c7344da13d1751fed63d4f633857e40be86394","tests/test.rs":"65c073e0e2cf4aa0433066102788e9f57442719e6f32f5ad5248aa7132bb4597"},"package":"ef611cc68ff783f18535d77ddd080185275713d852c4f5cbb6122c462a7a825c"}
|
||||
--- a/vendor/cc-1.0.60/src/lib.rs
|
||||
+++ b/vendor/cc-1.0.60/src/lib.rs
|
||||
@@ -1639,14 +1639,17 @@ impl Build {
|
||||
let mut parts = target.split('-');
|
||||
if let Some(arch) = parts.next() {
|
||||
let arch = &arch[5..];
|
||||
- cmd.args.push(("-march=rv".to_owned() + arch).into());
|
||||
if target.contains("linux") && arch.starts_with("64") {
|
||||
+ cmd.args.push(("-march=rv64gc").into());
|
||||
cmd.args.push("-mabi=lp64d".into());
|
||||
} else if target.contains("linux") && arch.starts_with("32") {
|
||||
+ cmd.args.push(("-march=rv32gc").into());
|
||||
cmd.args.push("-mabi=ilp32d".into());
|
||||
} else if arch.starts_with("64") {
|
||||
+ cmd.args.push(("-march=rv".to_owned() + arch).into());
|
||||
cmd.args.push("-mabi=lp64".into());
|
||||
} else {
|
||||
+ cmd.args.push(("-march=rv".to_owned() + arch).into());
|
||||
cmd.args.push("-mabi=ilp32".into());
|
||||
}
|
||||
cmd.args.push("-mcmodel=medany".into());
|
||||
@@ -2332,6 +2335,9 @@ impl Build {
|
||||
"riscv-none-embed",
|
||||
]),
|
||||
"riscv64gc-unknown-linux-gnu" => Some("riscv64-linux-gnu"),
|
||||
+ "riscv32gc-unknown-linux-gnu" => Some("riscv32-linux-gnu"),
|
||||
+ "riscv64gc-unknown-linux-musl" => Some("riscv64-linux-musl"),
|
||||
+ "riscv32gc-unknown-linux-musl" => Some("riscv32-linux-musl"),
|
||||
"s390x-unknown-linux-gnu" => Some("s390x-linux-gnu"),
|
||||
"sparc-unknown-linux-gnu" => Some("sparc-linux-gnu"),
|
||||
"sparc64-unknown-linux-gnu" => Some("sparc64-linux-gnu"),
|
||||
@@ -9,7 +9,7 @@ require recipes-devtools/rust/rust-common.inc
|
||||
require cargo.inc
|
||||
|
||||
CARGO = "${WORKDIR}/${CARGO_SNAPSHOT}/bin/cargo"
|
||||
BASEDEPENDS_remove = "cargo-native"
|
||||
BASEDEPENDS:remove = "cargo-native"
|
||||
|
||||
export RUST_TARGET_PATH="${WORKDIR}/targets/"
|
||||
|
||||
@@ -37,7 +37,7 @@ python do_rust_gen_targets () {
|
||||
rust_gen_target(d, 'HOST', wd, "", "generic", d.getVar('HOST_ARCH'))
|
||||
}
|
||||
|
||||
do_compile_prepend () {
|
||||
do_compile:prepend () {
|
||||
PKG_CONFIG_PATH="${RECIPE_SYSROOT_NATIVE}/usr/lib/pkgconfig:${PKG_CONFIG_PATH}"
|
||||
}
|
||||
|
||||
@@ -70,5 +70,5 @@ do_install () {
|
||||
}
|
||||
|
||||
PKG_SYS_BINDIR = "${SDKPATHNATIVE}/usr/bin"
|
||||
FILES_${PN} += "${base_prefix}/environment-setup.d ${PKG_SYS_BINDIR}"
|
||||
FILES:${PN} += "${base_prefix}/environment-setup.d ${PKG_SYS_BINDIR}"
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
require recipes-devtools/rust/rust-source-${PV}.inc
|
||||
require recipes-devtools/rust/rust-snapshot-${PV}.inc
|
||||
|
||||
FILESEXTRAPATHS_prepend := "${THISDIR}/cargo-${PV}:"
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/cargo-${PV}:"
|
||||
|
||||
require cargo-cross-canadian.inc
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
require recipes-devtools/rust/rust-source-${PV}.inc
|
||||
require recipes-devtools/rust/rust-snapshot-${PV}.inc
|
||||
|
||||
FILESEXTRAPATHS_prepend := "${THISDIR}/cargo-${PV}:"
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/cargo-${PV}:"
|
||||
|
||||
require cargo-cross-canadian.inc
|
||||
@@ -11,7 +11,6 @@ LIC_FILES_CHKSUM = " \
|
||||
file://LICENSE-THIRD-PARTY;md5=f257ad009884cb88a3a87d6920e7180a \
|
||||
"
|
||||
|
||||
SRC_URI += "file://0001-Disable-http2.patch"
|
||||
|
||||
S = "${RUSTSRC}/src/tools/cargo"
|
||||
CARGO_VENDORING_DIRECTORY = "${RUSTSRC}/vendor"
|
||||
@@ -25,7 +24,7 @@ do_cargo_setup_snapshot () {
|
||||
addtask cargo_setup_snapshot after do_unpack before do_configure
|
||||
do_cargo_setup_snapshot[dirs] += "${WORKDIR}/${CARGO_SNAPSHOT}"
|
||||
|
||||
do_compile_prepend () {
|
||||
do_compile:prepend () {
|
||||
export RUSTC_BOOTSTRAP="1"
|
||||
}
|
||||
|
||||
@@ -47,5 +46,5 @@ BBCLASSEXTEND = "native nativesdk"
|
||||
|
||||
# When building cargo-native we don't have cargo-native to use and depend on,
|
||||
# so we must use the locally set up snapshot to bootstrap the build.
|
||||
BASEDEPENDS_remove_class-native = "cargo-native"
|
||||
CARGO_class-native = "${WORKDIR}/${CARGO_SNAPSHOT}/bin/cargo"
|
||||
BASEDEPENDS:remove:class-native = "cargo-native"
|
||||
CARGO:class-native = "${WORKDIR}/${CARGO_SNAPSHOT}/bin/cargo"
|
||||
|
||||
@@ -2,5 +2,7 @@ require recipes-devtools/rust/rust-source-${PV}.inc
|
||||
require recipes-devtools/rust/rust-snapshot-${PV}.inc
|
||||
require cargo.inc
|
||||
|
||||
SRC_URI += "file://riscv-march.patch;patchdir=../../.."
|
||||
SRC_URI += "file://rv64gc.patch;patchdir=../../.."
|
||||
SRC_URI += "file://0001-Disable-http2.patch \
|
||||
file://riscv-march.patch;patchdir=../../.. \
|
||||
file://rv64gc.patch;patchdir=../../.. \
|
||||
"
|
||||
|
||||
@@ -2,6 +2,3 @@ require recipes-devtools/rust/rust-source-${PV}.inc
|
||||
require recipes-devtools/rust/rust-snapshot-${PV}.inc
|
||||
require cargo.inc
|
||||
|
||||
SRC_URI += "file://riscv-march.patch;patchdir=../../.."
|
||||
SRC_URI += "file://rv64gc.patch;patchdir=../../.."
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,905 @@
|
||||
From 4e188d047dee33a19902113a3c90cdf1d8310a9e Mon Sep 17 00:00:00 2001
|
||||
From: Ralf Anton Beier <ralf_beier@me.com>
|
||||
Date: Sun, 8 Aug 2021 11:05:06 +0200
|
||||
Subject: [PATCH 5/8] Add base definitions for riscv64 + musl - libc-0.2.93
|
||||
|
||||
https://github.com/rust-lang/libc/pull/1994/commits/030a07761f61f3293d53752e60edbd330a9d718d
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
Signed-off-by: Ralf Anton Beier <ralf_beier@me.com>
|
||||
---
|
||||
.../src/unix/linux_like/linux/musl/b64/mod.rs | 3 +
|
||||
.../linux_like/linux/musl/b64/riscv64/mod.rs | 867 ++++++++++++++++++
|
||||
2 files changed, 870 insertions(+)
|
||||
create mode 100644 vendor/libc-0.2.93/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs
|
||||
|
||||
diff --git a/vendor/libc-0.2.93/src/unix/linux_like/linux/musl/b64/mod.rs b/vendor/libc-0.2.93/src/unix/linux_like/linux/musl/b64/mod.rs
|
||||
index cfcdaaecf..7261b95d2 100644
|
||||
--- a/vendor/libc-0.2.93/src/unix/linux_like/linux/musl/b64/mod.rs
|
||||
+++ b/vendor/libc-0.2.93/src/unix/linux_like/linux/musl/b64/mod.rs
|
||||
@@ -163,6 +163,9 @@ cfg_if! {
|
||||
} else if #[cfg(any(target_arch = "x86_64"))] {
|
||||
mod x86_64;
|
||||
pub use self::x86_64::*;
|
||||
+ } else if #[cfg(any(target_arch = "riscv64"))] {
|
||||
+ mod riscv64;
|
||||
+ pub use self::riscv64::*;
|
||||
} else {
|
||||
// Unknown target_arch
|
||||
}
|
||||
diff --git a/vendor/libc-0.2.93/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs b/vendor/libc-0.2.93/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs
|
||||
new file mode 100644
|
||||
index 000000000..14bae11d0
|
||||
--- /dev/null
|
||||
+++ b/vendor/libc-0.2.93/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs
|
||||
@@ -0,0 +1,867 @@
|
||||
+//! RISC-V-specific definitions for 64-bit linux-like values
|
||||
+
|
||||
+pub type c_char = u8;
|
||||
+pub type c_long = i64;
|
||||
+pub type c_ulong = u64;
|
||||
+pub type wchar_t = ::c_int;
|
||||
+
|
||||
+pub type nlink_t = ::c_uint;
|
||||
+pub type blksize_t = ::c_int;
|
||||
+pub type fsblkcnt64_t = ::c_ulong;
|
||||
+pub type fsfilcnt64_t = ::c_ulong;
|
||||
+pub type suseconds_t = i64;
|
||||
+pub type __u64 = ::c_ulonglong;
|
||||
+
|
||||
+s! {
|
||||
+ pub struct pthread_attr_t {
|
||||
+ __size: [::c_ulong; 7],
|
||||
+ }
|
||||
+
|
||||
+ pub struct stat {
|
||||
+ pub st_dev: ::dev_t,
|
||||
+ pub st_ino: ::ino_t,
|
||||
+ pub st_mode: ::mode_t,
|
||||
+ pub st_nlink: ::nlink_t,
|
||||
+ pub st_uid: ::uid_t,
|
||||
+ pub st_gid: ::gid_t,
|
||||
+ pub st_rdev: ::dev_t,
|
||||
+ pub __pad1: ::dev_t,
|
||||
+ pub st_size: ::off_t,
|
||||
+ pub st_blksize: ::blksize_t,
|
||||
+ pub __pad2: ::c_int,
|
||||
+ pub st_blocks: ::blkcnt_t,
|
||||
+ pub st_atime: ::time_t,
|
||||
+ pub st_atime_nsec: ::c_long,
|
||||
+ pub st_mtime: ::time_t,
|
||||
+ pub st_mtime_nsec: ::c_long,
|
||||
+ pub st_ctime: ::time_t,
|
||||
+ pub st_ctime_nsec: ::c_long,
|
||||
+ __unused: [::c_int; 2usize],
|
||||
+ }
|
||||
+
|
||||
+ pub struct stat64 {
|
||||
+ pub st_dev: ::dev_t,
|
||||
+ pub st_ino: ::ino64_t,
|
||||
+ pub st_mode: ::mode_t,
|
||||
+ pub st_nlink: ::nlink_t,
|
||||
+ pub st_uid: ::uid_t,
|
||||
+ pub st_gid: ::gid_t,
|
||||
+ pub st_rdev: ::dev_t,
|
||||
+ pub __pad1: ::dev_t,
|
||||
+ pub st_size: ::off64_t,
|
||||
+ pub st_blksize: ::blksize_t,
|
||||
+ pub __pad2: ::c_int,
|
||||
+ pub st_blocks: ::blkcnt_t,
|
||||
+ pub st_atime: ::time_t,
|
||||
+ pub st_atime_nsec: ::c_long,
|
||||
+ pub st_mtime: ::time_t,
|
||||
+ pub st_mtime_nsec: ::c_long,
|
||||
+ pub st_ctime: ::time_t,
|
||||
+ pub st_ctime_nsec: ::c_long,
|
||||
+ __unused: [::c_int; 2],
|
||||
+ }
|
||||
+
|
||||
+ pub struct statfs {
|
||||
+ pub f_type: ::c_long,
|
||||
+ pub f_bsize: ::c_long,
|
||||
+ pub f_blocks: ::fsblkcnt_t,
|
||||
+ pub f_bfree: ::fsblkcnt_t,
|
||||
+ pub f_bavail: ::fsblkcnt_t,
|
||||
+ pub f_files: ::fsfilcnt_t,
|
||||
+ pub f_ffree: ::fsfilcnt_t,
|
||||
+ pub f_fsid: ::fsid_t,
|
||||
+ pub f_namelen: ::c_long,
|
||||
+ pub f_frsize: ::c_long,
|
||||
+ pub f_flags: ::c_long,
|
||||
+ pub f_spare: [::c_long; 4],
|
||||
+ }
|
||||
+
|
||||
+ pub struct statfs64 {
|
||||
+ pub f_type: ::c_long,
|
||||
+ pub f_bsize: ::c_long,
|
||||
+ pub f_blocks: ::fsblkcnt64_t,
|
||||
+ pub f_bfree: ::fsblkcnt64_t,
|
||||
+ pub f_bavail: ::fsblkcnt64_t,
|
||||
+ pub f_files: ::fsfilcnt64_t,
|
||||
+ pub f_ffree: ::fsfilcnt64_t,
|
||||
+ pub f_fsid: ::fsid_t,
|
||||
+ pub f_namelen: ::c_long,
|
||||
+ pub f_frsize: ::c_long,
|
||||
+ pub f_flags: ::c_long,
|
||||
+ pub f_spare: [::c_long; 4],
|
||||
+ }
|
||||
+
|
||||
+ pub struct statvfs {
|
||||
+ pub f_bsize: ::c_ulong,
|
||||
+ pub f_frsize: ::c_ulong,
|
||||
+ pub f_blocks: ::fsblkcnt_t,
|
||||
+ pub f_bfree: ::fsblkcnt_t,
|
||||
+ pub f_bavail: ::fsblkcnt_t,
|
||||
+ pub f_files: ::fsfilcnt_t,
|
||||
+ pub f_ffree: ::fsfilcnt_t,
|
||||
+ pub f_favail: ::fsfilcnt_t,
|
||||
+ pub f_fsid: ::c_ulong,
|
||||
+ pub f_flag: ::c_ulong,
|
||||
+ pub f_namemax: ::c_ulong,
|
||||
+ pub __f_spare: [::c_int; 6],
|
||||
+ }
|
||||
+
|
||||
+ pub struct statvfs64 {
|
||||
+ pub f_bsize: ::c_ulong,
|
||||
+ pub f_frsize: ::c_ulong,
|
||||
+ pub f_blocks: ::fsblkcnt64_t,
|
||||
+ pub f_bfree: ::fsblkcnt64_t,
|
||||
+ pub f_bavail: ::fsblkcnt64_t,
|
||||
+ pub f_files: ::fsfilcnt64_t,
|
||||
+ pub f_ffree: ::fsfilcnt64_t,
|
||||
+ pub f_favail: ::fsfilcnt64_t,
|
||||
+ pub f_fsid: ::c_ulong,
|
||||
+ pub f_flag: ::c_ulong,
|
||||
+ pub f_namemax: ::c_ulong,
|
||||
+ pub __f_spare: [::c_int; 6],
|
||||
+ }
|
||||
+
|
||||
+ pub struct siginfo_t {
|
||||
+ pub si_signo: ::c_int,
|
||||
+ pub si_errno: ::c_int,
|
||||
+ pub si_code: ::c_int,
|
||||
+ #[doc(hidden)]
|
||||
+ #[deprecated(
|
||||
+ since="0.2.54",
|
||||
+ note="Please leave a comment on \
|
||||
+ https://github.com/rust-lang/libc/pull/1316 if you're using \
|
||||
+ this field"
|
||||
+ )]
|
||||
+ pub _pad: [::c_int; 29],
|
||||
+ _align: [u64; 0],
|
||||
+ }
|
||||
+
|
||||
+ pub struct stack_t {
|
||||
+ pub ss_sp: *mut ::c_void,
|
||||
+ pub ss_flags: ::c_int,
|
||||
+ pub ss_size: ::size_t,
|
||||
+ }
|
||||
+
|
||||
+ pub struct sigaction {
|
||||
+ pub sa_sigaction: ::sighandler_t,
|
||||
+ pub sa_mask: ::sigset_t,
|
||||
+ pub sa_flags: ::c_int,
|
||||
+ pub sa_restorer: ::Option<unsafe extern "C" fn()>,
|
||||
+ }
|
||||
+
|
||||
+ pub struct ipc_perm {
|
||||
+ pub __key: ::key_t,
|
||||
+ pub uid: ::uid_t,
|
||||
+ pub gid: ::gid_t,
|
||||
+ pub cuid: ::uid_t,
|
||||
+ pub cgid: ::gid_t,
|
||||
+ pub mode: ::c_ushort,
|
||||
+ __pad1: ::c_ushort,
|
||||
+ pub __seq: ::c_ushort,
|
||||
+ __pad2: ::c_ushort,
|
||||
+ __unused1: ::c_ulong,
|
||||
+ __unused2: ::c_ulong,
|
||||
+ }
|
||||
+
|
||||
+ pub struct shmid_ds {
|
||||
+ pub shm_perm: ::ipc_perm,
|
||||
+ pub shm_segsz: ::size_t,
|
||||
+ pub shm_atime: ::time_t,
|
||||
+ pub shm_dtime: ::time_t,
|
||||
+ pub shm_ctime: ::time_t,
|
||||
+ pub shm_cpid: ::pid_t,
|
||||
+ pub shm_lpid: ::pid_t,
|
||||
+ pub shm_nattch: ::shmatt_t,
|
||||
+ __unused5: ::c_ulong,
|
||||
+ __unused6: ::c_ulong,
|
||||
+ }
|
||||
+
|
||||
+ pub struct flock {
|
||||
+ pub l_type: ::c_short,
|
||||
+ pub l_whence: ::c_short,
|
||||
+ pub l_start: ::off_t,
|
||||
+ pub l_len: ::off_t,
|
||||
+ pub l_pid: ::pid_t,
|
||||
+ }
|
||||
+
|
||||
+ pub struct flock64 {
|
||||
+ pub l_type: ::c_short,
|
||||
+ pub l_whence: ::c_short,
|
||||
+ pub l_start: ::off64_t,
|
||||
+ pub l_len: ::off64_t,
|
||||
+ pub l_pid: ::pid_t,
|
||||
+ }
|
||||
+
|
||||
+ pub struct ip_mreqn {
|
||||
+ pub imr_multiaddr: ::in_addr,
|
||||
+ pub imr_address: ::in_addr,
|
||||
+ pub imr_ifindex: ::c_int,
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+pub const POSIX_FADV_DONTNEED: ::c_int = 4;
|
||||
+pub const POSIX_FADV_NOREUSE: ::c_int = 5;
|
||||
+pub const VEOF: usize = 4;
|
||||
+pub const RTLD_DEEPBIND: ::c_int = 0x8;
|
||||
+pub const RTLD_GLOBAL: ::c_int = 0x100;
|
||||
+pub const RTLD_NOLOAD: ::c_int = 0x4;
|
||||
+pub const TIOCGSOFTCAR: ::c_ulong = 21529;
|
||||
+pub const TIOCSSOFTCAR: ::c_ulong = 21530;
|
||||
+pub const TIOCGRS485: ::c_int = 21550;
|
||||
+pub const TIOCSRS485: ::c_int = 21551;
|
||||
+pub const RLIMIT_RSS: ::__rlimit_resource_t = 5;
|
||||
+pub const RLIMIT_AS: ::__rlimit_resource_t = 9;
|
||||
+pub const RLIMIT_MEMLOCK: ::__rlimit_resource_t = 8;
|
||||
+pub const RLIMIT_NOFILE: ::__rlimit_resource_t = 7;
|
||||
+pub const RLIMIT_NPROC: ::__rlimit_resource_t = 6;
|
||||
+pub const O_APPEND: ::c_int = 1024;
|
||||
+pub const O_CREAT: ::c_int = 64;
|
||||
+pub const O_EXCL: ::c_int = 128;
|
||||
+pub const O_NOCTTY: ::c_int = 256;
|
||||
+pub const O_NONBLOCK: ::c_int = 2048;
|
||||
+pub const O_SYNC: ::c_int = 1052672;
|
||||
+pub const O_RSYNC: ::c_int = 1052672;
|
||||
+pub const O_DSYNC: ::c_int = 4096;
|
||||
+pub const O_FSYNC: ::c_int = 1052672;
|
||||
+pub const O_NOATIME: ::c_int = 262144;
|
||||
+pub const O_PATH: ::c_int = 2097152;
|
||||
+pub const O_TMPFILE: ::c_int = 4259840;
|
||||
+pub const MAP_GROWSDOWN: ::c_int = 256;
|
||||
+pub const EDEADLK: ::c_int = 35;
|
||||
+pub const ENAMETOOLONG: ::c_int = 36;
|
||||
+pub const ENOLCK: ::c_int = 37;
|
||||
+pub const ENOSYS: ::c_int = 38;
|
||||
+pub const ENOTEMPTY: ::c_int = 39;
|
||||
+pub const ELOOP: ::c_int = 40;
|
||||
+pub const ENOMSG: ::c_int = 42;
|
||||
+pub const EIDRM: ::c_int = 43;
|
||||
+pub const ECHRNG: ::c_int = 44;
|
||||
+pub const EL2NSYNC: ::c_int = 45;
|
||||
+pub const EL3HLT: ::c_int = 46;
|
||||
+pub const EL3RST: ::c_int = 47;
|
||||
+pub const ELNRNG: ::c_int = 48;
|
||||
+pub const EUNATCH: ::c_int = 49;
|
||||
+pub const ENOCSI: ::c_int = 50;
|
||||
+pub const EL2HLT: ::c_int = 51;
|
||||
+pub const EBADE: ::c_int = 52;
|
||||
+pub const EBADR: ::c_int = 53;
|
||||
+pub const EXFULL: ::c_int = 54;
|
||||
+pub const ENOANO: ::c_int = 55;
|
||||
+pub const EBADRQC: ::c_int = 56;
|
||||
+pub const EBADSLT: ::c_int = 57;
|
||||
+pub const EMULTIHOP: ::c_int = 72;
|
||||
+pub const EOVERFLOW: ::c_int = 75;
|
||||
+pub const ENOTUNIQ: ::c_int = 76;
|
||||
+pub const EBADFD: ::c_int = 77;
|
||||
+pub const EBADMSG: ::c_int = 74;
|
||||
+pub const EREMCHG: ::c_int = 78;
|
||||
+pub const ELIBACC: ::c_int = 79;
|
||||
+pub const ELIBBAD: ::c_int = 80;
|
||||
+pub const ELIBSCN: ::c_int = 81;
|
||||
+pub const ELIBMAX: ::c_int = 82;
|
||||
+pub const ELIBEXEC: ::c_int = 83;
|
||||
+pub const EILSEQ: ::c_int = 84;
|
||||
+pub const ERESTART: ::c_int = 85;
|
||||
+pub const ESTRPIPE: ::c_int = 86;
|
||||
+pub const EUSERS: ::c_int = 87;
|
||||
+pub const ENOTSOCK: ::c_int = 88;
|
||||
+pub const EDESTADDRREQ: ::c_int = 89;
|
||||
+pub const EMSGSIZE: ::c_int = 90;
|
||||
+pub const EPROTOTYPE: ::c_int = 91;
|
||||
+pub const ENOPROTOOPT: ::c_int = 92;
|
||||
+pub const EPROTONOSUPPORT: ::c_int = 93;
|
||||
+pub const ESOCKTNOSUPPORT: ::c_int = 94;
|
||||
+pub const EOPNOTSUPP: ::c_int = 95;
|
||||
+pub const EPFNOSUPPORT: ::c_int = 96;
|
||||
+pub const EAFNOSUPPORT: ::c_int = 97;
|
||||
+pub const EADDRINUSE: ::c_int = 98;
|
||||
+pub const EADDRNOTAVAIL: ::c_int = 99;
|
||||
+pub const ENETDOWN: ::c_int = 100;
|
||||
+pub const ENETUNREACH: ::c_int = 101;
|
||||
+pub const ENETRESET: ::c_int = 102;
|
||||
+pub const ECONNABORTED: ::c_int = 103;
|
||||
+pub const ECONNRESET: ::c_int = 104;
|
||||
+pub const ENOBUFS: ::c_int = 105;
|
||||
+pub const EISCONN: ::c_int = 106;
|
||||
+pub const ENOTCONN: ::c_int = 107;
|
||||
+pub const ESHUTDOWN: ::c_int = 108;
|
||||
+pub const ETOOMANYREFS: ::c_int = 109;
|
||||
+pub const ETIMEDOUT: ::c_int = 110;
|
||||
+pub const ECONNREFUSED: ::c_int = 111;
|
||||
+pub const EHOSTDOWN: ::c_int = 112;
|
||||
+pub const EHOSTUNREACH: ::c_int = 113;
|
||||
+pub const EALREADY: ::c_int = 114;
|
||||
+pub const EINPROGRESS: ::c_int = 115;
|
||||
+pub const ESTALE: ::c_int = 116;
|
||||
+pub const EDQUOT: ::c_int = 122;
|
||||
+pub const ENOMEDIUM: ::c_int = 123;
|
||||
+pub const EMEDIUMTYPE: ::c_int = 124;
|
||||
+pub const ECANCELED: ::c_int = 125;
|
||||
+pub const ENOKEY: ::c_int = 126;
|
||||
+pub const EKEYEXPIRED: ::c_int = 127;
|
||||
+pub const EKEYREVOKED: ::c_int = 128;
|
||||
+pub const EKEYREJECTED: ::c_int = 129;
|
||||
+pub const EOWNERDEAD: ::c_int = 130;
|
||||
+pub const ENOTRECOVERABLE: ::c_int = 131;
|
||||
+pub const EHWPOISON: ::c_int = 133;
|
||||
+pub const ERFKILL: ::c_int = 132;
|
||||
+pub const SOL_SOCKET: ::c_int = 1;
|
||||
+pub const SO_REUSEADDR: ::c_int = 2;
|
||||
+pub const SO_TYPE: ::c_int = 3;
|
||||
+pub const SO_ERROR: ::c_int = 4;
|
||||
+pub const SO_DONTROUTE: ::c_int = 5;
|
||||
+pub const SO_BROADCAST: ::c_int = 6;
|
||||
+pub const SO_SNDBUF: ::c_int = 7;
|
||||
+pub const SO_RCVBUF: ::c_int = 8;
|
||||
+pub const SO_SNDBUFFORCE: ::c_int = 32;
|
||||
+pub const SO_RCVBUFFORCE: ::c_int = 33;
|
||||
+pub const SO_KEEPALIVE: ::c_int = 9;
|
||||
+pub const SO_OOBINLINE: ::c_int = 10;
|
||||
+pub const SO_NO_CHECK: ::c_int = 11;
|
||||
+pub const SO_PRIORITY: ::c_int = 12;
|
||||
+pub const SO_LINGER: ::c_int = 13;
|
||||
+pub const SO_BSDCOMPAT: ::c_int = 14;
|
||||
+pub const SO_REUSEPORT: ::c_int = 15;
|
||||
+pub const SO_PASSCRED: ::c_int = 16;
|
||||
+pub const SO_PEERCRED: ::c_int = 17;
|
||||
+pub const SO_RCVLOWAT: ::c_int = 18;
|
||||
+pub const SO_SNDLOWAT: ::c_int = 19;
|
||||
+pub const SO_RCVTIMEO: ::c_int = 20;
|
||||
+pub const SO_SNDTIMEO: ::c_int = 21;
|
||||
+pub const SO_SECURITY_AUTHENTICATION: ::c_int = 22;
|
||||
+pub const SO_SECURITY_ENCRYPTION_TRANSPORT: ::c_int = 23;
|
||||
+pub const SO_SECURITY_ENCRYPTION_NETWORK: ::c_int = 24;
|
||||
+pub const SO_BINDTODEVICE: ::c_int = 25;
|
||||
+pub const SO_ATTACH_FILTER: ::c_int = 26;
|
||||
+pub const SO_DETACH_FILTER: ::c_int = 27;
|
||||
+pub const SO_GET_FILTER: ::c_int = 26;
|
||||
+pub const SO_PEERNAME: ::c_int = 28;
|
||||
+pub const SO_TIMESTAMP: ::c_int = 29;
|
||||
+pub const SO_ACCEPTCONN: ::c_int = 30;
|
||||
+pub const SO_PEERSEC: ::c_int = 31;
|
||||
+pub const SO_PASSSEC: ::c_int = 34;
|
||||
+pub const SO_TIMESTAMPNS: ::c_int = 35;
|
||||
+pub const SCM_TIMESTAMPNS: ::c_int = 35;
|
||||
+pub const SO_MARK: ::c_int = 36;
|
||||
+pub const SO_PROTOCOL: ::c_int = 38;
|
||||
+pub const SO_DOMAIN: ::c_int = 39;
|
||||
+pub const SO_RXQ_OVFL: ::c_int = 40;
|
||||
+pub const SO_WIFI_STATUS: ::c_int = 41;
|
||||
+pub const SCM_WIFI_STATUS: ::c_int = 41;
|
||||
+pub const SO_PEEK_OFF: ::c_int = 42;
|
||||
+pub const SO_NOFCS: ::c_int = 43;
|
||||
+pub const SO_LOCK_FILTER: ::c_int = 44;
|
||||
+pub const SO_SELECT_ERR_QUEUE: ::c_int = 45;
|
||||
+pub const SO_BUSY_POLL: ::c_int = 46;
|
||||
+pub const SO_MAX_PACING_RATE: ::c_int = 47;
|
||||
+pub const SO_BPF_EXTENSIONS: ::c_int = 48;
|
||||
+pub const SO_INCOMING_CPU: ::c_int = 49;
|
||||
+pub const SO_ATTACH_BPF: ::c_int = 50;
|
||||
+pub const SO_DETACH_BPF: ::c_int = 27;
|
||||
+pub const SOCK_STREAM: ::c_int = 1;
|
||||
+pub const SOCK_DGRAM: ::c_int = 2;
|
||||
+pub const SA_ONSTACK: ::c_int = 134217728;
|
||||
+pub const SA_SIGINFO: ::c_int = 4;
|
||||
+pub const SA_NOCLDWAIT: ::c_int = 2;
|
||||
+pub const SIGTTIN: ::c_int = 21;
|
||||
+pub const SIGTTOU: ::c_int = 22;
|
||||
+pub const SIGXCPU: ::c_int = 24;
|
||||
+pub const SIGXFSZ: ::c_int = 25;
|
||||
+pub const SIGVTALRM: ::c_int = 26;
|
||||
+pub const SIGPROF: ::c_int = 27;
|
||||
+pub const SIGWINCH: ::c_int = 28;
|
||||
+pub const SIGCHLD: ::c_int = 17;
|
||||
+pub const SIGBUS: ::c_int = 7;
|
||||
+pub const SIGUSR1: ::c_int = 10;
|
||||
+pub const SIGUSR2: ::c_int = 12;
|
||||
+pub const SIGCONT: ::c_int = 18;
|
||||
+pub const SIGSTOP: ::c_int = 19;
|
||||
+pub const SIGTSTP: ::c_int = 20;
|
||||
+pub const SIGURG: ::c_int = 23;
|
||||
+pub const SIGIO: ::c_int = 29;
|
||||
+pub const SIGSYS: ::c_int = 31;
|
||||
+pub const SIGSTKFLT: ::c_int = 16;
|
||||
+pub const SIGPOLL: ::c_int = 29;
|
||||
+pub const SIGPWR: ::c_int = 30;
|
||||
+pub const SIG_SETMASK: ::c_int = 2;
|
||||
+pub const SIG_BLOCK: ::c_int = 0;
|
||||
+pub const SIG_UNBLOCK: ::c_int = 1;
|
||||
+pub const POLLWRNORM: ::c_short = 256;
|
||||
+pub const POLLWRBAND: ::c_short = 512;
|
||||
+pub const O_ASYNC: ::c_int = 8192;
|
||||
+pub const O_NDELAY: ::c_int = 2048;
|
||||
+pub const PTRACE_DETACH: ::c_uint = 17;
|
||||
+pub const EFD_NONBLOCK: ::c_int = 2048;
|
||||
+pub const F_GETLK: ::c_int = 5;
|
||||
+pub const F_GETOWN: ::c_int = 9;
|
||||
+pub const F_SETOWN: ::c_int = 8;
|
||||
+pub const F_SETLK: ::c_int = 6;
|
||||
+pub const F_SETLKW: ::c_int = 7;
|
||||
+pub const F_RDLCK: ::c_int = 0;
|
||||
+pub const F_WRLCK: ::c_int = 1;
|
||||
+pub const F_UNLCK: ::c_int = 2;
|
||||
+pub const F_OFD_GETLK: ::c_int = 36;
|
||||
+pub const F_OFD_SETLK: ::c_int = 37;
|
||||
+pub const F_OFD_SETLKW: ::c_int = 38;
|
||||
+pub const SFD_NONBLOCK: ::c_int = 2048;
|
||||
+pub const TCSANOW: ::c_int = 0;
|
||||
+pub const TCSADRAIN: ::c_int = 1;
|
||||
+pub const TCSAFLUSH: ::c_int = 2;
|
||||
+pub const TIOCLINUX: ::c_ulong = 21532;
|
||||
+pub const TIOCGSERIAL: ::c_ulong = 21534;
|
||||
+pub const TIOCEXCL: ::c_ulong = 21516;
|
||||
+pub const TIOCNXCL: ::c_ulong = 21517;
|
||||
+pub const TIOCSCTTY: ::c_ulong = 21518;
|
||||
+pub const TIOCSTI: ::c_ulong = 21522;
|
||||
+pub const TIOCMGET: ::c_ulong = 21525;
|
||||
+pub const TIOCMBIS: ::c_ulong = 21526;
|
||||
+pub const TIOCMBIC: ::c_ulong = 21527;
|
||||
+pub const TIOCMSET: ::c_ulong = 21528;
|
||||
+pub const TIOCCONS: ::c_ulong = 21533;
|
||||
+pub const TIOCM_ST: ::c_int = 8;
|
||||
+pub const TIOCM_SR: ::c_int = 16;
|
||||
+pub const TIOCM_CTS: ::c_int = 32;
|
||||
+pub const TIOCM_CAR: ::c_int = 64;
|
||||
+pub const TIOCM_RNG: ::c_int = 128;
|
||||
+pub const TIOCM_DSR: ::c_int = 256;
|
||||
+pub const SFD_CLOEXEC: ::c_int = 524288;
|
||||
+pub const NCCS: usize = 32;
|
||||
+pub const O_TRUNC: ::c_int = 512;
|
||||
+pub const O_CLOEXEC: ::c_int = 524288;
|
||||
+pub const EBFONT: ::c_int = 59;
|
||||
+pub const ENOSTR: ::c_int = 60;
|
||||
+pub const ENODATA: ::c_int = 61;
|
||||
+pub const ETIME: ::c_int = 62;
|
||||
+pub const ENOSR: ::c_int = 63;
|
||||
+pub const ENONET: ::c_int = 64;
|
||||
+pub const ENOPKG: ::c_int = 65;
|
||||
+pub const EREMOTE: ::c_int = 66;
|
||||
+pub const ENOLINK: ::c_int = 67;
|
||||
+pub const EADV: ::c_int = 68;
|
||||
+pub const ESRMNT: ::c_int = 69;
|
||||
+pub const ECOMM: ::c_int = 70;
|
||||
+pub const EPROTO: ::c_int = 71;
|
||||
+pub const EDOTDOT: ::c_int = 73;
|
||||
+pub const SA_NODEFER: ::c_int = 1073741824;
|
||||
+pub const SA_RESETHAND: ::c_int = -2147483648;
|
||||
+pub const SA_RESTART: ::c_int = 268435456;
|
||||
+pub const SA_NOCLDSTOP: ::c_int = 1;
|
||||
+pub const EPOLL_CLOEXEC: ::c_int = 524288;
|
||||
+pub const EFD_CLOEXEC: ::c_int = 524288;
|
||||
+pub const __SIZEOF_PTHREAD_CONDATTR_T: usize = 4;
|
||||
+pub const __SIZEOF_PTHREAD_MUTEXATTR_T: usize = 4;
|
||||
+pub const O_DIRECT: ::c_int = 16384;
|
||||
+pub const O_DIRECTORY: ::c_int = 65536;
|
||||
+pub const O_NOFOLLOW: ::c_int = 131072;
|
||||
+pub const MAP_HUGETLB: ::c_int = 262144;
|
||||
+pub const MAP_LOCKED: ::c_int = 8192;
|
||||
+pub const MAP_NORESERVE: ::c_int = 16384;
|
||||
+pub const MAP_ANON: ::c_int = 32;
|
||||
+pub const MAP_ANONYMOUS: ::c_int = 32;
|
||||
+pub const MAP_DENYWRITE: ::c_int = 2048;
|
||||
+pub const MAP_EXECUTABLE: ::c_int = 4096;
|
||||
+pub const MAP_POPULATE: ::c_int = 32768;
|
||||
+pub const MAP_NONBLOCK: ::c_int = 65536;
|
||||
+pub const MAP_STACK: ::c_int = 131072;
|
||||
+pub const MAP_SYNC : ::c_int = 0x080000;
|
||||
+pub const EDEADLOCK: ::c_int = 35;
|
||||
+pub const EUCLEAN: ::c_int = 117;
|
||||
+pub const ENOTNAM: ::c_int = 118;
|
||||
+pub const ENAVAIL: ::c_int = 119;
|
||||
+pub const EISNAM: ::c_int = 120;
|
||||
+pub const EREMOTEIO: ::c_int = 121;
|
||||
+pub const FIOCLEX: ::c_ulong = 21585;
|
||||
+pub const FIONCLEX: ::c_ulong = 21584;
|
||||
+pub const FIONBIO: ::c_ulong = 21537;
|
||||
+pub const MCL_CURRENT: ::c_int = 1;
|
||||
+pub const MCL_FUTURE: ::c_int = 2;
|
||||
+pub const SIGSTKSZ: ::size_t = 8192;
|
||||
+pub const MINSIGSTKSZ: ::size_t = 2048;
|
||||
+pub const CBAUD: ::tcflag_t = 4111;
|
||||
+pub const TAB1: ::tcflag_t = 2048;
|
||||
+pub const TAB2: ::tcflag_t = 4096;
|
||||
+pub const TAB3: ::tcflag_t = 6144;
|
||||
+pub const CR1: ::tcflag_t = 512;
|
||||
+pub const CR2: ::tcflag_t = 1024;
|
||||
+pub const CR3: ::tcflag_t = 1536;
|
||||
+pub const FF1: ::tcflag_t = 32768;
|
||||
+pub const BS1: ::tcflag_t = 8192;
|
||||
+pub const VT1: ::tcflag_t = 16384;
|
||||
+pub const VWERASE: usize = 14;
|
||||
+pub const VREPRINT: usize = 12;
|
||||
+pub const VSUSP: usize = 10;
|
||||
+pub const VSTART: usize = 8;
|
||||
+pub const VSTOP: usize = 9;
|
||||
+pub const VDISCARD: usize = 13;
|
||||
+pub const VTIME: usize = 5;
|
||||
+pub const IXON: ::tcflag_t = 1024;
|
||||
+pub const IXOFF: ::tcflag_t = 4096;
|
||||
+pub const ONLCR: ::tcflag_t = 4;
|
||||
+pub const CSIZE: ::tcflag_t = 48;
|
||||
+pub const CS6: ::tcflag_t = 16;
|
||||
+pub const CS7: ::tcflag_t = 32;
|
||||
+pub const CS8: ::tcflag_t = 48;
|
||||
+pub const CSTOPB: ::tcflag_t = 64;
|
||||
+pub const CREAD: ::tcflag_t = 128;
|
||||
+pub const PARENB: ::tcflag_t = 256;
|
||||
+pub const PARODD: ::tcflag_t = 512;
|
||||
+pub const HUPCL: ::tcflag_t = 1024;
|
||||
+pub const CLOCAL: ::tcflag_t = 2048;
|
||||
+pub const ECHOKE: ::tcflag_t = 2048;
|
||||
+pub const ECHOE: ::tcflag_t = 16;
|
||||
+pub const ECHOK: ::tcflag_t = 32;
|
||||
+pub const ECHONL: ::tcflag_t = 64;
|
||||
+pub const ECHOPRT: ::tcflag_t = 1024;
|
||||
+pub const ECHOCTL: ::tcflag_t = 512;
|
||||
+pub const ISIG: ::tcflag_t = 1;
|
||||
+pub const ICANON: ::tcflag_t = 2;
|
||||
+pub const PENDIN: ::tcflag_t = 16384;
|
||||
+pub const NOFLSH: ::tcflag_t = 128;
|
||||
+pub const CIBAUD: ::tcflag_t = 269418496;
|
||||
+pub const CBAUDEX: ::tcflag_t = 4096;
|
||||
+pub const VSWTC: usize = 7;
|
||||
+pub const OLCUC: ::tcflag_t = 2;
|
||||
+pub const NLDLY: ::tcflag_t = 256;
|
||||
+pub const CRDLY: ::tcflag_t = 1536;
|
||||
+pub const TABDLY: ::tcflag_t = 6144;
|
||||
+pub const BSDLY: ::tcflag_t = 8192;
|
||||
+pub const FFDLY: ::tcflag_t = 32768;
|
||||
+pub const VTDLY: ::tcflag_t = 16384;
|
||||
+pub const XTABS: ::tcflag_t = 6144;
|
||||
+pub const B0: ::speed_t = 0;
|
||||
+pub const B50: ::speed_t = 1;
|
||||
+pub const B75: ::speed_t = 2;
|
||||
+pub const B110: ::speed_t = 3;
|
||||
+pub const B134: ::speed_t = 4;
|
||||
+pub const B150: ::speed_t = 5;
|
||||
+pub const B200: ::speed_t = 6;
|
||||
+pub const B300: ::speed_t = 7;
|
||||
+pub const B600: ::speed_t = 8;
|
||||
+pub const B1200: ::speed_t = 9;
|
||||
+pub const B1800: ::speed_t = 10;
|
||||
+pub const B2400: ::speed_t = 11;
|
||||
+pub const B4800: ::speed_t = 12;
|
||||
+pub const B9600: ::speed_t = 13;
|
||||
+pub const B19200: ::speed_t = 14;
|
||||
+pub const B38400: ::speed_t = 15;
|
||||
+pub const EXTA: ::speed_t = 14;
|
||||
+pub const EXTB: ::speed_t = 15;
|
||||
+pub const B57600: ::speed_t = 4097;
|
||||
+pub const B115200: ::speed_t = 4098;
|
||||
+pub const B230400: ::speed_t = 4099;
|
||||
+pub const B460800: ::speed_t = 4100;
|
||||
+pub const B500000: ::speed_t = 4101;
|
||||
+pub const B576000: ::speed_t = 4102;
|
||||
+pub const B921600: ::speed_t = 4103;
|
||||
+pub const B1000000: ::speed_t = 4104;
|
||||
+pub const B1152000: ::speed_t = 4105;
|
||||
+pub const B1500000: ::speed_t = 4106;
|
||||
+pub const B2000000: ::speed_t = 4107;
|
||||
+pub const B2500000: ::speed_t = 4108;
|
||||
+pub const B3000000: ::speed_t = 4109;
|
||||
+pub const B3500000: ::speed_t = 4110;
|
||||
+pub const B4000000: ::speed_t = 4111;
|
||||
+pub const VEOL: usize = 11;
|
||||
+pub const VEOL2: usize = 16;
|
||||
+pub const VMIN: usize = 6;
|
||||
+pub const IEXTEN: ::tcflag_t = 32768;
|
||||
+pub const TOSTOP: ::tcflag_t = 256;
|
||||
+pub const FLUSHO: ::tcflag_t = 4096;
|
||||
+pub const EXTPROC: ::tcflag_t = 65536;
|
||||
+pub const TCGETS: ::c_ulong = 21505;
|
||||
+pub const TCSETS: ::c_ulong = 21506;
|
||||
+pub const TCSETSW: ::c_ulong = 21507;
|
||||
+pub const TCSETSF: ::c_ulong = 21508;
|
||||
+pub const TCGETA: ::c_ulong = 21509;
|
||||
+pub const TCSETA: ::c_ulong = 21510;
|
||||
+pub const TCSETAW: ::c_ulong = 21511;
|
||||
+pub const TCSETAF: ::c_ulong = 21512;
|
||||
+pub const TCSBRK: ::c_ulong = 21513;
|
||||
+pub const TCXONC: ::c_ulong = 21514;
|
||||
+pub const TCFLSH: ::c_ulong = 21515;
|
||||
+pub const TIOCINQ: ::c_ulong = 21531;
|
||||
+pub const TIOCGPGRP: ::c_ulong = 21519;
|
||||
+pub const TIOCSPGRP: ::c_ulong = 21520;
|
||||
+pub const TIOCOUTQ: ::c_ulong = 21521;
|
||||
+pub const TIOCGWINSZ: ::c_ulong = 21523;
|
||||
+pub const TIOCSWINSZ: ::c_ulong = 21524;
|
||||
+pub const FIONREAD: ::c_ulong = 21531;
|
||||
+pub const __SIZEOF_PTHREAD_MUTEX_T: usize = 40;
|
||||
+pub const __SIZEOF_PTHREAD_RWLOCK_T: usize = 56;
|
||||
+pub const SYS_read: ::c_long = 63;
|
||||
+pub const SYS_write: ::c_long = 64;
|
||||
+pub const SYS_close: ::c_long = 57;
|
||||
+pub const SYS_fstat: ::c_long = 80;
|
||||
+pub const SYS_lseek: ::c_long = 62;
|
||||
+pub const SYS_mmap: ::c_long = 222;
|
||||
+pub const SYS_mprotect: ::c_long = 226;
|
||||
+pub const SYS_munmap: ::c_long = 215;
|
||||
+pub const SYS_brk: ::c_long = 214;
|
||||
+pub const SYS_rt_sigaction: ::c_long = 134;
|
||||
+pub const SYS_rt_sigprocmask: ::c_long = 135;
|
||||
+pub const SYS_rt_sigreturn: ::c_long = 139;
|
||||
+pub const SYS_ioctl: ::c_long = 29;
|
||||
+pub const SYS_pread64: ::c_long = 67;
|
||||
+pub const SYS_pwrite64: ::c_long = 68;
|
||||
+pub const SYS_readv: ::c_long = 65;
|
||||
+pub const SYS_writev: ::c_long = 66;
|
||||
+pub const SYS_sched_yield: ::c_long = 124;
|
||||
+pub const SYS_mremap: ::c_long = 216;
|
||||
+pub const SYS_msync: ::c_long = 227;
|
||||
+pub const SYS_mincore: ::c_long = 232;
|
||||
+pub const SYS_madvise: ::c_long = 233;
|
||||
+pub const SYS_shmget: ::c_long = 194;
|
||||
+pub const SYS_shmat: ::c_long = 196;
|
||||
+pub const SYS_shmctl: ::c_long = 195;
|
||||
+pub const SYS_dup: ::c_long = 23;
|
||||
+pub const SYS_nanosleep: ::c_long = 101;
|
||||
+pub const SYS_getitimer: ::c_long = 102;
|
||||
+pub const SYS_setitimer: ::c_long = 103;
|
||||
+pub const SYS_getpid: ::c_long = 172;
|
||||
+pub const SYS_sendfile: ::c_long = 71;
|
||||
+pub const SYS_socket: ::c_long = 198;
|
||||
+pub const SYS_connect: ::c_long = 203;
|
||||
+pub const SYS_accept: ::c_long = 202;
|
||||
+pub const SYS_sendto: ::c_long = 206;
|
||||
+pub const SYS_recvfrom: ::c_long = 207;
|
||||
+pub const SYS_sendmsg: ::c_long = 211;
|
||||
+pub const SYS_recvmsg: ::c_long = 212;
|
||||
+pub const SYS_shutdown: ::c_long = 210;
|
||||
+pub const SYS_bind: ::c_long = 200;
|
||||
+pub const SYS_listen: ::c_long = 201;
|
||||
+pub const SYS_getsockname: ::c_long = 204;
|
||||
+pub const SYS_getpeername: ::c_long = 205;
|
||||
+pub const SYS_socketpair: ::c_long = 199;
|
||||
+pub const SYS_setsockopt: ::c_long = 208;
|
||||
+pub const SYS_getsockopt: ::c_long = 209;
|
||||
+pub const SYS_clone: ::c_long = 220;
|
||||
+pub const SYS_execve: ::c_long = 221;
|
||||
+pub const SYS_exit: ::c_long = 93;
|
||||
+pub const SYS_wait4: ::c_long = 260;
|
||||
+pub const SYS_kill: ::c_long = 129;
|
||||
+pub const SYS_uname: ::c_long = 160;
|
||||
+pub const SYS_semget: ::c_long = 190;
|
||||
+pub const SYS_semop: ::c_long = 193;
|
||||
+pub const SYS_semctl: ::c_long = 191;
|
||||
+pub const SYS_shmdt: ::c_long = 197;
|
||||
+pub const SYS_msgget: ::c_long = 186;
|
||||
+pub const SYS_msgsnd: ::c_long = 189;
|
||||
+pub const SYS_msgrcv: ::c_long = 188;
|
||||
+pub const SYS_msgctl: ::c_long = 187;
|
||||
+pub const SYS_fcntl: ::c_long = 25;
|
||||
+pub const SYS_flock: ::c_long = 32;
|
||||
+pub const SYS_fsync: ::c_long = 82;
|
||||
+pub const SYS_fdatasync: ::c_long = 83;
|
||||
+pub const SYS_truncate: ::c_long = 45;
|
||||
+pub const SYS_ftruncate: ::c_long = 46;
|
||||
+pub const SYS_getcwd: ::c_long = 17;
|
||||
+pub const SYS_chdir: ::c_long = 49;
|
||||
+pub const SYS_fchdir: ::c_long = 50;
|
||||
+pub const SYS_fchmod: ::c_long = 52;
|
||||
+pub const SYS_fchown: ::c_long = 55;
|
||||
+pub const SYS_umask: ::c_long = 166;
|
||||
+pub const SYS_gettimeofday: ::c_long = 169;
|
||||
+pub const SYS_getrlimit: ::c_long = 163;
|
||||
+pub const SYS_getrusage: ::c_long = 165;
|
||||
+pub const SYS_sysinfo: ::c_long = 179;
|
||||
+pub const SYS_times: ::c_long = 153;
|
||||
+pub const SYS_ptrace: ::c_long = 117;
|
||||
+pub const SYS_getuid: ::c_long = 174;
|
||||
+pub const SYS_syslog: ::c_long = 116;
|
||||
+pub const SYS_getgid: ::c_long = 176;
|
||||
+pub const SYS_setuid: ::c_long = 146;
|
||||
+pub const SYS_setgid: ::c_long = 144;
|
||||
+pub const SYS_geteuid: ::c_long = 175;
|
||||
+pub const SYS_getegid: ::c_long = 177;
|
||||
+pub const SYS_setpgid: ::c_long = 154;
|
||||
+pub const SYS_getppid: ::c_long = 173;
|
||||
+pub const SYS_setsid: ::c_long = 157;
|
||||
+pub const SYS_setreuid: ::c_long = 145;
|
||||
+pub const SYS_setregid: ::c_long = 143;
|
||||
+pub const SYS_getgroups: ::c_long = 158;
|
||||
+pub const SYS_setgroups: ::c_long = 159;
|
||||
+pub const SYS_setresuid: ::c_long = 147;
|
||||
+pub const SYS_getresuid: ::c_long = 148;
|
||||
+pub const SYS_setresgid: ::c_long = 149;
|
||||
+pub const SYS_getresgid: ::c_long = 150;
|
||||
+pub const SYS_getpgid: ::c_long = 155;
|
||||
+pub const SYS_setfsuid: ::c_long = 151;
|
||||
+pub const SYS_setfsgid: ::c_long = 152;
|
||||
+pub const SYS_getsid: ::c_long = 156;
|
||||
+pub const SYS_capget: ::c_long = 90;
|
||||
+pub const SYS_capset: ::c_long = 91;
|
||||
+pub const SYS_rt_sigpending: ::c_long = 136;
|
||||
+pub const SYS_rt_sigtimedwait: ::c_long = 137;
|
||||
+pub const SYS_rt_sigqueueinfo: ::c_long = 138;
|
||||
+pub const SYS_rt_sigsuspend: ::c_long = 133;
|
||||
+pub const SYS_sigaltstack: ::c_long = 132;
|
||||
+pub const SYS_personality: ::c_long = 92;
|
||||
+pub const SYS_statfs: ::c_long = 43;
|
||||
+pub const SYS_fstatfs: ::c_long = 44;
|
||||
+pub const SYS_getpriority: ::c_long = 141;
|
||||
+pub const SYS_setpriority: ::c_long = 140;
|
||||
+pub const SYS_sched_setparam: ::c_long = 118;
|
||||
+pub const SYS_sched_getparam: ::c_long = 121;
|
||||
+pub const SYS_sched_setscheduler: ::c_long = 119;
|
||||
+pub const SYS_sched_getscheduler: ::c_long = 120;
|
||||
+pub const SYS_sched_get_priority_max: ::c_long = 125;
|
||||
+pub const SYS_sched_get_priority_min: ::c_long = 126;
|
||||
+pub const SYS_sched_rr_get_interval: ::c_long = 127;
|
||||
+pub const SYS_mlock: ::c_long = 228;
|
||||
+pub const SYS_munlock: ::c_long = 229;
|
||||
+pub const SYS_mlockall: ::c_long = 230;
|
||||
+pub const SYS_munlockall: ::c_long = 231;
|
||||
+pub const SYS_vhangup: ::c_long = 58;
|
||||
+pub const SYS_pivot_root: ::c_long = 41;
|
||||
+pub const SYS_prctl: ::c_long = 167;
|
||||
+pub const SYS_adjtimex: ::c_long = 171;
|
||||
+pub const SYS_setrlimit: ::c_long = 164;
|
||||
+pub const SYS_chroot: ::c_long = 51;
|
||||
+pub const SYS_sync: ::c_long = 81;
|
||||
+pub const SYS_acct: ::c_long = 89;
|
||||
+pub const SYS_settimeofday: ::c_long = 170;
|
||||
+pub const SYS_mount: ::c_long = 40;
|
||||
+pub const SYS_umount2: ::c_long = 39;
|
||||
+pub const SYS_swapon: ::c_long = 224;
|
||||
+pub const SYS_swapoff: ::c_long = 225;
|
||||
+pub const SYS_reboot: ::c_long = 142;
|
||||
+pub const SYS_sethostname: ::c_long = 161;
|
||||
+pub const SYS_setdomainname: ::c_long = 162;
|
||||
+pub const SYS_init_module: ::c_long = 105;
|
||||
+pub const SYS_delete_module: ::c_long = 106;
|
||||
+pub const SYS_quotactl: ::c_long = 60;
|
||||
+pub const SYS_nfsservctl: ::c_long = 42;
|
||||
+pub const SYS_gettid: ::c_long = 178;
|
||||
+pub const SYS_readahead: ::c_long = 213;
|
||||
+pub const SYS_setxattr: ::c_long = 5;
|
||||
+pub const SYS_lsetxattr: ::c_long = 6;
|
||||
+pub const SYS_fsetxattr: ::c_long = 7;
|
||||
+pub const SYS_getxattr: ::c_long = 8;
|
||||
+pub const SYS_lgetxattr: ::c_long = 9;
|
||||
+pub const SYS_fgetxattr: ::c_long = 10;
|
||||
+pub const SYS_listxattr: ::c_long = 11;
|
||||
+pub const SYS_llistxattr: ::c_long = 12;
|
||||
+pub const SYS_flistxattr: ::c_long = 13;
|
||||
+pub const SYS_removexattr: ::c_long = 14;
|
||||
+pub const SYS_lremovexattr: ::c_long = 15;
|
||||
+pub const SYS_fremovexattr: ::c_long = 16;
|
||||
+pub const SYS_tkill: ::c_long = 130;
|
||||
+pub const SYS_futex: ::c_long = 98;
|
||||
+pub const SYS_sched_setaffinity: ::c_long = 122;
|
||||
+pub const SYS_sched_getaffinity: ::c_long = 123;
|
||||
+pub const SYS_io_setup: ::c_long = 0;
|
||||
+pub const SYS_io_destroy: ::c_long = 1;
|
||||
+pub const SYS_io_getevents: ::c_long = 4;
|
||||
+pub const SYS_io_submit: ::c_long = 2;
|
||||
+pub const SYS_io_cancel: ::c_long = 3;
|
||||
+pub const SYS_lookup_dcookie: ::c_long = 18;
|
||||
+pub const SYS_remap_file_pages: ::c_long = 234;
|
||||
+pub const SYS_getdents64: ::c_long = 61;
|
||||
+pub const SYS_set_tid_address: ::c_long = 96;
|
||||
+pub const SYS_restart_syscall: ::c_long = 128;
|
||||
+pub const SYS_semtimedop: ::c_long = 192;
|
||||
+pub const SYS_fadvise64: ::c_long = 223;
|
||||
+pub const SYS_timer_create: ::c_long = 107;
|
||||
+pub const SYS_timer_settime: ::c_long = 110;
|
||||
+pub const SYS_timer_gettime: ::c_long = 108;
|
||||
+pub const SYS_timer_getoverrun: ::c_long = 109;
|
||||
+pub const SYS_timer_delete: ::c_long = 111;
|
||||
+pub const SYS_clock_settime: ::c_long = 112;
|
||||
+pub const SYS_clock_gettime: ::c_long = 113;
|
||||
+pub const SYS_clock_getres: ::c_long = 114;
|
||||
+pub const SYS_clock_nanosleep: ::c_long = 115;
|
||||
+pub const SYS_exit_group: ::c_long = 94;
|
||||
+pub const SYS_epoll_ctl: ::c_long = 21;
|
||||
+pub const SYS_tgkill: ::c_long = 131;
|
||||
+pub const SYS_mbind: ::c_long = 235;
|
||||
+pub const SYS_set_mempolicy: ::c_long = 237;
|
||||
+pub const SYS_get_mempolicy: ::c_long = 236;
|
||||
+pub const SYS_mq_open: ::c_long = 180;
|
||||
+pub const SYS_mq_unlink: ::c_long = 181;
|
||||
+pub const SYS_mq_timedsend: ::c_long = 182;
|
||||
+pub const SYS_mq_timedreceive: ::c_long = 183;
|
||||
+pub const SYS_mq_notify: ::c_long = 184;
|
||||
+pub const SYS_mq_getsetattr: ::c_long = 185;
|
||||
+pub const SYS_kexec_load: ::c_long = 104;
|
||||
+pub const SYS_waitid: ::c_long = 95;
|
||||
+pub const SYS_add_key: ::c_long = 217;
|
||||
+pub const SYS_request_key: ::c_long = 218;
|
||||
+pub const SYS_keyctl: ::c_long = 219;
|
||||
+pub const SYS_ioprio_set: ::c_long = 30;
|
||||
+pub const SYS_ioprio_get: ::c_long = 31;
|
||||
+pub const SYS_inotify_add_watch: ::c_long = 27;
|
||||
+pub const SYS_inotify_rm_watch: ::c_long = 28;
|
||||
+pub const SYS_migrate_pages: ::c_long = 238;
|
||||
+pub const SYS_openat: ::c_long = 56;
|
||||
+pub const SYS_mkdirat: ::c_long = 34;
|
||||
+pub const SYS_mknodat: ::c_long = 33;
|
||||
+pub const SYS_fchownat: ::c_long = 54;
|
||||
+pub const SYS_newfstatat: ::c_long = 79;
|
||||
+pub const SYS_unlinkat: ::c_long = 35;
|
||||
+pub const SYS_linkat: ::c_long = 37;
|
||||
+pub const SYS_symlinkat: ::c_long = 36;
|
||||
+pub const SYS_readlinkat: ::c_long = 78;
|
||||
+pub const SYS_fchmodat: ::c_long = 53;
|
||||
+pub const SYS_faccessat: ::c_long = 48;
|
||||
+pub const SYS_pselect6: ::c_long = 72;
|
||||
+pub const SYS_ppoll: ::c_long = 73;
|
||||
+pub const SYS_unshare: ::c_long = 97;
|
||||
+pub const SYS_set_robust_list: ::c_long = 99;
|
||||
+pub const SYS_get_robust_list: ::c_long = 100;
|
||||
+pub const SYS_splice: ::c_long = 76;
|
||||
+pub const SYS_tee: ::c_long = 77;
|
||||
+pub const SYS_sync_file_range: ::c_long = 84;
|
||||
+pub const SYS_vmsplice: ::c_long = 75;
|
||||
+pub const SYS_move_pages: ::c_long = 239;
|
||||
+pub const SYS_utimensat: ::c_long = 88;
|
||||
+pub const SYS_epoll_pwait: ::c_long = 22;
|
||||
+pub const SYS_timerfd_create: ::c_long = 85;
|
||||
+pub const SYS_fallocate: ::c_long = 47;
|
||||
+pub const SYS_timerfd_settime: ::c_long = 86;
|
||||
+pub const SYS_timerfd_gettime: ::c_long = 87;
|
||||
+pub const SYS_accept4: ::c_long = 242;
|
||||
+pub const SYS_signalfd4: ::c_long = 74;
|
||||
+pub const SYS_eventfd2: ::c_long = 19;
|
||||
+pub const SYS_epoll_create1: ::c_long = 20;
|
||||
+pub const SYS_dup3: ::c_long = 24;
|
||||
+pub const SYS_pipe2: ::c_long = 59;
|
||||
+pub const SYS_inotify_init1: ::c_long = 26;
|
||||
+pub const SYS_preadv: ::c_long = 69;
|
||||
+pub const SYS_pwritev: ::c_long = 70;
|
||||
+pub const SYS_rt_tgsigqueueinfo: ::c_long = 240;
|
||||
+pub const SYS_perf_event_open: ::c_long = 241;
|
||||
+pub const SYS_recvmmsg: ::c_long = 243;
|
||||
+pub const SYS_fanotify_init: ::c_long = 262;
|
||||
+pub const SYS_fanotify_mark: ::c_long = 263;
|
||||
+pub const SYS_prlimit64: ::c_long = 261;
|
||||
+pub const SYS_name_to_handle_at: ::c_long = 264;
|
||||
+pub const SYS_open_by_handle_at: ::c_long = 265;
|
||||
+pub const SYS_clock_adjtime: ::c_long = 266;
|
||||
+pub const SYS_syncfs: ::c_long = 267;
|
||||
+pub const SYS_sendmmsg: ::c_long = 269;
|
||||
+pub const SYS_setns: ::c_long = 268;
|
||||
+pub const SYS_getcpu: ::c_long = 168;
|
||||
+pub const SYS_process_vm_readv: ::c_long = 270;
|
||||
+pub const SYS_process_vm_writev: ::c_long = 271;
|
||||
+pub const SYS_kcmp: ::c_long = 272;
|
||||
+pub const SYS_finit_module: ::c_long = 273;
|
||||
+pub const SYS_sched_setattr: ::c_long = 274;
|
||||
+pub const SYS_sched_getattr: ::c_long = 275;
|
||||
+pub const SYS_renameat2: ::c_long = 276;
|
||||
+pub const SYS_seccomp: ::c_long = 277;
|
||||
+pub const SYS_getrandom: ::c_long = 278;
|
||||
+pub const SYS_memfd_create: ::c_long = 279;
|
||||
+pub const SYS_bpf: ::c_long = 280;
|
||||
+pub const SYS_execveat: ::c_long = 281;
|
||||
+pub const SYS_userfaultfd: ::c_long = 282;
|
||||
+pub const SYS_membarrier: ::c_long = 283;
|
||||
+pub const SYS_mlock2: ::c_long = 284;
|
||||
+pub const SYS_copy_file_range: ::c_long = 285;
|
||||
+pub const SYS_preadv2: ::c_long = 286;
|
||||
+pub const SYS_pwritev2: ::c_long = 287;
|
||||
+pub const SYS_pkey_mprotect: ::c_long = 288;
|
||||
+pub const SYS_pkey_alloc: ::c_long = 289;
|
||||
+pub const SYS_pkey_free: ::c_long = 290;
|
||||
+pub const SYS_statx: ::c_long = 291;
|
||||
+pub const SYS_pidfd_open: ::c_long = 434;
|
||||
+pub const SYS_clone3: ::c_long = 435;
|
||||
--
|
||||
2.27.0
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
From 4319893ebb7fca8bbd2bffc4bddb8d3ecdc08cc2 Mon Sep 17 00:00:00 2001
|
||||
From: Ralf Anton Beier <ralf_beier@me.com>
|
||||
Date: Sun, 8 Aug 2021 11:07:21 +0200
|
||||
Subject: [PATCH 6/8] FIXUP: linux/musl/mod.rs: add riscv64 to b64 set -
|
||||
libc-0.2.93
|
||||
|
||||
https://github.com/rust-lang/libc/pull/1994/commits/30070c822be2ef399b2ba38cdc1d72ac694d65a3
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
Signed-off-by: Ralf Anton Beier <ralf_beier@me.com>
|
||||
---
|
||||
vendor/libc-0.2.93/src/unix/linux_like/linux/musl/mod.rs | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/vendor/libc-0.2.93/src/unix/linux_like/linux/musl/mod.rs b/vendor/libc-0.2.93/src/unix/linux_like/linux/musl/mod.rs
|
||||
index 00f26475d..a37f410fd 100644
|
||||
--- a/vendor/libc-0.2.93/src/unix/linux_like/linux/musl/mod.rs
|
||||
+++ b/vendor/libc-0.2.93/src/unix/linux_like/linux/musl/mod.rs
|
||||
@@ -716,7 +716,8 @@ cfg_if! {
|
||||
target_arch = "aarch64",
|
||||
target_arch = "mips64",
|
||||
target_arch = "powerpc64",
|
||||
- target_arch = "s390x"))] {
|
||||
+ target_arch = "s390x",
|
||||
+ target_arch = "riscv64"))] {
|
||||
mod b64;
|
||||
pub use self::b64::*;
|
||||
} else if #[cfg(any(target_arch = "x86",
|
||||
--
|
||||
2.27.0
|
||||
|
||||
@@ -0,0 +1,741 @@
|
||||
From 9d240d05c6e6620f36e4ddbcbcb5862fb3269d9f Mon Sep 17 00:00:00 2001
|
||||
From: Ralf Anton Beier <ralf_beier@me.com>
|
||||
Date: Sun, 8 Aug 2021 11:09:17 +0200
|
||||
Subject: [PATCH 7/8] FIXUP Correct definitions to match musl - libc-0.2.93
|
||||
|
||||
https://github.com/rust-lang/libc/pull/1994/commits/5f6a4d9745c79c81be63c708515ab116786554a3
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
Signed-off-by: Ralf Anton Beier <ralf_beier@me.com>
|
||||
---
|
||||
.../linux_like/linux/musl/b64/riscv64/mod.rs | 708 ++++++++----------
|
||||
1 file changed, 311 insertions(+), 397 deletions(-)
|
||||
|
||||
diff --git a/vendor/libc-0.2.93/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs b/vendor/libc-0.2.93/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs
|
||||
index 14bae11d0..c37190cca 100644
|
||||
--- a/vendor/libc-0.2.93/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs
|
||||
+++ b/vendor/libc-0.2.93/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs
|
||||
@@ -191,403 +191,8 @@ s! {
|
||||
pub l_len: ::off64_t,
|
||||
pub l_pid: ::pid_t,
|
||||
}
|
||||
-
|
||||
- pub struct ip_mreqn {
|
||||
- pub imr_multiaddr: ::in_addr,
|
||||
- pub imr_address: ::in_addr,
|
||||
- pub imr_ifindex: ::c_int,
|
||||
- }
|
||||
}
|
||||
|
||||
-pub const POSIX_FADV_DONTNEED: ::c_int = 4;
|
||||
-pub const POSIX_FADV_NOREUSE: ::c_int = 5;
|
||||
-pub const VEOF: usize = 4;
|
||||
-pub const RTLD_DEEPBIND: ::c_int = 0x8;
|
||||
-pub const RTLD_GLOBAL: ::c_int = 0x100;
|
||||
-pub const RTLD_NOLOAD: ::c_int = 0x4;
|
||||
-pub const TIOCGSOFTCAR: ::c_ulong = 21529;
|
||||
-pub const TIOCSSOFTCAR: ::c_ulong = 21530;
|
||||
-pub const TIOCGRS485: ::c_int = 21550;
|
||||
-pub const TIOCSRS485: ::c_int = 21551;
|
||||
-pub const RLIMIT_RSS: ::__rlimit_resource_t = 5;
|
||||
-pub const RLIMIT_AS: ::__rlimit_resource_t = 9;
|
||||
-pub const RLIMIT_MEMLOCK: ::__rlimit_resource_t = 8;
|
||||
-pub const RLIMIT_NOFILE: ::__rlimit_resource_t = 7;
|
||||
-pub const RLIMIT_NPROC: ::__rlimit_resource_t = 6;
|
||||
-pub const O_APPEND: ::c_int = 1024;
|
||||
-pub const O_CREAT: ::c_int = 64;
|
||||
-pub const O_EXCL: ::c_int = 128;
|
||||
-pub const O_NOCTTY: ::c_int = 256;
|
||||
-pub const O_NONBLOCK: ::c_int = 2048;
|
||||
-pub const O_SYNC: ::c_int = 1052672;
|
||||
-pub const O_RSYNC: ::c_int = 1052672;
|
||||
-pub const O_DSYNC: ::c_int = 4096;
|
||||
-pub const O_FSYNC: ::c_int = 1052672;
|
||||
-pub const O_NOATIME: ::c_int = 262144;
|
||||
-pub const O_PATH: ::c_int = 2097152;
|
||||
-pub const O_TMPFILE: ::c_int = 4259840;
|
||||
-pub const MAP_GROWSDOWN: ::c_int = 256;
|
||||
-pub const EDEADLK: ::c_int = 35;
|
||||
-pub const ENAMETOOLONG: ::c_int = 36;
|
||||
-pub const ENOLCK: ::c_int = 37;
|
||||
-pub const ENOSYS: ::c_int = 38;
|
||||
-pub const ENOTEMPTY: ::c_int = 39;
|
||||
-pub const ELOOP: ::c_int = 40;
|
||||
-pub const ENOMSG: ::c_int = 42;
|
||||
-pub const EIDRM: ::c_int = 43;
|
||||
-pub const ECHRNG: ::c_int = 44;
|
||||
-pub const EL2NSYNC: ::c_int = 45;
|
||||
-pub const EL3HLT: ::c_int = 46;
|
||||
-pub const EL3RST: ::c_int = 47;
|
||||
-pub const ELNRNG: ::c_int = 48;
|
||||
-pub const EUNATCH: ::c_int = 49;
|
||||
-pub const ENOCSI: ::c_int = 50;
|
||||
-pub const EL2HLT: ::c_int = 51;
|
||||
-pub const EBADE: ::c_int = 52;
|
||||
-pub const EBADR: ::c_int = 53;
|
||||
-pub const EXFULL: ::c_int = 54;
|
||||
-pub const ENOANO: ::c_int = 55;
|
||||
-pub const EBADRQC: ::c_int = 56;
|
||||
-pub const EBADSLT: ::c_int = 57;
|
||||
-pub const EMULTIHOP: ::c_int = 72;
|
||||
-pub const EOVERFLOW: ::c_int = 75;
|
||||
-pub const ENOTUNIQ: ::c_int = 76;
|
||||
-pub const EBADFD: ::c_int = 77;
|
||||
-pub const EBADMSG: ::c_int = 74;
|
||||
-pub const EREMCHG: ::c_int = 78;
|
||||
-pub const ELIBACC: ::c_int = 79;
|
||||
-pub const ELIBBAD: ::c_int = 80;
|
||||
-pub const ELIBSCN: ::c_int = 81;
|
||||
-pub const ELIBMAX: ::c_int = 82;
|
||||
-pub const ELIBEXEC: ::c_int = 83;
|
||||
-pub const EILSEQ: ::c_int = 84;
|
||||
-pub const ERESTART: ::c_int = 85;
|
||||
-pub const ESTRPIPE: ::c_int = 86;
|
||||
-pub const EUSERS: ::c_int = 87;
|
||||
-pub const ENOTSOCK: ::c_int = 88;
|
||||
-pub const EDESTADDRREQ: ::c_int = 89;
|
||||
-pub const EMSGSIZE: ::c_int = 90;
|
||||
-pub const EPROTOTYPE: ::c_int = 91;
|
||||
-pub const ENOPROTOOPT: ::c_int = 92;
|
||||
-pub const EPROTONOSUPPORT: ::c_int = 93;
|
||||
-pub const ESOCKTNOSUPPORT: ::c_int = 94;
|
||||
-pub const EOPNOTSUPP: ::c_int = 95;
|
||||
-pub const EPFNOSUPPORT: ::c_int = 96;
|
||||
-pub const EAFNOSUPPORT: ::c_int = 97;
|
||||
-pub const EADDRINUSE: ::c_int = 98;
|
||||
-pub const EADDRNOTAVAIL: ::c_int = 99;
|
||||
-pub const ENETDOWN: ::c_int = 100;
|
||||
-pub const ENETUNREACH: ::c_int = 101;
|
||||
-pub const ENETRESET: ::c_int = 102;
|
||||
-pub const ECONNABORTED: ::c_int = 103;
|
||||
-pub const ECONNRESET: ::c_int = 104;
|
||||
-pub const ENOBUFS: ::c_int = 105;
|
||||
-pub const EISCONN: ::c_int = 106;
|
||||
-pub const ENOTCONN: ::c_int = 107;
|
||||
-pub const ESHUTDOWN: ::c_int = 108;
|
||||
-pub const ETOOMANYREFS: ::c_int = 109;
|
||||
-pub const ETIMEDOUT: ::c_int = 110;
|
||||
-pub const ECONNREFUSED: ::c_int = 111;
|
||||
-pub const EHOSTDOWN: ::c_int = 112;
|
||||
-pub const EHOSTUNREACH: ::c_int = 113;
|
||||
-pub const EALREADY: ::c_int = 114;
|
||||
-pub const EINPROGRESS: ::c_int = 115;
|
||||
-pub const ESTALE: ::c_int = 116;
|
||||
-pub const EDQUOT: ::c_int = 122;
|
||||
-pub const ENOMEDIUM: ::c_int = 123;
|
||||
-pub const EMEDIUMTYPE: ::c_int = 124;
|
||||
-pub const ECANCELED: ::c_int = 125;
|
||||
-pub const ENOKEY: ::c_int = 126;
|
||||
-pub const EKEYEXPIRED: ::c_int = 127;
|
||||
-pub const EKEYREVOKED: ::c_int = 128;
|
||||
-pub const EKEYREJECTED: ::c_int = 129;
|
||||
-pub const EOWNERDEAD: ::c_int = 130;
|
||||
-pub const ENOTRECOVERABLE: ::c_int = 131;
|
||||
-pub const EHWPOISON: ::c_int = 133;
|
||||
-pub const ERFKILL: ::c_int = 132;
|
||||
-pub const SOL_SOCKET: ::c_int = 1;
|
||||
-pub const SO_REUSEADDR: ::c_int = 2;
|
||||
-pub const SO_TYPE: ::c_int = 3;
|
||||
-pub const SO_ERROR: ::c_int = 4;
|
||||
-pub const SO_DONTROUTE: ::c_int = 5;
|
||||
-pub const SO_BROADCAST: ::c_int = 6;
|
||||
-pub const SO_SNDBUF: ::c_int = 7;
|
||||
-pub const SO_RCVBUF: ::c_int = 8;
|
||||
-pub const SO_SNDBUFFORCE: ::c_int = 32;
|
||||
-pub const SO_RCVBUFFORCE: ::c_int = 33;
|
||||
-pub const SO_KEEPALIVE: ::c_int = 9;
|
||||
-pub const SO_OOBINLINE: ::c_int = 10;
|
||||
-pub const SO_NO_CHECK: ::c_int = 11;
|
||||
-pub const SO_PRIORITY: ::c_int = 12;
|
||||
-pub const SO_LINGER: ::c_int = 13;
|
||||
-pub const SO_BSDCOMPAT: ::c_int = 14;
|
||||
-pub const SO_REUSEPORT: ::c_int = 15;
|
||||
-pub const SO_PASSCRED: ::c_int = 16;
|
||||
-pub const SO_PEERCRED: ::c_int = 17;
|
||||
-pub const SO_RCVLOWAT: ::c_int = 18;
|
||||
-pub const SO_SNDLOWAT: ::c_int = 19;
|
||||
-pub const SO_RCVTIMEO: ::c_int = 20;
|
||||
-pub const SO_SNDTIMEO: ::c_int = 21;
|
||||
-pub const SO_SECURITY_AUTHENTICATION: ::c_int = 22;
|
||||
-pub const SO_SECURITY_ENCRYPTION_TRANSPORT: ::c_int = 23;
|
||||
-pub const SO_SECURITY_ENCRYPTION_NETWORK: ::c_int = 24;
|
||||
-pub const SO_BINDTODEVICE: ::c_int = 25;
|
||||
-pub const SO_ATTACH_FILTER: ::c_int = 26;
|
||||
-pub const SO_DETACH_FILTER: ::c_int = 27;
|
||||
-pub const SO_GET_FILTER: ::c_int = 26;
|
||||
-pub const SO_PEERNAME: ::c_int = 28;
|
||||
-pub const SO_TIMESTAMP: ::c_int = 29;
|
||||
-pub const SO_ACCEPTCONN: ::c_int = 30;
|
||||
-pub const SO_PEERSEC: ::c_int = 31;
|
||||
-pub const SO_PASSSEC: ::c_int = 34;
|
||||
-pub const SO_TIMESTAMPNS: ::c_int = 35;
|
||||
-pub const SCM_TIMESTAMPNS: ::c_int = 35;
|
||||
-pub const SO_MARK: ::c_int = 36;
|
||||
-pub const SO_PROTOCOL: ::c_int = 38;
|
||||
-pub const SO_DOMAIN: ::c_int = 39;
|
||||
-pub const SO_RXQ_OVFL: ::c_int = 40;
|
||||
-pub const SO_WIFI_STATUS: ::c_int = 41;
|
||||
-pub const SCM_WIFI_STATUS: ::c_int = 41;
|
||||
-pub const SO_PEEK_OFF: ::c_int = 42;
|
||||
-pub const SO_NOFCS: ::c_int = 43;
|
||||
-pub const SO_LOCK_FILTER: ::c_int = 44;
|
||||
-pub const SO_SELECT_ERR_QUEUE: ::c_int = 45;
|
||||
-pub const SO_BUSY_POLL: ::c_int = 46;
|
||||
-pub const SO_MAX_PACING_RATE: ::c_int = 47;
|
||||
-pub const SO_BPF_EXTENSIONS: ::c_int = 48;
|
||||
-pub const SO_INCOMING_CPU: ::c_int = 49;
|
||||
-pub const SO_ATTACH_BPF: ::c_int = 50;
|
||||
-pub const SO_DETACH_BPF: ::c_int = 27;
|
||||
-pub const SOCK_STREAM: ::c_int = 1;
|
||||
-pub const SOCK_DGRAM: ::c_int = 2;
|
||||
-pub const SA_ONSTACK: ::c_int = 134217728;
|
||||
-pub const SA_SIGINFO: ::c_int = 4;
|
||||
-pub const SA_NOCLDWAIT: ::c_int = 2;
|
||||
-pub const SIGTTIN: ::c_int = 21;
|
||||
-pub const SIGTTOU: ::c_int = 22;
|
||||
-pub const SIGXCPU: ::c_int = 24;
|
||||
-pub const SIGXFSZ: ::c_int = 25;
|
||||
-pub const SIGVTALRM: ::c_int = 26;
|
||||
-pub const SIGPROF: ::c_int = 27;
|
||||
-pub const SIGWINCH: ::c_int = 28;
|
||||
-pub const SIGCHLD: ::c_int = 17;
|
||||
-pub const SIGBUS: ::c_int = 7;
|
||||
-pub const SIGUSR1: ::c_int = 10;
|
||||
-pub const SIGUSR2: ::c_int = 12;
|
||||
-pub const SIGCONT: ::c_int = 18;
|
||||
-pub const SIGSTOP: ::c_int = 19;
|
||||
-pub const SIGTSTP: ::c_int = 20;
|
||||
-pub const SIGURG: ::c_int = 23;
|
||||
-pub const SIGIO: ::c_int = 29;
|
||||
-pub const SIGSYS: ::c_int = 31;
|
||||
-pub const SIGSTKFLT: ::c_int = 16;
|
||||
-pub const SIGPOLL: ::c_int = 29;
|
||||
-pub const SIGPWR: ::c_int = 30;
|
||||
-pub const SIG_SETMASK: ::c_int = 2;
|
||||
-pub const SIG_BLOCK: ::c_int = 0;
|
||||
-pub const SIG_UNBLOCK: ::c_int = 1;
|
||||
-pub const POLLWRNORM: ::c_short = 256;
|
||||
-pub const POLLWRBAND: ::c_short = 512;
|
||||
-pub const O_ASYNC: ::c_int = 8192;
|
||||
-pub const O_NDELAY: ::c_int = 2048;
|
||||
-pub const PTRACE_DETACH: ::c_uint = 17;
|
||||
-pub const EFD_NONBLOCK: ::c_int = 2048;
|
||||
-pub const F_GETLK: ::c_int = 5;
|
||||
-pub const F_GETOWN: ::c_int = 9;
|
||||
-pub const F_SETOWN: ::c_int = 8;
|
||||
-pub const F_SETLK: ::c_int = 6;
|
||||
-pub const F_SETLKW: ::c_int = 7;
|
||||
-pub const F_RDLCK: ::c_int = 0;
|
||||
-pub const F_WRLCK: ::c_int = 1;
|
||||
-pub const F_UNLCK: ::c_int = 2;
|
||||
-pub const F_OFD_GETLK: ::c_int = 36;
|
||||
-pub const F_OFD_SETLK: ::c_int = 37;
|
||||
-pub const F_OFD_SETLKW: ::c_int = 38;
|
||||
-pub const SFD_NONBLOCK: ::c_int = 2048;
|
||||
-pub const TCSANOW: ::c_int = 0;
|
||||
-pub const TCSADRAIN: ::c_int = 1;
|
||||
-pub const TCSAFLUSH: ::c_int = 2;
|
||||
-pub const TIOCLINUX: ::c_ulong = 21532;
|
||||
-pub const TIOCGSERIAL: ::c_ulong = 21534;
|
||||
-pub const TIOCEXCL: ::c_ulong = 21516;
|
||||
-pub const TIOCNXCL: ::c_ulong = 21517;
|
||||
-pub const TIOCSCTTY: ::c_ulong = 21518;
|
||||
-pub const TIOCSTI: ::c_ulong = 21522;
|
||||
-pub const TIOCMGET: ::c_ulong = 21525;
|
||||
-pub const TIOCMBIS: ::c_ulong = 21526;
|
||||
-pub const TIOCMBIC: ::c_ulong = 21527;
|
||||
-pub const TIOCMSET: ::c_ulong = 21528;
|
||||
-pub const TIOCCONS: ::c_ulong = 21533;
|
||||
-pub const TIOCM_ST: ::c_int = 8;
|
||||
-pub const TIOCM_SR: ::c_int = 16;
|
||||
-pub const TIOCM_CTS: ::c_int = 32;
|
||||
-pub const TIOCM_CAR: ::c_int = 64;
|
||||
-pub const TIOCM_RNG: ::c_int = 128;
|
||||
-pub const TIOCM_DSR: ::c_int = 256;
|
||||
-pub const SFD_CLOEXEC: ::c_int = 524288;
|
||||
-pub const NCCS: usize = 32;
|
||||
-pub const O_TRUNC: ::c_int = 512;
|
||||
-pub const O_CLOEXEC: ::c_int = 524288;
|
||||
-pub const EBFONT: ::c_int = 59;
|
||||
-pub const ENOSTR: ::c_int = 60;
|
||||
-pub const ENODATA: ::c_int = 61;
|
||||
-pub const ETIME: ::c_int = 62;
|
||||
-pub const ENOSR: ::c_int = 63;
|
||||
-pub const ENONET: ::c_int = 64;
|
||||
-pub const ENOPKG: ::c_int = 65;
|
||||
-pub const EREMOTE: ::c_int = 66;
|
||||
-pub const ENOLINK: ::c_int = 67;
|
||||
-pub const EADV: ::c_int = 68;
|
||||
-pub const ESRMNT: ::c_int = 69;
|
||||
-pub const ECOMM: ::c_int = 70;
|
||||
-pub const EPROTO: ::c_int = 71;
|
||||
-pub const EDOTDOT: ::c_int = 73;
|
||||
-pub const SA_NODEFER: ::c_int = 1073741824;
|
||||
-pub const SA_RESETHAND: ::c_int = -2147483648;
|
||||
-pub const SA_RESTART: ::c_int = 268435456;
|
||||
-pub const SA_NOCLDSTOP: ::c_int = 1;
|
||||
-pub const EPOLL_CLOEXEC: ::c_int = 524288;
|
||||
-pub const EFD_CLOEXEC: ::c_int = 524288;
|
||||
-pub const __SIZEOF_PTHREAD_CONDATTR_T: usize = 4;
|
||||
-pub const __SIZEOF_PTHREAD_MUTEXATTR_T: usize = 4;
|
||||
-pub const O_DIRECT: ::c_int = 16384;
|
||||
-pub const O_DIRECTORY: ::c_int = 65536;
|
||||
-pub const O_NOFOLLOW: ::c_int = 131072;
|
||||
-pub const MAP_HUGETLB: ::c_int = 262144;
|
||||
-pub const MAP_LOCKED: ::c_int = 8192;
|
||||
-pub const MAP_NORESERVE: ::c_int = 16384;
|
||||
-pub const MAP_ANON: ::c_int = 32;
|
||||
-pub const MAP_ANONYMOUS: ::c_int = 32;
|
||||
-pub const MAP_DENYWRITE: ::c_int = 2048;
|
||||
-pub const MAP_EXECUTABLE: ::c_int = 4096;
|
||||
-pub const MAP_POPULATE: ::c_int = 32768;
|
||||
-pub const MAP_NONBLOCK: ::c_int = 65536;
|
||||
-pub const MAP_STACK: ::c_int = 131072;
|
||||
-pub const MAP_SYNC : ::c_int = 0x080000;
|
||||
-pub const EDEADLOCK: ::c_int = 35;
|
||||
-pub const EUCLEAN: ::c_int = 117;
|
||||
-pub const ENOTNAM: ::c_int = 118;
|
||||
-pub const ENAVAIL: ::c_int = 119;
|
||||
-pub const EISNAM: ::c_int = 120;
|
||||
-pub const EREMOTEIO: ::c_int = 121;
|
||||
-pub const FIOCLEX: ::c_ulong = 21585;
|
||||
-pub const FIONCLEX: ::c_ulong = 21584;
|
||||
-pub const FIONBIO: ::c_ulong = 21537;
|
||||
-pub const MCL_CURRENT: ::c_int = 1;
|
||||
-pub const MCL_FUTURE: ::c_int = 2;
|
||||
-pub const SIGSTKSZ: ::size_t = 8192;
|
||||
-pub const MINSIGSTKSZ: ::size_t = 2048;
|
||||
-pub const CBAUD: ::tcflag_t = 4111;
|
||||
-pub const TAB1: ::tcflag_t = 2048;
|
||||
-pub const TAB2: ::tcflag_t = 4096;
|
||||
-pub const TAB3: ::tcflag_t = 6144;
|
||||
-pub const CR1: ::tcflag_t = 512;
|
||||
-pub const CR2: ::tcflag_t = 1024;
|
||||
-pub const CR3: ::tcflag_t = 1536;
|
||||
-pub const FF1: ::tcflag_t = 32768;
|
||||
-pub const BS1: ::tcflag_t = 8192;
|
||||
-pub const VT1: ::tcflag_t = 16384;
|
||||
-pub const VWERASE: usize = 14;
|
||||
-pub const VREPRINT: usize = 12;
|
||||
-pub const VSUSP: usize = 10;
|
||||
-pub const VSTART: usize = 8;
|
||||
-pub const VSTOP: usize = 9;
|
||||
-pub const VDISCARD: usize = 13;
|
||||
-pub const VTIME: usize = 5;
|
||||
-pub const IXON: ::tcflag_t = 1024;
|
||||
-pub const IXOFF: ::tcflag_t = 4096;
|
||||
-pub const ONLCR: ::tcflag_t = 4;
|
||||
-pub const CSIZE: ::tcflag_t = 48;
|
||||
-pub const CS6: ::tcflag_t = 16;
|
||||
-pub const CS7: ::tcflag_t = 32;
|
||||
-pub const CS8: ::tcflag_t = 48;
|
||||
-pub const CSTOPB: ::tcflag_t = 64;
|
||||
-pub const CREAD: ::tcflag_t = 128;
|
||||
-pub const PARENB: ::tcflag_t = 256;
|
||||
-pub const PARODD: ::tcflag_t = 512;
|
||||
-pub const HUPCL: ::tcflag_t = 1024;
|
||||
-pub const CLOCAL: ::tcflag_t = 2048;
|
||||
-pub const ECHOKE: ::tcflag_t = 2048;
|
||||
-pub const ECHOE: ::tcflag_t = 16;
|
||||
-pub const ECHOK: ::tcflag_t = 32;
|
||||
-pub const ECHONL: ::tcflag_t = 64;
|
||||
-pub const ECHOPRT: ::tcflag_t = 1024;
|
||||
-pub const ECHOCTL: ::tcflag_t = 512;
|
||||
-pub const ISIG: ::tcflag_t = 1;
|
||||
-pub const ICANON: ::tcflag_t = 2;
|
||||
-pub const PENDIN: ::tcflag_t = 16384;
|
||||
-pub const NOFLSH: ::tcflag_t = 128;
|
||||
-pub const CIBAUD: ::tcflag_t = 269418496;
|
||||
-pub const CBAUDEX: ::tcflag_t = 4096;
|
||||
-pub const VSWTC: usize = 7;
|
||||
-pub const OLCUC: ::tcflag_t = 2;
|
||||
-pub const NLDLY: ::tcflag_t = 256;
|
||||
-pub const CRDLY: ::tcflag_t = 1536;
|
||||
-pub const TABDLY: ::tcflag_t = 6144;
|
||||
-pub const BSDLY: ::tcflag_t = 8192;
|
||||
-pub const FFDLY: ::tcflag_t = 32768;
|
||||
-pub const VTDLY: ::tcflag_t = 16384;
|
||||
-pub const XTABS: ::tcflag_t = 6144;
|
||||
-pub const B0: ::speed_t = 0;
|
||||
-pub const B50: ::speed_t = 1;
|
||||
-pub const B75: ::speed_t = 2;
|
||||
-pub const B110: ::speed_t = 3;
|
||||
-pub const B134: ::speed_t = 4;
|
||||
-pub const B150: ::speed_t = 5;
|
||||
-pub const B200: ::speed_t = 6;
|
||||
-pub const B300: ::speed_t = 7;
|
||||
-pub const B600: ::speed_t = 8;
|
||||
-pub const B1200: ::speed_t = 9;
|
||||
-pub const B1800: ::speed_t = 10;
|
||||
-pub const B2400: ::speed_t = 11;
|
||||
-pub const B4800: ::speed_t = 12;
|
||||
-pub const B9600: ::speed_t = 13;
|
||||
-pub const B19200: ::speed_t = 14;
|
||||
-pub const B38400: ::speed_t = 15;
|
||||
-pub const EXTA: ::speed_t = 14;
|
||||
-pub const EXTB: ::speed_t = 15;
|
||||
-pub const B57600: ::speed_t = 4097;
|
||||
-pub const B115200: ::speed_t = 4098;
|
||||
-pub const B230400: ::speed_t = 4099;
|
||||
-pub const B460800: ::speed_t = 4100;
|
||||
-pub const B500000: ::speed_t = 4101;
|
||||
-pub const B576000: ::speed_t = 4102;
|
||||
-pub const B921600: ::speed_t = 4103;
|
||||
-pub const B1000000: ::speed_t = 4104;
|
||||
-pub const B1152000: ::speed_t = 4105;
|
||||
-pub const B1500000: ::speed_t = 4106;
|
||||
-pub const B2000000: ::speed_t = 4107;
|
||||
-pub const B2500000: ::speed_t = 4108;
|
||||
-pub const B3000000: ::speed_t = 4109;
|
||||
-pub const B3500000: ::speed_t = 4110;
|
||||
-pub const B4000000: ::speed_t = 4111;
|
||||
-pub const VEOL: usize = 11;
|
||||
-pub const VEOL2: usize = 16;
|
||||
-pub const VMIN: usize = 6;
|
||||
-pub const IEXTEN: ::tcflag_t = 32768;
|
||||
-pub const TOSTOP: ::tcflag_t = 256;
|
||||
-pub const FLUSHO: ::tcflag_t = 4096;
|
||||
-pub const EXTPROC: ::tcflag_t = 65536;
|
||||
-pub const TCGETS: ::c_ulong = 21505;
|
||||
-pub const TCSETS: ::c_ulong = 21506;
|
||||
-pub const TCSETSW: ::c_ulong = 21507;
|
||||
-pub const TCSETSF: ::c_ulong = 21508;
|
||||
-pub const TCGETA: ::c_ulong = 21509;
|
||||
-pub const TCSETA: ::c_ulong = 21510;
|
||||
-pub const TCSETAW: ::c_ulong = 21511;
|
||||
-pub const TCSETAF: ::c_ulong = 21512;
|
||||
-pub const TCSBRK: ::c_ulong = 21513;
|
||||
-pub const TCXONC: ::c_ulong = 21514;
|
||||
-pub const TCFLSH: ::c_ulong = 21515;
|
||||
-pub const TIOCINQ: ::c_ulong = 21531;
|
||||
-pub const TIOCGPGRP: ::c_ulong = 21519;
|
||||
-pub const TIOCSPGRP: ::c_ulong = 21520;
|
||||
-pub const TIOCOUTQ: ::c_ulong = 21521;
|
||||
-pub const TIOCGWINSZ: ::c_ulong = 21523;
|
||||
-pub const TIOCSWINSZ: ::c_ulong = 21524;
|
||||
-pub const FIONREAD: ::c_ulong = 21531;
|
||||
-pub const __SIZEOF_PTHREAD_MUTEX_T: usize = 40;
|
||||
-pub const __SIZEOF_PTHREAD_RWLOCK_T: usize = 56;
|
||||
pub const SYS_read: ::c_long = 63;
|
||||
pub const SYS_write: ::c_long = 64;
|
||||
pub const SYS_close: ::c_long = 57;
|
||||
@@ -863,5 +468,314 @@ pub const SYS_pkey_mprotect: ::c_long = 288;
|
||||
pub const SYS_pkey_alloc: ::c_long = 289;
|
||||
pub const SYS_pkey_free: ::c_long = 290;
|
||||
pub const SYS_statx: ::c_long = 291;
|
||||
-pub const SYS_pidfd_open: ::c_long = 434;
|
||||
-pub const SYS_clone3: ::c_long = 435;
|
||||
+
|
||||
+pub const O_APPEND: ::c_int = 1024;
|
||||
+pub const O_DIRECT: ::c_int = 0x4000;
|
||||
+pub const O_DIRECTORY: ::c_int = 0x10000;
|
||||
+pub const O_LARGEFILE: ::c_int = 0;
|
||||
+pub const O_NOFOLLOW: ::c_int = 0x20000;
|
||||
+pub const O_CREAT: ::c_int = 64;
|
||||
+pub const O_EXCL: ::c_int = 128;
|
||||
+pub const O_NOCTTY: ::c_int = 256;
|
||||
+pub const O_NONBLOCK: ::c_int = 2048;
|
||||
+pub const O_SYNC: ::c_int = 1052672;
|
||||
+pub const O_RSYNC: ::c_int = 1052672;
|
||||
+pub const O_DSYNC: ::c_int = 4096;
|
||||
+pub const O_ASYNC: ::c_int = 0x2000;
|
||||
+
|
||||
+pub const TIOCGRS485: ::c_int = 0x542E;
|
||||
+pub const TIOCSRS485: ::c_int = 0x542F;
|
||||
+
|
||||
+pub const SIGSTKSZ: ::size_t = 8192;
|
||||
+pub const MINSIGSTKSZ: ::size_t = 2048;
|
||||
+
|
||||
+pub const ENAMETOOLONG: ::c_int = 36;
|
||||
+pub const ENOLCK: ::c_int = 37;
|
||||
+pub const ENOSYS: ::c_int = 38;
|
||||
+pub const ENOTEMPTY: ::c_int = 39;
|
||||
+pub const ELOOP: ::c_int = 40;
|
||||
+pub const ENOMSG: ::c_int = 42;
|
||||
+pub const EIDRM: ::c_int = 43;
|
||||
+pub const ECHRNG: ::c_int = 44;
|
||||
+pub const EL2NSYNC: ::c_int = 45;
|
||||
+pub const EL3HLT: ::c_int = 46;
|
||||
+pub const EL3RST: ::c_int = 47;
|
||||
+pub const ELNRNG: ::c_int = 48;
|
||||
+pub const EUNATCH: ::c_int = 49;
|
||||
+pub const ENOCSI: ::c_int = 50;
|
||||
+pub const EL2HLT: ::c_int = 51;
|
||||
+pub const EBADE: ::c_int = 52;
|
||||
+pub const EBADR: ::c_int = 53;
|
||||
+pub const EXFULL: ::c_int = 54;
|
||||
+pub const ENOANO: ::c_int = 55;
|
||||
+pub const EBADRQC: ::c_int = 56;
|
||||
+pub const EBADSLT: ::c_int = 57;
|
||||
+pub const EMULTIHOP: ::c_int = 72;
|
||||
+pub const EOVERFLOW: ::c_int = 75;
|
||||
+pub const ENOTUNIQ: ::c_int = 76;
|
||||
+pub const EBADFD: ::c_int = 77;
|
||||
+pub const EBADMSG: ::c_int = 74;
|
||||
+pub const EREMCHG: ::c_int = 78;
|
||||
+pub const ELIBACC: ::c_int = 79;
|
||||
+pub const ELIBBAD: ::c_int = 80;
|
||||
+pub const ELIBSCN: ::c_int = 81;
|
||||
+pub const ELIBMAX: ::c_int = 82;
|
||||
+pub const ELIBEXEC: ::c_int = 83;
|
||||
+pub const EILSEQ: ::c_int = 84;
|
||||
+pub const ERESTART: ::c_int = 85;
|
||||
+pub const ESTRPIPE: ::c_int = 86;
|
||||
+pub const EUSERS: ::c_int = 87;
|
||||
+pub const ENOTSOCK: ::c_int = 88;
|
||||
+pub const EDESTADDRREQ: ::c_int = 89;
|
||||
+pub const EMSGSIZE: ::c_int = 90;
|
||||
+pub const EPROTOTYPE: ::c_int = 91;
|
||||
+pub const ENOPROTOOPT: ::c_int = 92;
|
||||
+pub const EPROTONOSUPPORT: ::c_int = 93;
|
||||
+pub const ESOCKTNOSUPPORT: ::c_int = 94;
|
||||
+pub const EOPNOTSUPP: ::c_int = 95;
|
||||
+pub const EPFNOSUPPORT: ::c_int = 96;
|
||||
+pub const EAFNOSUPPORT: ::c_int = 97;
|
||||
+pub const EADDRINUSE: ::c_int = 98;
|
||||
+pub const EADDRNOTAVAIL: ::c_int = 99;
|
||||
+pub const ENETDOWN: ::c_int = 100;
|
||||
+pub const ENETUNREACH: ::c_int = 101;
|
||||
+pub const ENETRESET: ::c_int = 102;
|
||||
+pub const ECONNABORTED: ::c_int = 103;
|
||||
+pub const ECONNRESET: ::c_int = 104;
|
||||
+pub const ENOBUFS: ::c_int = 105;
|
||||
+pub const EISCONN: ::c_int = 106;
|
||||
+pub const ENOTCONN: ::c_int = 107;
|
||||
+pub const ESHUTDOWN: ::c_int = 108;
|
||||
+pub const ETOOMANYREFS: ::c_int = 109;
|
||||
+pub const ETIMEDOUT: ::c_int = 110;
|
||||
+pub const ECONNREFUSED: ::c_int = 111;
|
||||
+pub const EHOSTDOWN: ::c_int = 112;
|
||||
+pub const EHOSTUNREACH: ::c_int = 113;
|
||||
+pub const EALREADY: ::c_int = 114;
|
||||
+pub const EINPROGRESS: ::c_int = 115;
|
||||
+pub const ESTALE: ::c_int = 116;
|
||||
+pub const EDQUOT: ::c_int = 122;
|
||||
+pub const ENOMEDIUM: ::c_int = 123;
|
||||
+pub const EMEDIUMTYPE: ::c_int = 124;
|
||||
+pub const ECANCELED: ::c_int = 125;
|
||||
+pub const ENOKEY: ::c_int = 126;
|
||||
+pub const EKEYEXPIRED: ::c_int = 127;
|
||||
+pub const EKEYREVOKED: ::c_int = 128;
|
||||
+pub const EKEYREJECTED: ::c_int = 129;
|
||||
+pub const EOWNERDEAD: ::c_int = 130;
|
||||
+pub const ENOTRECOVERABLE: ::c_int = 131;
|
||||
+pub const EHWPOISON: ::c_int = 133;
|
||||
+pub const ERFKILL: ::c_int = 132;
|
||||
+
|
||||
+pub const SA_ONSTACK: ::c_int = 0x08000000;
|
||||
+pub const SA_SIGINFO: ::c_int = 0x00000004;
|
||||
+pub const SA_NOCLDWAIT: ::c_int = 0x00000002;
|
||||
+
|
||||
+pub const SIGCHLD: ::c_int = 17;
|
||||
+pub const SIGBUS: ::c_int = 7;
|
||||
+pub const SIGTTIN: ::c_int = 21;
|
||||
+pub const SIGTTOU: ::c_int = 22;
|
||||
+pub const SIGXCPU: ::c_int = 24;
|
||||
+pub const SIGXFSZ: ::c_int = 25;
|
||||
+pub const SIGVTALRM: ::c_int = 26;
|
||||
+pub const SIGPROF: ::c_int = 27;
|
||||
+pub const SIGWINCH: ::c_int = 28;
|
||||
+pub const SIGUSR1: ::c_int = 10;
|
||||
+pub const SIGUSR2: ::c_int = 12;
|
||||
+pub const SIGCONT: ::c_int = 18;
|
||||
+pub const SIGSTOP: ::c_int = 19;
|
||||
+pub const SIGTSTP: ::c_int = 20;
|
||||
+pub const SIGURG: ::c_int = 23;
|
||||
+pub const SIGIO: ::c_int = 29;
|
||||
+pub const SIGSYS: ::c_int = 31;
|
||||
+pub const SIGSTKFLT: ::c_int = 16;
|
||||
+pub const SIGPOLL: ::c_int = 29;
|
||||
+pub const SIGPWR: ::c_int = 30;
|
||||
+pub const SIG_SETMASK: ::c_int = 2;
|
||||
+pub const SIG_BLOCK: ::c_int = 0x000000;
|
||||
+pub const SIG_UNBLOCK: ::c_int = 0x01;
|
||||
+
|
||||
+pub const F_GETLK: ::c_int = 5;
|
||||
+pub const F_GETOWN: ::c_int = 9;
|
||||
+pub const F_SETLK: ::c_int = 6;
|
||||
+pub const F_SETLKW: ::c_int = 7;
|
||||
+pub const F_SETOWN: ::c_int = 8;
|
||||
+pub const F_OFD_GETLK: ::c_int = 36;
|
||||
+pub const F_OFD_SETLK: ::c_int = 37;
|
||||
+pub const F_OFD_SETLKW: ::c_int = 38;
|
||||
+
|
||||
+pub const VEOF: usize = 4;
|
||||
+
|
||||
+pub const POLLWRNORM: ::c_short = 0x100;
|
||||
+pub const POLLWRBAND: ::c_short = 0x200;
|
||||
+
|
||||
+pub const SOCK_STREAM: ::c_int = 1;
|
||||
+pub const SOCK_DGRAM: ::c_int = 2;
|
||||
+pub const SOL_SOCKET: ::c_int = 1;
|
||||
+pub const SO_REUSEADDR: ::c_int = 2;
|
||||
+pub const SO_TYPE: ::c_int = 3;
|
||||
+pub const SO_ERROR: ::c_int = 4;
|
||||
+pub const SO_DONTROUTE: ::c_int = 5;
|
||||
+pub const SO_BROADCAST: ::c_int = 6;
|
||||
+pub const SO_SNDBUF: ::c_int = 7;
|
||||
+pub const SO_RCVBUF: ::c_int = 8;
|
||||
+pub const SO_KEEPALIVE: ::c_int = 9;
|
||||
+pub const SO_OOBINLINE: ::c_int = 10;
|
||||
+pub const SO_NO_CHECK: ::c_int = 11;
|
||||
+pub const SO_PRIORITY: ::c_int = 12;
|
||||
+pub const SO_LINGER: ::c_int = 13;
|
||||
+pub const SO_BSDCOMPAT: ::c_int = 14;
|
||||
+pub const SO_REUSEPORT: ::c_int = 15;
|
||||
+pub const SO_ACCEPTCONN: ::c_int = 30;
|
||||
+pub const SO_SNDBUFFORCE: ::c_int = 32;
|
||||
+pub const SO_RCVBUFFORCE: ::c_int = 33;
|
||||
+pub const SO_PROTOCOL: ::c_int = 38;
|
||||
+pub const SO_DOMAIN: ::c_int = 39;
|
||||
+
|
||||
+pub const MAP_ANON: ::c_int = 0x0020;
|
||||
+pub const MAP_GROWSDOWN: ::c_int = 0x0100;
|
||||
+pub const MAP_DENYWRITE: ::c_int = 0x0800;
|
||||
+pub const MAP_EXECUTABLE: ::c_int = 0x01000;
|
||||
+pub const MAP_LOCKED: ::c_int = 0x02000;
|
||||
+pub const MAP_NORESERVE: ::c_int = 0x04000;
|
||||
+pub const MAP_POPULATE: ::c_int = 0x08000;
|
||||
+pub const MAP_NONBLOCK: ::c_int = 0x010000;
|
||||
+pub const MAP_STACK: ::c_int = 0x020000;
|
||||
+pub const MAP_HUGETLB: ::c_int = 0x040000;
|
||||
+pub const MAP_SYNC : ::c_int = 0x080000;
|
||||
+
|
||||
+pub const RLIMIT_NLIMITS: ::c_int = 15;
|
||||
+pub const TIOCINQ: ::c_int = ::FIONREAD;
|
||||
+pub const MCL_CURRENT: ::c_int = 0x0001;
|
||||
+pub const MCL_FUTURE: ::c_int = 0x0002;
|
||||
+pub const CBAUD: ::tcflag_t = 0o0010017;
|
||||
+pub const TAB1: ::c_int = 0x00000800;
|
||||
+pub const TAB2: ::c_int = 0x00001000;
|
||||
+pub const TAB3: ::c_int = 0x00001800;
|
||||
+pub const CR1: ::c_int = 0x00000200;
|
||||
+pub const CR2: ::c_int = 0x00000400;
|
||||
+pub const CR3: ::c_int = 0x00000600;
|
||||
+pub const FF1: ::c_int = 0x00008000;
|
||||
+pub const BS1: ::c_int = 0x00002000;
|
||||
+pub const VT1: ::c_int = 0x00004000;
|
||||
+pub const VWERASE: usize = 14;
|
||||
+pub const VREPRINT: usize = 12;
|
||||
+pub const VSUSP: usize = 10;
|
||||
+pub const VSTART: usize = 8;
|
||||
+pub const VSTOP: usize = 9;
|
||||
+pub const VDISCARD: usize = 13;
|
||||
+pub const VTIME: usize = 5;
|
||||
+pub const IXON: ::tcflag_t = 0x00000400;
|
||||
+pub const IXOFF: ::tcflag_t = 0x00001000;
|
||||
+pub const ONLCR: ::tcflag_t = 0x4;
|
||||
+pub const CSIZE: ::tcflag_t = 0x00000030;
|
||||
+pub const CS6: ::tcflag_t = 0x00000010;
|
||||
+pub const CS7: ::tcflag_t = 0x00000020;
|
||||
+pub const CS8: ::tcflag_t = 0x00000030;
|
||||
+pub const CSTOPB: ::tcflag_t = 0x00000040;
|
||||
+pub const CREAD: ::tcflag_t = 0x00000080;
|
||||
+pub const PARENB: ::tcflag_t = 0x00000100;
|
||||
+pub const PARODD: ::tcflag_t = 0x00000200;
|
||||
+pub const HUPCL: ::tcflag_t = 0x00000400;
|
||||
+pub const CLOCAL: ::tcflag_t = 0x00000800;
|
||||
+pub const ECHOKE: ::tcflag_t = 0x00000800;
|
||||
+pub const ECHOE: ::tcflag_t = 0x00000010;
|
||||
+pub const ECHOK: ::tcflag_t = 0x00000020;
|
||||
+pub const ECHONL: ::tcflag_t = 0x00000040;
|
||||
+pub const ECHOPRT: ::tcflag_t = 0x00000400;
|
||||
+pub const ECHOCTL: ::tcflag_t = 0x00000200;
|
||||
+pub const ISIG: ::tcflag_t = 0x00000001;
|
||||
+pub const ICANON: ::tcflag_t = 0x00000002;
|
||||
+pub const PENDIN: ::tcflag_t = 0x00004000;
|
||||
+pub const NOFLSH: ::tcflag_t = 0x00000080;
|
||||
+pub const CIBAUD: ::tcflag_t = 0o02003600000;
|
||||
+pub const CBAUDEX: ::tcflag_t = 0o010000;
|
||||
+pub const VSWTC: usize = 7;
|
||||
+pub const OLCUC: ::tcflag_t = 0o000002;
|
||||
+pub const NLDLY: ::tcflag_t = 0o000400;
|
||||
+pub const CRDLY: ::tcflag_t = 0o003000;
|
||||
+pub const TABDLY: ::tcflag_t = 0o014000;
|
||||
+pub const BSDLY: ::tcflag_t = 0o020000;
|
||||
+pub const FFDLY: ::tcflag_t = 0o100000;
|
||||
+pub const VTDLY: ::tcflag_t = 0o040000;
|
||||
+pub const XTABS: ::tcflag_t = 0o014000;
|
||||
+pub const B57600: ::speed_t = 0o010001;
|
||||
+pub const B115200: ::speed_t = 0o010002;
|
||||
+pub const B230400: ::speed_t = 0o010003;
|
||||
+pub const B460800: ::speed_t = 0o010004;
|
||||
+pub const B500000: ::speed_t = 0o010005;
|
||||
+pub const B576000: ::speed_t = 0o010006;
|
||||
+pub const B921600: ::speed_t = 0o010007;
|
||||
+pub const B1000000: ::speed_t = 0o010010;
|
||||
+pub const B1152000: ::speed_t = 0o010011;
|
||||
+pub const B1500000: ::speed_t = 0o010012;
|
||||
+pub const B2000000: ::speed_t = 0o010013;
|
||||
+pub const B2500000: ::speed_t = 0o010014;
|
||||
+pub const B3000000: ::speed_t = 0o010015;
|
||||
+pub const B3500000: ::speed_t = 0o010016;
|
||||
+pub const B4000000: ::speed_t = 0o010017;
|
||||
+
|
||||
+pub const FIOCLEX: ::c_int = 0x5451;
|
||||
+pub const FIONCLEX: ::c_int = 0x5450;
|
||||
+pub const FIONBIO: ::c_int = 0x5421;
|
||||
+pub const EDEADLK: ::c_int = 35;
|
||||
+pub const EDEADLOCK: ::c_int = EDEADLK;
|
||||
+pub const SO_PASSCRED: ::c_int = 16;
|
||||
+pub const SO_PEERCRED: ::c_int = 17;
|
||||
+pub const SO_RCVLOWAT: ::c_int = 18;
|
||||
+pub const SO_SNDLOWAT: ::c_int = 19;
|
||||
+pub const SO_RCVTIMEO: ::c_int = 20;
|
||||
+pub const SO_SNDTIMEO: ::c_int = 21;
|
||||
+pub const EXTPROC: ::tcflag_t = 0x00010000;
|
||||
+pub const VEOL: usize = 11;
|
||||
+pub const VEOL2: usize = 16;
|
||||
+pub const VMIN: usize = 6;
|
||||
+pub const IEXTEN: ::tcflag_t = 0x00008000;
|
||||
+pub const TOSTOP: ::tcflag_t = 0x00000100;
|
||||
+pub const FLUSHO: ::tcflag_t = 0x00001000;
|
||||
+pub const TCGETS: ::c_int = 0x5401;
|
||||
+pub const TCSETS: ::c_int = 0x5402;
|
||||
+pub const TCSETSW: ::c_int = 0x5403;
|
||||
+pub const TCSETSF: ::c_int = 0x5404;
|
||||
+pub const TCGETA: ::c_int = 0x5405;
|
||||
+pub const TCSETA: ::c_int = 0x5406;
|
||||
+pub const TCSETAW: ::c_int = 0x5407;
|
||||
+pub const TCSETAF: ::c_int = 0x5408;
|
||||
+pub const TCSBRK: ::c_int = 0x5409;
|
||||
+pub const TCXONC: ::c_int = 0x540A;
|
||||
+pub const TCFLSH: ::c_int = 0x540B;
|
||||
+pub const TIOCGSOFTCAR: ::c_int = 0x5419;
|
||||
+pub const TIOCSSOFTCAR: ::c_int = 0x541A;
|
||||
+pub const TIOCLINUX: ::c_int = 0x541C;
|
||||
+pub const TIOCGSERIAL: ::c_int = 0x541E;
|
||||
+pub const TIOCEXCL: ::c_int = 0x540C;
|
||||
+pub const TIOCNXCL: ::c_int = 0x540D;
|
||||
+pub const TIOCSCTTY: ::c_int = 0x540E;
|
||||
+pub const TIOCGPGRP: ::c_int = 0x540F;
|
||||
+pub const TIOCSPGRP: ::c_int = 0x5410;
|
||||
+pub const TIOCOUTQ: ::c_int = 0x5411;
|
||||
+pub const TIOCSTI: ::c_int = 0x5412;
|
||||
+pub const TIOCGWINSZ: ::c_int = 0x5413;
|
||||
+pub const TIOCSWINSZ: ::c_int = 0x5414;
|
||||
+pub const TIOCMGET: ::c_int = 0x5415;
|
||||
+pub const TIOCMBIS: ::c_int = 0x5416;
|
||||
+pub const TIOCMBIC: ::c_int = 0x5417;
|
||||
+pub const TIOCMSET: ::c_int = 0x5418;
|
||||
+pub const FIONREAD: ::c_int = 0x541B;
|
||||
+pub const TIOCCONS: ::c_int = 0x541D;
|
||||
+
|
||||
+pub const TIOCM_LE: ::c_int = 0x001;
|
||||
+pub const TIOCM_DTR: ::c_int = 0x002;
|
||||
+pub const TIOCM_RTS: ::c_int = 0x004;
|
||||
+pub const TIOCM_ST: ::c_int = 0x008;
|
||||
+pub const TIOCM_SR: ::c_int = 0x010;
|
||||
+pub const TIOCM_CTS: ::c_int = 0x020;
|
||||
+pub const TIOCM_CAR: ::c_int = 0x040;
|
||||
+pub const TIOCM_RNG: ::c_int = 0x080;
|
||||
+pub const TIOCM_DSR: ::c_int = 0x100;
|
||||
+pub const TIOCM_CD: ::c_int = TIOCM_CAR;
|
||||
+pub const TIOCM_RI: ::c_int = TIOCM_RNG;
|
||||
+
|
||||
+extern "C" {
|
||||
+ pub fn ioctl(fd: ::c_int, request: ::c_int, ...) -> ::c_int;
|
||||
+}
|
||||
--
|
||||
2.27.0
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -7,10 +7,10 @@ LIC_FILES_CHKSUM = "file://../../COPYRIGHT;md5=93a95682d51b4cb0a633a97046940ef0"
|
||||
RUSTLIB_DEP = ""
|
||||
inherit cargo
|
||||
|
||||
DEPENDS_append_libc-musl = " libunwind"
|
||||
DEPENDS:append:libc-musl = " libunwind"
|
||||
# rv32 does not have libunwind ported yet
|
||||
DEPENDS_remove_riscv32 = "libunwind"
|
||||
DEPENDS_remove_riscv64 = "libunwind"
|
||||
DEPENDS:remove:riscv32 = "libunwind"
|
||||
DEPENDS:remove:riscv64 = "libunwind"
|
||||
|
||||
# Embed bitcode in order to allow compiling both with and without LTO
|
||||
RUSTFLAGS += "-Cembed-bitcode=yes"
|
||||
@@ -23,7 +23,7 @@ CARGO_FEATURES ?= "panic-unwind backtrace"
|
||||
CARGO_BUILD_FLAGS += "--features '${CARGO_FEATURES}'"
|
||||
CARGO_VENDORING_DIRECTORY = "${RUSTSRC}/vendor"
|
||||
|
||||
do_compile_prepend () {
|
||||
do_compile:prepend () {
|
||||
export CARGO_TARGET_DIR="${B}"
|
||||
# For Rust 1.13.0 and newer
|
||||
export RUSTC_BOOTSTRAP="1"
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
require rust-source-${PV}.inc
|
||||
require libstd-rs.inc
|
||||
|
||||
SRC_URI += "file://riscv-march.patch;patchdir=../../ \
|
||||
file://rv64gc.patch;patchdir=../../ \
|
||||
file://0001-Add-base-definitions-for-riscv64-musl.patch;patchdir=../../ \
|
||||
file://0002-FIXUP-linux-musl-mod.rs-add-riscv64-to-b64-set.patch;patchdir=../../ \
|
||||
file://0003-FIXUP-Correct-definitions-to-match-musl.patch;patchdir=../../ \
|
||||
file://0004-Update-checksums-for-modified-files.patch;patchdir=../../ \
|
||||
"
|
||||
# libstd moved from src/libstd to library/std in 1.47+
|
||||
S = "${RUSTSRC}/library/std"
|
||||
11
recipes-devtools/rust/libstd-rs_1.54.0.bb
Normal file
11
recipes-devtools/rust/libstd-rs_1.54.0.bb
Normal file
@@ -0,0 +1,11 @@
|
||||
require rust-source-${PV}.inc
|
||||
require libstd-rs.inc
|
||||
|
||||
SRC_URI += " \
|
||||
file://0005-Add-base-definitions-for-riscv64-musl-libc-0.2.93.patch;patchdir=../../ \
|
||||
file://0006-FIXUP-linux-musl-mod.rs-add-riscv64-to-b64-set-libc-.patch;patchdir=../../ \
|
||||
file://0007-FIXUP-Correct-definitions-to-match-musl-libc-0.2.93.patch;patchdir=../../ \
|
||||
file://0008-Update-checksums-for-modified-files-for-rust-1.54.0-.patch;patchdir=../../ \
|
||||
"
|
||||
# libstd moved from src/libstd to library/std in 1.47+
|
||||
S = "${RUSTSRC}/library/std"
|
||||
@@ -38,12 +38,21 @@ def llvm_features_from_tune(d):
|
||||
|
||||
if ('armv6' in mach_overrides) or ('armv6' in feat):
|
||||
f.append("+v6")
|
||||
if 'armv5te' in feat:
|
||||
f.append("+strict-align")
|
||||
f.append("+v5te")
|
||||
elif 'armv5' in feat:
|
||||
f.append("+strict-align")
|
||||
f.append("+v5")
|
||||
|
||||
if ('armv4' in mach_overrides) or ('armv4' in feat):
|
||||
f.append("+strict-align")
|
||||
|
||||
if 'dsp' in feat:
|
||||
f.append("+dsp")
|
||||
|
||||
if 'thumb' in feat:
|
||||
if d.getVar('ARM_THUMB_OPT') is "thumb":
|
||||
if d.getVar('ARM_THUMB_OPT') == "thumb":
|
||||
if target_is_armv7(d):
|
||||
f.append('+thumb2')
|
||||
f.append("+thumb-mode")
|
||||
@@ -278,7 +287,7 @@ TARGET_LLVM_FEATURES = "${@llvm_features(d)}"
|
||||
|
||||
# class-native implies TARGET=HOST, and TUNE_FEATURES only describes the real
|
||||
# (original) target.
|
||||
TARGET_LLVM_FEATURES_class-native = "${@','.join(llvm_features_from_cc_arch(d))}"
|
||||
TARGET_LLVM_FEATURES:class-native = "${@','.join(llvm_features_from_cc_arch(d))}"
|
||||
|
||||
def rust_gen_target(d, thing, wd, features, cpu, arch):
|
||||
import json
|
||||
@@ -311,7 +320,7 @@ def rust_gen_target(d, thing, wd, features, cpu, arch):
|
||||
tspec['linker'] = "{}{}gcc".format(d.getVar('CCACHE'), prefix)
|
||||
tspec['ar'] = "{}ar".format(prefix)
|
||||
tspec['cpu'] = cpu
|
||||
if features is not "":
|
||||
if features != "":
|
||||
tspec['features'] = features
|
||||
tspec['dynamic-linking'] = True
|
||||
tspec['executables'] = True
|
||||
|
||||
53
recipes-devtools/rust/rust-cross-canadian-common.inc
Normal file
53
recipes-devtools/rust/rust-cross-canadian-common.inc
Normal file
@@ -0,0 +1,53 @@
|
||||
|
||||
RUST_ALTERNATE_EXE_PATH = "${STAGING_LIBDIR_NATIVE}/llvm-rust/bin/llvm-config"
|
||||
|
||||
require rust-target.inc
|
||||
|
||||
inherit cross-canadian
|
||||
|
||||
DEPENDS += " \
|
||||
virtual/${HOST_PREFIX}gcc-crosssdk \
|
||||
virtual/nativesdk-libc rust-llvm-native \
|
||||
virtual/${TARGET_PREFIX}compilerlibs \
|
||||
virtual/nativesdk-${HOST_PREFIX}compilerlibs \
|
||||
gcc-cross-${TARGET_ARCH} \
|
||||
"
|
||||
|
||||
# The host tools are likely not to be able to do the necessary operation on
|
||||
# the target architecturea. Alternatively one could check compatibility
|
||||
# between host/target.
|
||||
EXCLUDE_FROM_SHLIBS_${RUSTLIB_TARGET_PN} = "1"
|
||||
|
||||
DEBUG_PREFIX_MAP = "-fdebug-prefix-map=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR} \
|
||||
-fdebug-prefix-map=${STAGING_DIR_HOST}= \
|
||||
-fdebug-prefix-map=${STAGING_DIR_NATIVE}= \
|
||||
"
|
||||
|
||||
LLVM_TARGET[x86_64] = "${RUST_HOST_SYS}"
|
||||
python do_rust_gen_targets () {
|
||||
wd = d.getVar('WORKDIR') + '/targets/'
|
||||
rust_gen_target(d, 'TARGET', wd, d.getVar('TARGET_LLVM_FEATURES') or "", d.getVar('TARGET_LLVM_CPU'), d.getVar('TARGET_ARCH'))
|
||||
rust_gen_target(d, 'HOST', wd, "", "generic", d.getVar('HOST_ARCH'))
|
||||
rust_gen_target(d, 'BUILD', wd, "", "generic", d.getVar('BUILD_ARCH'))
|
||||
}
|
||||
|
||||
INHIBIT_DEFAULT_RUST_DEPS = "1"
|
||||
|
||||
export WRAPPER_TARGET_CC = "${CCACHE}${TARGET_PREFIX}gcc --sysroot=${STAGING_DIR_TARGET} ${TARGET_CC_ARCH} ${SECURITY_NOPIE_CFLAGS}"
|
||||
export WRAPPER_TARGET_CXX = "${CCACHE}${TARGET_PREFIX}g++ --sysroot=${STAGING_DIR_TARGET} ${TARGET_CC_ARCH} ${SECURITY_NOPIE_CFLAGS}"
|
||||
export WRAPPER_TARGET_CCLD = "${TARGET_PREFIX}gcc --sysroot=${STAGING_DIR_TARGET} ${TARGET_CC_ARCH} ${SECURITY_NOPIE_CFLAGS}"
|
||||
export WRAPPER_TARGET_LDFLAGS = "${TARGET_LDFLAGS}"
|
||||
export WRAPPER_TARGET_AR = "${TARGET_PREFIX}ar"
|
||||
|
||||
python do_configure:prepend() {
|
||||
targets = [d.getVar("TARGET_SYS", True), "{}-unknown-linux-gnu".format(d.getVar("HOST_ARCH", True))]
|
||||
hosts = ["{}-unknown-linux-gnu".format(d.getVar("HOST_ARCH", True))]
|
||||
}
|
||||
|
||||
INSANE_SKIP:${RUSTLIB_TARGET_PN} = "file-rdeps arch ldflags"
|
||||
SKIP_FILEDEPS:${RUSTLIB_TARGET_PN} = "1"
|
||||
|
||||
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
|
||||
INHIBIT_PACKAGE_STRIP = "1"
|
||||
INHIBIT_SYSROOT_STRIP = "1"
|
||||
|
||||
@@ -1,44 +1,14 @@
|
||||
|
||||
RUST_ALTERNATE_EXE_PATH = "${STAGING_LIBDIR_NATIVE}/llvm-rust/bin/llvm-config"
|
||||
require rust-cross-canadian-common.inc
|
||||
|
||||
require rust-target.inc
|
||||
|
||||
inherit cross-canadian
|
||||
|
||||
DEPENDS += " \
|
||||
virtual/${HOST_PREFIX}gcc-crosssdk \
|
||||
virtual/nativesdk-libc rust-llvm-native \
|
||||
virtual/${TARGET_PREFIX}compilerlibs \
|
||||
virtual/nativesdk-${HOST_PREFIX}compilerlibs \
|
||||
gcc-cross-${TARGET_ARCH} \
|
||||
"
|
||||
RUSTLIB_TARGET_PN = "rust-cross-canadian-rustlib-target-${TRANSLATED_TARGET_ARCH}"
|
||||
RUSTLIB_HOST_PN = "rust-cross-canadian-rustlib-host-${TRANSLATED_TARGET_ARCH}"
|
||||
RUSTLIB_PKGS = "${RUSTLIB_TARGET_PN} ${RUSTLIB_HOST_PN}"
|
||||
RUSTLIB_SRC_PN = "rust-cross-canadian-src"
|
||||
RUSTLIB_PKGS = "${RUSTLIB_SRC_PN} ${RUSTLIB_TARGET_PN} ${RUSTLIB_HOST_PN}"
|
||||
PN = "rust-cross-canadian-${TRANSLATED_TARGET_ARCH}"
|
||||
|
||||
PACKAGES = "${RUSTLIB_PKGS} ${PN}"
|
||||
RDEPENDS_${PN} += "${RUSTLIB_PKGS}"
|
||||
|
||||
# The host tools are likely not to be able to do the necessary operation on
|
||||
# the target architecturea. Alternatively one could check compatibility
|
||||
# between host/target.
|
||||
EXCLUDE_FROM_SHLIBS_${RUSTLIB_TARGET_PN} = "1"
|
||||
|
||||
DEBUG_PREFIX_MAP = "-fdebug-prefix-map=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR} \
|
||||
-fdebug-prefix-map=${STAGING_DIR_HOST}= \
|
||||
-fdebug-prefix-map=${STAGING_DIR_NATIVE}= \
|
||||
"
|
||||
|
||||
LLVM_TARGET[x86_64] = "${RUST_HOST_SYS}"
|
||||
python do_rust_gen_targets () {
|
||||
wd = d.getVar('WORKDIR') + '/targets/'
|
||||
rust_gen_target(d, 'TARGET', wd, d.getVar('TARGET_LLVM_FEATURES') or "", d.getVar('TARGET_LLVM_CPU'), d.getVar('TARGET_ARCH'))
|
||||
rust_gen_target(d, 'HOST', wd, "", "generic", d.getVar('HOST_ARCH'))
|
||||
rust_gen_target(d, 'BUILD', wd, "", "generic", d.getVar('BUILD_ARCH'))
|
||||
}
|
||||
|
||||
INHIBIT_DEFAULT_RUST_DEPS = "1"
|
||||
RDEPENDS:${PN} += "${RUSTLIB_PKGS}"
|
||||
|
||||
# The default behaviour of x.py changed in 1.47+ so now we need to
|
||||
# explicitly ask for the stage 2 compiler to be assembled.
|
||||
@@ -46,123 +16,6 @@ do_compile () {
|
||||
rust_runx build --stage 2
|
||||
}
|
||||
|
||||
export TARGET_CC = "${CCACHE}${TARGET_PREFIX}gcc --sysroot=${STAGING_DIR_TARGET} ${TARGET_CC_ARCH} ${SECURITY_NOPIE_CFLAGS}"
|
||||
export TARGET_CXX = "${CCACHE}${TARGET_PREFIX}g++ --sysroot=${STAGING_DIR_TARGET} ${TARGET_CC_ARCH} ${SECURITY_NOPIE_CFLAGS}"
|
||||
export TARGET_CCLD = "${TARGET_PREFIX}gcc --sysroot=${STAGING_DIR_TARGET} ${TARGET_CC_ARCH} ${SECURITY_NOPIE_CFLAGS}"
|
||||
export TARGET_AR = "${TARGET_PREFIX}ar"
|
||||
|
||||
do_rust_create_wrappers () {
|
||||
mkdir -p "${WRAPPER_DIR}"
|
||||
|
||||
# Yocto Build / Rust Host C compiler
|
||||
create_wrapper "${RUST_BUILD_CC}" "${BUILD_CC}"
|
||||
# Yocto Build / Rust Host C++ compiler
|
||||
create_wrapper "${RUST_BUILD_CXX}" "${BUILD_CXX}"
|
||||
# Yocto Build / Rust Host linker
|
||||
create_wrapper "${RUST_BUILD_CCLD}" "${BUILD_CCLD}" "${BUILD_LDFLAGS}"
|
||||
# Yocto Build / Rust Host archiver
|
||||
create_wrapper "${RUST_BUILD_AR}" "${BUILD_AR}"
|
||||
|
||||
# Yocto Target / Rust Target C compiler
|
||||
create_wrapper "${RUST_TARGET_CC}" "${TARGET_CC}"
|
||||
# Yocto Target / Rust Target C++ compiler
|
||||
create_wrapper "${RUST_TARGET_CXX}" "${TARGET_CXX}"
|
||||
# Yocto Target / Rust Target linker
|
||||
create_wrapper "${RUST_TARGET_CCLD}" "${TARGET_CCLD}" "${TARGET_LDFLAGS}"
|
||||
# Yocto Target / Rust Target archiver
|
||||
create_wrapper "${RUST_TARGET_AR}" "${TARGET_AR}"
|
||||
}
|
||||
|
||||
python do_configure() {
|
||||
import json
|
||||
from distutils.version import LooseVersion
|
||||
try:
|
||||
import configparser
|
||||
except ImportError:
|
||||
import ConfigParser as configparser
|
||||
|
||||
# toml is rather similar to standard ini like format except it likes values
|
||||
# that look more JSON like. So for our purposes simply escaping all values
|
||||
# as JSON seem to work fine.
|
||||
|
||||
e = lambda s: json.dumps(s)
|
||||
|
||||
config = configparser.RawConfigParser()
|
||||
|
||||
# [target.ARCH-poky-linux]
|
||||
target_section = "target.{}".format(d.getVar('TARGET_SYS', True))
|
||||
config.add_section(target_section)
|
||||
|
||||
llvm_config = d.expand("${YOCTO_ALTERNATE_EXE_PATH}")
|
||||
config.set(target_section, "llvm-config", e(llvm_config))
|
||||
|
||||
config.set(target_section, "cxx", e(d.expand("${RUST_TARGET_CXX}")))
|
||||
config.set(target_section, "cc", e(d.expand("${RUST_TARGET_CC}")))
|
||||
config.set(target_section, "ar", e(d.expand("${RUST_TARGET_AR}")))
|
||||
|
||||
# If we don't do this rust-native will compile it's own llvm for BUILD.
|
||||
# [target.${BUILD_ARCH}-unknown-linux-gnu]
|
||||
target_section = "target.{}".format(d.getVar('SNAPSHOT_BUILD_SYS', True))
|
||||
config.add_section(target_section)
|
||||
|
||||
config.set(target_section, "llvm-config", e(llvm_config))
|
||||
|
||||
config.set(target_section, "cxx", e(d.expand("${RUST_BUILD_CXX}")))
|
||||
config.set(target_section, "cc", e(d.expand("${RUST_BUILD_CC}")))
|
||||
config.set(target_section, "ar", e(d.expand("${RUST_BUILD_AR}")))
|
||||
|
||||
# [rust]
|
||||
config.add_section("rust")
|
||||
config.set("rust", "rpath", e(True))
|
||||
config.set("rust", "channel", e("stable"))
|
||||
|
||||
if LooseVersion(d.getVar("PV")) < LooseVersion("1.32.0"):
|
||||
config.set("rust", "use-jemalloc", e(False))
|
||||
|
||||
# Whether or not to optimize the compiler and standard library
|
||||
config.set("rust", "optimize", e(True))
|
||||
|
||||
# [build]
|
||||
config.add_section("build")
|
||||
config.set("build", "submodules", e(False))
|
||||
config.set("build", "docs", e(False))
|
||||
|
||||
rustc = d.expand("${WORKDIR}/rust-snapshot/bin/rustc")
|
||||
config.set("build", "rustc", e(rustc))
|
||||
|
||||
cargo = d.expand("${WORKDIR}/rust-snapshot/bin/cargo")
|
||||
config.set("build", "cargo", e(cargo))
|
||||
|
||||
config.set("build", "vendor", e(True))
|
||||
|
||||
targets = [d.getVar("TARGET_SYS", True), "{}-unknown-linux-gnu".format(d.getVar("HOST_ARCH", True))]
|
||||
config.set("build", "target", e(targets))
|
||||
|
||||
hosts = ["{}-unknown-linux-gnu".format(d.getVar("HOST_ARCH", True))]
|
||||
config.set("build", "host", e(hosts))
|
||||
|
||||
# We can't use BUILD_SYS since that is something the rust snapshot knows
|
||||
# nothing about when trying to build some stage0 tools (like fabricate)
|
||||
config.set("build", "build", e(d.getVar("SNAPSHOT_BUILD_SYS", True)))
|
||||
|
||||
# [install]
|
||||
config.add_section("install")
|
||||
# ./x.py install doesn't have any notion of "destdir"
|
||||
# but we can prepend ${D} to all the directories instead
|
||||
config.set("install", "prefix", e(d.getVar("D", True) + d.getVar("prefix", True)))
|
||||
config.set("install", "bindir", e(d.getVar("D", True) + d.getVar("bindir", True)))
|
||||
config.set("install", "libdir", e(d.getVar("D", True) + d.getVar("libdir", True)))
|
||||
config.set("install", "datadir", e(d.getVar("D", True) + d.getVar("datadir", True)))
|
||||
config.set("install", "mandir", e(d.getVar("D", True) + d.getVar("mandir", True)))
|
||||
|
||||
with open("config.toml", "w") as f:
|
||||
f.write('changelog-seen = 2\n\n')
|
||||
config.write(f)
|
||||
|
||||
# set up ${WORKDIR}/cargo_home
|
||||
bb.build.exec_func("setup_cargo_environment", d)
|
||||
}
|
||||
|
||||
do_install () {
|
||||
# Rust requires /usr/lib to contain the libs.
|
||||
# Similar story is with /usr/bin ruquiring `lib` to be at the same level.
|
||||
@@ -190,7 +43,13 @@ do_install () {
|
||||
|
||||
install -m 0644 "${WORKDIR}/targets/${TARGET_SYS}.json" "${RUSTLIB_DIR}"
|
||||
|
||||
# TODO package the sources.
|
||||
SRC_DIR=${RUSTLIB_DIR}/src/rust
|
||||
install -d ${SRC_DIR}/src/llvm-project
|
||||
cp -R --no-dereference build/${SNAPSHOT_BUILD_SYS}/stage2/lib/rustlib/src/rust/src/llvm-project/libunwind ${SRC_DIR}/src/llvm-project
|
||||
cp -R --no-dereference build/${SNAPSHOT_BUILD_SYS}/stage2/lib/rustlib/src/rust/library ${SRC_DIR}
|
||||
cp --no-dereference build/${SNAPSHOT_BUILD_SYS}/stage2/lib/rustlib/src/rust/Cargo.lock ${SRC_DIR}
|
||||
# Remove executable bit from any files so then SDK doesn't try to relocate.
|
||||
chmod -R -x+X ${SRC_DIR}
|
||||
|
||||
ENV_SETUP_DIR=${D}${base_prefix}/environment-setup.d
|
||||
mkdir "${ENV_SETUP_DIR}"
|
||||
@@ -204,21 +63,16 @@ do_install () {
|
||||
chown -R root.root ${D}
|
||||
}
|
||||
|
||||
INSANE_SKIP_${RUSTLIB_TARGET_PN} = "file-rdeps arch ldflags"
|
||||
SKIP_FILEDEPS_${RUSTLIB_TARGET_PN} = "1"
|
||||
|
||||
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
|
||||
INHIBIT_PACKAGE_STRIP = "1"
|
||||
INHIBIT_SYSROOT_STRIP = "1"
|
||||
|
||||
PKG_SYS_LIBDIR = "${SDKPATHNATIVE}/usr/lib"
|
||||
PKG_SYS_BINDIR = "${SDKPATHNATIVE}/usr/bin"
|
||||
PKG_RUSTLIB_DIR = "${PKG_SYS_LIBDIR}/${TARGET_SYS}/rustlib"
|
||||
FILES_${PN} = "${PKG_SYS_LIBDIR}/*.so ${PKG_SYS_BINDIR} ${base_prefix}/environment-setup.d"
|
||||
FILES_${RUSTLIB_TARGET_PN} = "${PKG_RUSTLIB_DIR}/${TARGET_SYS} ${PKG_RUSTLIB_DIR}/${TARGET_SYS}.json"
|
||||
FILES_${RUSTLIB_HOST_PN} = "${PKG_RUSTLIB_DIR}/${BUILD_ARCH}-unknown-linux-gnu"
|
||||
FILES:${PN} = "${PKG_SYS_LIBDIR}/*.so ${PKG_SYS_BINDIR} ${base_prefix}/environment-setup.d"
|
||||
FILES:${RUSTLIB_TARGET_PN} = "${PKG_RUSTLIB_DIR}/${TARGET_SYS} ${PKG_RUSTLIB_DIR}/${TARGET_SYS}.json"
|
||||
FILES:${RUSTLIB_HOST_PN} = "${PKG_RUSTLIB_DIR}/${BUILD_ARCH}-unknown-linux-gnu"
|
||||
FILES:${RUSTLIB_SRC_PN} = "${PKG_RUSTLIB_DIR}/src"
|
||||
|
||||
SUMMARY_${RUSTLIB_TARGET_PN} = "Rust cross canadian libaries for ${TARGET_SYS}"
|
||||
SUMMARY_${RUSTLIB_HOST_PN} = "Rust cross canadian libaries for ${HOST_SYS}"
|
||||
SUMMARY_${PN} = "Rust crost canadian compiler"
|
||||
SUMMARY:${RUSTLIB_TARGET_PN} = "Rust cross canadian libaries for ${TARGET_SYS}"
|
||||
SUMMARY:${RUSTLIB_HOST_PN} = "Rust cross canadian libaries for ${HOST_SYS}"
|
||||
SUMMARY:${RUSTLIB_SRC_PN} = "Rust standard library sources for cross canadian toolchain"
|
||||
SUMMARY:${PN} = "Rust crost canadian compiler"
|
||||
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
require rust-cross-canadian.inc
|
||||
require rust-source-${PV}.inc
|
||||
require rust-snapshot-${PV}.inc
|
||||
|
||||
FILESEXTRAPATHS_prepend := "${THISDIR}/rust:"
|
||||
|
||||
SRC_URI += " \
|
||||
file://0001-rustc_target-Fix-dash-vs-underscore-mismatches-in-op.patch \
|
||||
"
|
||||
@@ -2,5 +2,5 @@ require rust-cross-canadian.inc
|
||||
require rust-source-${PV}.inc
|
||||
require rust-snapshot-${PV}.inc
|
||||
|
||||
FILESEXTRAPATHS_prepend := "${THISDIR}/rust:"
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/rust:"
|
||||
|
||||
|
||||
6
recipes-devtools/rust/rust-cross-canadian_1.54.0.bb
Normal file
6
recipes-devtools/rust/rust-cross-canadian_1.54.0.bb
Normal file
@@ -0,0 +1,6 @@
|
||||
require rust-cross-canadian.inc
|
||||
require rust-source-${PV}.inc
|
||||
require rust-snapshot-${PV}.inc
|
||||
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/rust:"
|
||||
|
||||
@@ -45,11 +45,11 @@ PN = "rust-cross-${TARGET_ARCH}"
|
||||
# FIXME: this should really be fixed in rust itself.
|
||||
# FIXME: using hard-coded relative paths is wrong, we should ask bitbake for
|
||||
# the relative path between 2 of it's vars.
|
||||
HOST_POST_LINK_ARGS_append = " -Wl,-rpath=../../lib"
|
||||
BUILD_POST_LINK_ARGS_append = " -Wl,-rpath=../../lib"
|
||||
HOST_POST_LINK_ARGS:append = " -Wl,-rpath=../../lib"
|
||||
BUILD_POST_LINK_ARGS:append = " -Wl,-rpath=../../lib"
|
||||
|
||||
# We need the same thing for the calls to the compiler when building the runtime crap
|
||||
TARGET_CC_ARCH_append = " --sysroot=${STAGING_DIR_TARGET}"
|
||||
TARGET_CC_ARCH:append = " --sysroot=${STAGING_DIR_TARGET}"
|
||||
|
||||
do_rust_setup_snapshot () {
|
||||
}
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
SUMMARY = "LLVM compiler framework (packaged with rust)"
|
||||
LICENSE ?= "Apache-2.0-with-LLVM-exception"
|
||||
|
||||
SRC_URI += "file://0001-nfc-Fix-missing-include.patch;striplevel=2 \
|
||||
file://0002-llvm-allow-env-override-of-exe-path.patch;striplevel=2 \
|
||||
"
|
||||
SRC_URI += "file://0002-llvm-allow-env-override-of-exe-path.patch;striplevel=2"
|
||||
|
||||
S = "${RUSTSRC}/src/llvm-project/llvm"
|
||||
|
||||
@@ -13,8 +11,8 @@ inherit cmake python3native
|
||||
|
||||
DEPENDS += "ninja-native rust-llvm-native"
|
||||
|
||||
ARM_INSTRUCTION_SET_armv5 = "arm"
|
||||
ARM_INSTRUCTION_SET_armv4t = "arm"
|
||||
ARM_INSTRUCTION_SET:armv5 = "arm"
|
||||
ARM_INSTRUCTION_SET:armv4t = "arm"
|
||||
|
||||
LLVM_DIR = "llvm${LLVM_RELEASE}"
|
||||
|
||||
@@ -34,7 +32,7 @@ EXTRA_OECMAKE = " \
|
||||
-DLLVM_TARGET_ARCH=${TARGET_ARCH} \
|
||||
-DCMAKE_INSTALL_PREFIX:PATH=${libdir}/llvm-rust \
|
||||
"
|
||||
EXTRA_OECMAKE_append_class-target = "\
|
||||
EXTRA_OECMAKE:append:class-target = "\
|
||||
-DCMAKE_CROSSCOMPILING:BOOL=ON \
|
||||
-DLLVM_BUILD_TOOLS=OFF \
|
||||
-DLLVM_TABLEGEN=${STAGING_LIBDIR_NATIVE}/llvm-rust/bin/llvm-tblgen \
|
||||
@@ -47,7 +45,7 @@ INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
|
||||
|
||||
export YOCTO_ALTERNATE_EXE_PATH = "${STAGING_LIBDIR}/llvm-rust/bin/llvm-config"
|
||||
|
||||
do_install_append () {
|
||||
do_install:append () {
|
||||
# we don't need any of this stuff to build Rust
|
||||
rm -rf "${D}/usr/lib/cmake"
|
||||
}
|
||||
@@ -55,11 +53,11 @@ do_install_append () {
|
||||
PACKAGES =+ "${PN}-bugpointpasses ${PN}-llvmhello ${PN}-liblto"
|
||||
|
||||
# Add the extra locations to avoid the complaints about unpackaged files
|
||||
FILES_${PN}-bugpointpasses = "${libdir}/llvm-rust/lib/BugpointPasses.so"
|
||||
FILES_${PN}-llvmhello = "${libdir}/llvm-rust/lib/LLVMHello.so"
|
||||
FILES_${PN}-liblto = "${libdir}/llvm-rust/lib/libLTO.so.*"
|
||||
FILES_${PN}-staticdev =+ "${libdir}/llvm-rust/*/*.a"
|
||||
FILES_${PN} += "${libdir}/libLLVM*.so.* ${libdir}/llvm-rust/lib/*.so.* ${libdir}/llvm-rust/bin"
|
||||
FILES_${PN}-dev += "${datadir}/llvm ${libdir}/llvm-rust/lib/*.so ${libdir}/llvm-rust/include ${libdir}/llvm-rust/share ${libdir}/llvm-rust/lib/cmake"
|
||||
FILES:${PN}-bugpointpasses = "${libdir}/llvm-rust/lib/BugpointPasses.so"
|
||||
FILES:${PN}-llvmhello = "${libdir}/llvm-rust/lib/LLVMHello.so"
|
||||
FILES:${PN}-liblto = "${libdir}/llvm-rust/lib/libLTO.so.*"
|
||||
FILES:${PN}-staticdev =+ "${libdir}/llvm-rust/*/*.a"
|
||||
FILES:${PN} += "${libdir}/libLLVM*.so.* ${libdir}/llvm-rust/lib/*.so.* ${libdir}/llvm-rust/bin"
|
||||
FILES:${PN}-dev += "${datadir}/llvm ${libdir}/llvm-rust/lib/*.so ${libdir}/llvm-rust/include ${libdir}/llvm-rust/share ${libdir}/llvm-rust/lib/cmake"
|
||||
|
||||
BBCLASSEXTEND = "native"
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
LLVM_RELEASE = "11.0.0"
|
||||
require rust-source-${PV}.inc
|
||||
require rust-llvm.inc
|
||||
@@ -3,3 +3,5 @@
|
||||
LLVM_RELEASE = "11.0.1"
|
||||
require rust-source-${PV}.inc
|
||||
require rust-llvm.inc
|
||||
|
||||
SRC_URI += "file://0001-nfc-Fix-missing-include.patch;striplevel=2"
|
||||
5
recipes-devtools/rust/rust-llvm_1.54.0.bb
Normal file
5
recipes-devtools/rust/rust-llvm_1.54.0.bb
Normal file
@@ -0,0 +1,5 @@
|
||||
# check src/llvm-project/llvm/CMakeLists.txt for llvm version in use
|
||||
#
|
||||
LLVM_RELEASE = "12.0.1"
|
||||
require rust-source-${PV}.inc
|
||||
require rust-llvm.inc
|
||||
@@ -1,13 +0,0 @@
|
||||
require rust-snapshot.inc
|
||||
|
||||
## This is information on the rust-snapshot (binary) used to build our current release.
|
||||
## snapshot info is taken from rust/src/stage0.txt
|
||||
## TODO: find a way to add additional SRC_URIs based on the contents of an
|
||||
## earlier SRC_URI.
|
||||
RS_VERSION = "1.48.0"
|
||||
CARGO_VERSION = "1.48.0"
|
||||
|
||||
# TODO: Add hashes for other architecture toolchains as well. Make a script?
|
||||
SRC_URI[rust-std-snapshot-x86_64.sha256sum] = "1c00a6a0dabbf6290728b09f9307d9fa6cc985487f727075c68acd4a600ef3f8"
|
||||
SRC_URI[rustc-snapshot-x86_64.sha256sum] = "fc4d292a52cbb6b84fb9f065d0d7596064a9b957381d639d5a750d6e2bf02483"
|
||||
SRC_URI[cargo-snapshot-x86_64.sha256sum] = "b11d595581e2580c069b5039214e1031a0e4f87ff6490ac39f92f77857e37055"
|
||||
@@ -11,3 +11,8 @@ CARGO_VERSION = "1.50.0"
|
||||
SRC_URI[rust-std-snapshot-x86_64.sha256sum] = "f1eb68db2b28a56ed8701edba7cf3688011d903ca12ff9d85bd21d3f8f614792"
|
||||
SRC_URI[rustc-snapshot-x86_64.sha256sum] = "9bebd360bcd9b5bb58f2a02930b9db4ae291adef259c96377f1f4cbd240bcf86"
|
||||
SRC_URI[cargo-snapshot-x86_64.sha256sum] = "3cb2c68e987e5681fca9c930973f408a71151b1b255e69669a08e54d446ee803"
|
||||
|
||||
SRC_URI[rust-std-snapshot-aarch64.sha256sum] = "1a1b1a540d531c89e866083f84ef67125dee108844e4e415b07c3a1000006544"
|
||||
SRC_URI[rustc-snapshot-aarch64.sha256sum] = "9b956d97d7e428ecd8634d467659ebdb5bd79c387b88363be8749eddd7f98756"
|
||||
SRC_URI[cargo-snapshot-aarch64.sha256sum] = "f3c772f455406f67991ac20cff56a4fcd2d01454e29280c566119ab5180307ea"
|
||||
|
||||
|
||||
18
recipes-devtools/rust/rust-snapshot-1.54.0.inc
Normal file
18
recipes-devtools/rust/rust-snapshot-1.54.0.inc
Normal file
@@ -0,0 +1,18 @@
|
||||
require rust-snapshot.inc
|
||||
|
||||
## This is information on the rust-snapshot (binary) used to build our current release.
|
||||
## snapshot info is taken from rust/src/stage0.txt
|
||||
## TODO: find a way to add additional SRC_URIs based on the contents of an
|
||||
## earlier SRC_URI.
|
||||
RS_VERSION = "1.53.0"
|
||||
CARGO_VERSION = "1.53.0"
|
||||
|
||||
# TODO: Add hashes for other architecture toolchains as well. Make a script?
|
||||
SRC_URI[rust-std-snapshot-x86_64.sha256sum] = "66d5257bbd194db08e67ca63a74cc80cdc4a36eaa30bf7dfe65861d9deaff7f7"
|
||||
SRC_URI[rustc-snapshot-x86_64.sha256sum] = "9c2f0443a546dd18f1f020c7711a7b9864432545ceb812e79315c1e76508b193"
|
||||
SRC_URI[cargo-snapshot-x86_64.sha256sum] = "e4437f6c83574fc60e183f4df439190f7610e4a669476802795645da66fbb83b"
|
||||
|
||||
SRC_URI[rust-std-snapshot-aarch64.sha256sum] = "fc261d0ff057c58b36057c30217bad1a29a9a3f257c70f5df88ad3f1d982386e"
|
||||
SRC_URI[rustc-snapshot-aarch64.sha256sum] = "a857e5c615f6b5b3afc6b707ae007b3b4624585b0b2ba9b38b553114db37f8d5"
|
||||
SRC_URI[cargo-snapshot-aarch64.sha256sum] = "4fa425a2d4633aeca67fa42695b3b9100f8b988dd1c21e60d6b2aa1164e55c0c"
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
require rust-source.inc
|
||||
|
||||
SRC_URI[rust.sha256sum] = "ebe910edc824a0a037a10be443446a0511923ba8342fa3c331ec8a22481d5d15"
|
||||
3
recipes-devtools/rust/rust-source-1.54.0.inc
Normal file
3
recipes-devtools/rust/rust-source-1.54.0.inc
Normal file
@@ -0,0 +1,3 @@
|
||||
require rust-source.inc
|
||||
|
||||
SRC_URI[rust.sha256sum] = "a2934f85f76a35a3796c0fefd31e91f5b6dd8377cd8c3769c1c10e7ce7a495f4"
|
||||
@@ -3,8 +3,8 @@ require rust.inc
|
||||
DEPENDS += "rust-llvm (=${PV})"
|
||||
|
||||
# Otherwise we'll depend on what we provide
|
||||
INHIBIT_DEFAULT_RUST_DEPS_class-native = "1"
|
||||
INHIBIT_DEFAULT_RUST_DEPS:class-native = "1"
|
||||
# We don't need to depend on gcc-native because yocto assumes it exists
|
||||
PROVIDES_class-native = "virtual/${TARGET_PREFIX}rust"
|
||||
PROVIDES:class-native = "virtual/${TARGET_PREFIX}rust"
|
||||
|
||||
BBCLASSEXTEND = "native"
|
||||
|
||||
38
recipes-devtools/rust/rust-tools-cross-canadian.inc
Normal file
38
recipes-devtools/rust/rust-tools-cross-canadian.inc
Normal file
@@ -0,0 +1,38 @@
|
||||
|
||||
require rust-cross-canadian-common.inc
|
||||
|
||||
RUST_TOOLS_CLIPPY_PN = "rust-tools-clippy-cross-canadian-${TRANSLATED_TARGET_ARCH}"
|
||||
RUST_TOOLS_RUSTFMT_PN = "rust-tools-rustfmt-cross-canadian-${TRANSLATED_TARGET_ARCH}"
|
||||
RUST_TOOLS_PKGS = "${RUST_TOOLS_CLIPPY_PN} ${RUST_TOOLS_RUSTFMT_PN}"
|
||||
PN = "rust-tools-cross-canadian-${TRANSLATED_TARGET_ARCH}"
|
||||
|
||||
PACKAGES = "${RUST_TOOLS_CLIPPY_PN} ${RUST_TOOLS_RUSTFMT_PN} ${PN}"
|
||||
RDEPENDS:${PN} += "${RUST_TOOLS_PKGS}"
|
||||
|
||||
do_compile () {
|
||||
rust_runx build --stage 2 src/tools/clippy
|
||||
rust_runx build --stage 2 src/tools/rustfmt
|
||||
}
|
||||
|
||||
do_install () {
|
||||
SYS_BINDIR=$(dirname ${D}${bindir})
|
||||
|
||||
install -d "${SYS_BINDIR}"
|
||||
cp build/${SNAPSHOT_BUILD_SYS}/stage2-tools-bin/* ${SYS_BINDIR}
|
||||
for i in ${SYS_BINDIR}/*; do
|
||||
chrpath -r "\$ORIGIN/../lib" ${i}
|
||||
done
|
||||
|
||||
chown -R root.root ${D}
|
||||
}
|
||||
|
||||
ALLOW_EMPTY:${PN} = "1"
|
||||
|
||||
PKG_SYS_BINDIR = "${SDKPATHNATIVE}/usr/bin"
|
||||
FILES:${RUST_TOOLS_CLIPPY_PN} = "${PKG_SYS_BINDIR}/cargo-clippy ${PKG_SYS_BINDIR}/clippy-driver"
|
||||
FILES:${RUST_TOOLS_RUSTFMT_PN} = "${PKG_SYS_BINDIR}/rustfmt"
|
||||
|
||||
SUMMARY:${PN} = "Rust helper tools"
|
||||
SUMMARY:${RUST_TOOLS_CLIPPY_PN} = "A collection of lints to catch common mistakes and improve your Rust code"
|
||||
SUMMARY:${RUST_TOOLS_RUSTFMT_PN} = "A tool for formatting Rust code according to style guidelines"
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
require rust-tools-cross-canadian.inc
|
||||
require rust-source-${PV}.inc
|
||||
require rust-snapshot-${PV}.inc
|
||||
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/rust:"
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
require rust-tools-cross-canadian.inc
|
||||
require rust-source-${PV}.inc
|
||||
require rust-snapshot-${PV}.inc
|
||||
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/rust:"
|
||||
|
||||
@@ -7,11 +7,8 @@ LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=93a95682d51b4cb0a633a97046940ef0"
|
||||
inherit rust
|
||||
inherit cargo_common
|
||||
|
||||
SRC_URI += "file://riscv-march.patch"
|
||||
SRC_URI += "file://rv64gc.patch"
|
||||
|
||||
DEPENDS += "file-native python3-native"
|
||||
DEPENDS_append_class-native = " rust-llvm-native"
|
||||
DEPENDS:append:class-native = " rust-llvm-native"
|
||||
|
||||
S = "${RUSTSRC}"
|
||||
|
||||
@@ -117,11 +114,13 @@ python do_configure() {
|
||||
|
||||
config.set("build", "vendor", e(True))
|
||||
|
||||
targets = [d.getVar("TARGET_SYS", True)]
|
||||
if not "targets" in locals():
|
||||
targets = [d.getVar("TARGET_SYS", True)]
|
||||
config.set("build", "target", e(targets))
|
||||
|
||||
hosts = [d.getVar("HOST_SYS", True)]
|
||||
config.set("build", "host", e(targets))
|
||||
if not "hosts" in locals():
|
||||
hosts = [d.getVar("HOST_SYS", True)]
|
||||
config.set("build", "host", e(hosts))
|
||||
|
||||
# We can't use BUILD_SYS since that is something the rust snapshot knows
|
||||
# nothing about when trying to build some stage0 tools (like fabricate)
|
||||
|
||||
@@ -1,75 +0,0 @@
|
||||
From dd682cb48c8b667859dded98a4bbfbd891a1eca4 Mon Sep 17 00:00:00 2001
|
||||
From: Vadim Petrochenkov <vadim.petrochenkov@gmail.com>
|
||||
Date: Thu, 12 Nov 2020 19:16:59 +0300
|
||||
Subject: [PATCH] rustc_target: Fix dash vs underscore mismatches in option
|
||||
names
|
||||
|
||||
---
|
||||
compiler/rustc_target/src/spec/mod.rs | 16 ++++++++--------
|
||||
1 file changed, 8 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/compiler/rustc_target/src/spec/mod.rs b/compiler/rustc_target/src/spec/mod.rs
|
||||
index f949bf95a50..f837114ee74 100644
|
||||
--- a/compiler/rustc_target/src/spec/mod.rs
|
||||
+++ b/compiler/rustc_target/src/spec/mod.rs
|
||||
@@ -1428,8 +1428,8 @@ pub fn from_json(obj: Json) -> Result<Target, String> {
|
||||
}
|
||||
|
||||
key!(is_builtin, bool);
|
||||
- key!(endian = "target_endian");
|
||||
- key!(c_int_width = "target_c_int_width");
|
||||
+ key!(endian = "target-endian");
|
||||
+ key!(c_int_width = "target-c-int-width");
|
||||
key!(os);
|
||||
key!(env);
|
||||
key!(vendor);
|
||||
@@ -1466,7 +1466,7 @@ pub fn from_json(obj: Json) -> Result<Target, String> {
|
||||
key!(exe_suffix);
|
||||
key!(staticlib_prefix);
|
||||
key!(staticlib_suffix);
|
||||
- key!(os_family = "target_family", optional);
|
||||
+ key!(os_family = "target-family", optional);
|
||||
key!(abi_return_struct_as_int, bool);
|
||||
key!(is_like_osx, bool);
|
||||
key!(is_like_solaris, bool);
|
||||
@@ -1511,7 +1511,7 @@ pub fn from_json(obj: Json) -> Result<Target, String> {
|
||||
key!(limit_rdylib_exports, bool);
|
||||
key!(override_export_symbols, opt_list);
|
||||
key!(merge_functions, MergeFunctions)?;
|
||||
- key!(mcount = "target_mcount");
|
||||
+ key!(mcount = "target-mcount");
|
||||
key!(llvm_abiname);
|
||||
key!(relax_elf_relocations, bool);
|
||||
key!(llvm_args, list);
|
||||
@@ -1663,8 +1663,8 @@ fn to_json(&self) -> Json {
|
||||
target_val!(data_layout);
|
||||
|
||||
target_option_val!(is_builtin);
|
||||
- target_option_val!(endian, "target_endian");
|
||||
- target_option_val!(c_int_width, "target_c_int_width");
|
||||
+ target_option_val!(endian, "target-endian");
|
||||
+ target_option_val!(c_int_width, "target-c-int-width");
|
||||
target_option_val!(os);
|
||||
target_option_val!(env);
|
||||
target_option_val!(vendor);
|
||||
@@ -1701,7 +1701,7 @@ fn to_json(&self) -> Json {
|
||||
target_option_val!(exe_suffix);
|
||||
target_option_val!(staticlib_prefix);
|
||||
target_option_val!(staticlib_suffix);
|
||||
- target_option_val!(os_family, "target_family");
|
||||
+ target_option_val!(os_family, "target-family");
|
||||
target_option_val!(abi_return_struct_as_int);
|
||||
target_option_val!(is_like_osx);
|
||||
target_option_val!(is_like_solaris);
|
||||
@@ -1746,7 +1746,7 @@ fn to_json(&self) -> Json {
|
||||
target_option_val!(limit_rdylib_exports);
|
||||
target_option_val!(override_export_symbols);
|
||||
target_option_val!(merge_functions);
|
||||
- target_option_val!(mcount, "target_mcount");
|
||||
+ target_option_val!(mcount, "target-mcount");
|
||||
target_option_val!(llvm_abiname);
|
||||
target_option_val!(relax_elf_relocations);
|
||||
target_option_val!(llvm_args);
|
||||
--
|
||||
2.28.0
|
||||
|
||||
@@ -2,6 +2,11 @@ require rust-target.inc
|
||||
require rust-source-${PV}.inc
|
||||
require rust-snapshot-${PV}.inc
|
||||
|
||||
SRC_URI += " \
|
||||
file://riscv-march.patch \
|
||||
file://rv64gc.patch \
|
||||
"
|
||||
|
||||
do_compile () {
|
||||
rust_runx build --stage 2
|
||||
}
|
||||
|
||||
@@ -2,10 +2,6 @@ require rust-target.inc
|
||||
require rust-source-${PV}.inc
|
||||
require rust-snapshot-${PV}.inc
|
||||
|
||||
SRC_URI += "\
|
||||
file://0001-rustc_target-Fix-dash-vs-underscore-mismatches-in-op.patch \
|
||||
"
|
||||
|
||||
do_compile () {
|
||||
rust_runx build --stage 2
|
||||
}
|
||||
Reference in New Issue
Block a user