-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for alternative QNX Neutrino network stack io-sock
#4169
base: main
Are you sure you want to change the base?
Conversation
r? @JohnTitor rustbot has assigned @JohnTitor. Use |
b9d6917
to
3f75bbc
Compare
☔ The latest upstream changes (presumably #4198) made this pull request unmergeable. Please resolve the merge conflicts. |
273da82
to
2410b84
Compare
☔ The latest upstream changes (presumably #4202) made this pull request unmergeable. Please resolve the merge conflicts. |
6e08444
to
f92715a
Compare
21b7555
to
c0d8cf1
Compare
@tgross35 would it make sense to take over from @JohnTitor ? Asking because of 65d0ffb. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I didn't look at the nto changes too deeply since I have nothing to reference, but the surface looks reasonable to me and you are a target maintainer. @jonathanpallant you're also listed as a maintainer, could you ack this?
Also, looks like the first two commits could be squashed |
c0d8cf1
to
ff5a039
Compare
Done. The test failures of freebsd tests seem to be unrelated. |
ff5a039
to
f2b8ec3
Compare
Signed-off-by: Florian Bartels <Florian.Bartels@elektrobit.com>
f2b8ec3
to
720b515
Compare
) -> c_int; | ||
} | ||
} else { | ||
extern "C" { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can confirm these match qnx7/usr/include/io-sock/sys/socket.h
pub const USER_MAXID: c_int = 22; | ||
pub const SO_OVERFLOWED: c_int = 0x1009; | ||
} else { | ||
pub const SCM_CREDS: c_int = 0x03; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I randomly sampled a selection of these and they all checked out against my header files.
Building libc_test also failed (I didn't expect it to run, because this host is not running QNX, but I expected it to build): bash -c "source ~/qnx710/qnxsdp-env.sh && criticalup run cargo test --target=aarch64-unknown-nto-qnx710"
QNX_HOST=/Users/jonathan/qnx710/host/darwin/x86_64
QNX_TARGET=/Users/jonathan/qnx710/target/qnx7
MAKEFLAGS=-I/Users/jonathan/qnx710/target/qnx7/usr/include
Compiling proc-macro2 v1.0.93
Compiling unicode-ident v1.0.14
Compiling libc v0.2.169
Compiling serde v1.0.217
Compiling memchr v2.7.4
Compiling cfg-if v0.1.10
Compiling serde_json v1.0.135
Compiling semver v1.0.24
Compiling unicode-xid v0.2.6
Compiling itoa v1.0.14
Compiling ryu v1.0.18
Compiling shlex v1.3.0
Compiling bitflags v1.3.2
Compiling log v0.4.22
Compiling regex-syntax v0.8.5
Compiling cc v1.2.9
Compiling libc v1.0.0-alpha.1 (/Users/jonathan/Documents/open-source/libc_testing/libc)
Compiling unicode-width v0.2.0
Compiling anstyle v1.0.10
Compiling aho-corasick v1.1.3
Compiling rustc_version v0.4.1
Compiling annotate-snippets v0.11.5
Compiling glob v0.3.2
Compiling quote v1.0.38
Compiling dirs-sys v0.3.7
Compiling syn v2.0.96
Compiling dirs v2.0.2
Compiling term v0.6.1
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:128:15
|
128 | #[cfg(not(target_env = "nto71_iosock"))]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
= note: `#[warn(unexpected_cfgs)]` on by default
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:137:11
|
137 | #[cfg(target_env = "nto71_iosock")]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:248:15
|
248 | #[cfg(not(target_env = "nto71_iosock"))]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:279:15
|
279 | #[cfg(not(target_env = "nto71_iosock"))]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:285:11
|
285 | #[cfg(target_env = "nto71_iosock")]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:614:15
|
614 | #[cfg(not(target_env = "nto71_iosock"))]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:622:11
|
622 | #[cfg(target_env = "nto71_iosock")]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:653:15
|
653 | #[cfg(not(target_env = "nto71_iosock"))]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:754:15
|
754 | #[cfg(not(target_env = "nto71_iosock"))]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:766:11
|
766 | #[cfg(target_env = "nto71_iosock")]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:1277:18
|
1277 | if #[cfg(not(target_env = "nto71_iosock"))] {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:2938:18
|
2938 | if #[cfg(not(target_env = "nto71_iosock"))] {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: `libc` (lib) generated 12 warnings
Compiling regex-automata v0.4.9
Compiling serde_derive v1.0.217
Compiling regex v1.11.1
Compiling garando_pos v0.1.0
Compiling garando_errors v0.1.0
Compiling garando_syntax v0.1.1
Compiling ctest2 v0.4.9
Compiling libc-test v0.1.0 (/Users/jonathan/Documents/open-source/libc_testing/libc/libc-test)
warning: libc-test@0.1.0: warning: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: archive library: /Users/jonathan/Documents/open-source/libc_testing/libc/target/aarch64-unknown-nto-qnx710/debug/build/libc-test-93769fdecc84d0de/out/libcmsg.a the table of contents is empty (no object file members in the library define global symbols)
warning: libc-test@0.1.0: warning: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: archive library: /Users/jonathan/Documents/open-source/libc_testing/libc/target/aarch64-unknown-nto-qnx710/debug/build/libc-test-93769fdecc84d0de/out/libmain.a the table of contents is empty (no object file members in the library define global symbols)
error[E0432]: unresolved imports `libc::B230400`, `libc::DT_BLK`, `libc::DT_CHR`, `libc::DT_DIR`, `libc::DT_FIFO`, `libc::DT_LNK`, `libc::DT_REG`, `libc::DT_SOCK`, `libc::GRPQUOTA`, `libc::PRIO_MAX`, `libc::PRIO_MIN`, `libc::SA_ONSTACK`, `libc::SA_RESTART`, `libc::USRQUOTA`, `libc::cfmakeraw`, `libc::cfsetspeed`
--> /Users/jonathan/Documents/open-source/libc_testing/libc/target/aarch64-unknown-nto-qnx710/debug/build/libc-test-93769fdecc84d0de/out/semver.rs:16:5
|
16 | B230400,
| ^^^^^^^
| |
| no `B230400` in the root
| help: a similar name exists in the module: `B2400`
...
38 | DT_BLK,
| ^^^^^^ no `DT_BLK` in the root
39 | DT_CHR,
| ^^^^^^ no `DT_CHR` in the root
40 | DT_DIR,
| ^^^^^^ no `DT_DIR` in the root
41 | DT_FIFO,
| ^^^^^^^ no `DT_FIFO` in the root
42 | DT_LNK,
| ^^^^^^ no `DT_LNK` in the root
43 | DT_REG,
| ^^^^^^ no `DT_REG` in the root
44 | DT_SOCK,
| ^^^^^^^ no `DT_SOCK` in the root
...
152 | GRPQUOTA,
| ^^^^^^^^ no `GRPQUOTA` in the root
...
276 | PRIO_MAX,
| ^^^^^^^^ no `PRIO_MAX` in the root
277 | PRIO_MIN,
| ^^^^^^^^
...
299 | SA_ONSTACK,
| ^^^^^^^^^^
300 | SA_RESETHAND,
301 | SA_RESTART,
| ^^^^^^^^^^
...
404 | USRQUOTA,
| ^^^^^^^^
...
485 | cfmakeraw,
| ^^^^^^^^^
...
488 | cfsetspeed,
| ^^^^^^^^^^
For more information about this error, try `rustc --explain E0432`. |
I'm seeing build warnings that should probably be addressed? manifest-version = 1
[products.ferrocene]
release = "stable-25.02.0"
packages = [
"rustc-${rustc-host}",
"rust-std-${rustc-host}",
"cargo-${rustc-host}",
"llvm-tools-${rustc-host}",
"rust-src",
"rust-std-aarch64-unknown-nto-qnx710",
] $ bash -c "source ~/qnx710/qnxsdp-env.sh && criticalup run cargo build --target=aarch64-unknown-nto-qnx710"
QNX_HOST=/Users/jonathan/qnx710/host/darwin/x86_64
QNX_TARGET=/Users/jonathan/qnx710/target/qnx7
MAKEFLAGS=-I/Users/jonathan/qnx710/target/qnx7/usr/include
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:128:15
|
128 | #[cfg(not(target_env = "nto71_iosock"))]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
= note: `#[warn(unexpected_cfgs)]` on by default
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:137:11
|
137 | #[cfg(target_env = "nto71_iosock")]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:248:15
|
248 | #[cfg(not(target_env = "nto71_iosock"))]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:279:15
|
279 | #[cfg(not(target_env = "nto71_iosock"))]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:285:11
|
285 | #[cfg(target_env = "nto71_iosock")]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:614:15
|
614 | #[cfg(not(target_env = "nto71_iosock"))]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:622:11
|
622 | #[cfg(target_env = "nto71_iosock")]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:653:15
|
653 | #[cfg(not(target_env = "nto71_iosock"))]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:754:15
|
754 | #[cfg(not(target_env = "nto71_iosock"))]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:766:11
|
766 | #[cfg(target_env = "nto71_iosock")]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:1277:18
|
1277 | if #[cfg(not(target_env = "nto71_iosock"))] {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: unexpected `cfg` condition value: `nto71_iosock`
--> src/unix/nto/mod.rs:2938:18
|
2938 | if #[cfg(not(target_env = "nto71_iosock"))] {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: expected values for `target_env` are: ``, `aix`, `gnu`, `illumos`, `msvc`, `musl`, `newlib`, `nto70`, `nto71`, `ohos`, `p1`, `p2`, `psx`, `relibc`, `sgx`, `uclibc`, and `wasi`
= note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
warning: `libc` (lib) generated 12 warnings
Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.01s |
Most of the warnings are coming from a compiler which does not understand or know the selected target. The unresolved imports should also be caused by the compiler not understanding the target. |
Oh, I see! Is this going to raise the MSRV on the libc crate, even for people who aren't using the new target? I was still building it with the old non-io-sock target. Building with nightly shows that the warnings have gone. |
It's not actually a problem since the warning will be quiet if you're not building the crate directly, but it would probably be good to add the environment to Line 32 in b550c6b
Usually CI denies warnings and tests with the MSRV, but the relevant |
@rustbot author Could you add the check config mentioned above? After that I'm happy to merge. This also needs a rebase. |
Description
QNX 7.1 supports two network stacks:
io-pkt
, which is defaultio-sock
, which is optional and should be default in QNX 8.0As one can see in the io-sock migration notes, this changes the libc API in a way similar to e.g. linux-gnu vs. linux-musl.
This change uses a new target which has a different value for
target_env
, so that e.g. libc can distinguish between both APIs. New target pull request for rustc: rust-lang/rust#133631CC: @jonathanpallant @japaric @gh-tr @AkhilTThomas
Sources
libc-test/semver
have been updated*LAST
or*MAX
areincluded (see #3131)
cd libc-test && cargo test --target mytarget
);especially relevant for platforms that may not be checked in CI