QNX target renaming#2439
Conversation
jyn514
left a comment
There was a problem hiding this comment.
seems fine. thanks for your work on this :)
bors merge
|
ah, you have merge conflicts. bors doesn't seem to have noticed them though ... bors r- |
|
Canceled. |
|
a wild guess is that bors didn't notice because this does not conflict with main |
|
i believe this is landing in #2447, not as a separate PR. feel free to re-open if i'm wrong. |
5fce624 to
17b4c84
Compare
|
made draft to avoid confusion |
|
we're going to merge this before the upstream pull. |
- aarch64-unknown-nto-qnx800 becomes simply aarch64-unknown-qnx - x86_64-pc-nto-qnx800 becomes simply x86_64-pc-qnx - references to QNX OS and QNX Neutrino RTOS are replaced with QNX SDP for uniformity - various nto_qnx modules are named to qnx_sdp to match the above The new target names are more consistent with those used by the QNX SDP 8.0 toolchain, and reflect a level on ongoing API stability similar to that for macOS and Linux (which simply have minimum supported versions record for their targets). Once the compiler knows about the new target names, libc and backtrace can be updated to match, and then building libstd for the new targets can be fixed. With these changes I can run: ```console $ ./x build library/std --stage 2 --target x86_64-pc-nto-qnx710,aarch64-unknown-nto-qnx710,x86_64-pc-nto-qnx710_iosock,aarch64-unknown-nto-qnx710_iosock,aarch64-unknown-nto-qnx700 $ ./x build library/core --stage 1 --target x86_64-pc-qnx,aarch64-unknown-qnx ```
The name of the OS had changed, so the tests needed updating
- Now explains what SDP is - Moves sections into a more useful order - Re-wrap long blocks of text
Just in case we were deliberately pairing up these OSes
- aarch64-unknown-nto-qnx800 became aarch64-unknown-qnx - x86_64-pc-nto-qnx800 became x86_64-pc-qnx
Use QNX SDP 8.0 when talking about the product in general, leaving 8.0.0 Build 141 as the specific when talking about qualifiied uses and/or toolchain installation for Ferrocene staff.
QNX 8.0 is not a thing, and 8.0.0 is over-precise. The details can clarify which release of 8.0 we test against.
QNX SDP is the build environment and is more useful to note here than QNX Neutrino or QNX OS, which are the run-time environment.
this test was ignored with the `ferrocene/ignored-tests.toml` mechanism but that has been removed
17b4c84 to
eaefcad
Compare
|
i confirm that i reviewed there are no significant differences after the rebase: https://public-docs.ferrocene.dev/main/qualification/plan/development.html#merge-requirements bors merge |
|
🕐 Waiting for PR status (Github check) to be set, probably by CI. Bors will automatically try to run when all required PR statuses are set. |
|
Build succeeded:
|
2473: [1.97] 26.08 backports r=jyn514 a=jyn514 i fixed the following conflicts which remained after running mergiraf: - #2460: ferrocene/doc/qualification-report/src/index.rst (1.98 had a powerpc target that 1.97 didn't) - #2439: library/std/src/env.rs, src/bootstrap/src/core/sanity.rs, src/tools/miri/tests/pass-dep/shims/gettid.rs, tests/run-make/c-link-to-rust-va-list-fn/rmake.rs, tests/rustdoc-html/doc-cfg/all-targets.rs <details> ```diff diff --cc library/std/src/env.rs index 047dfbe,fa5dfd8b76e..00000000000 --- a/library/std/src/env.rs +++ b/library/std/src/env.rs `@@@` -1098,8 -1089,14 +1098,15 `@@@` pub mod consts /// * `"horizon"` /// * `"hurd"` /// * `"illumos"` - /// * `"ios"` /// * `"l4re"` - /// * `"linux"` - /// * `"macos"` - /// * `"netbsd"` /// * `"nto"` ++<<<<<<< HEAD ++||||||| parent of dc484f364dc (Backport #2439) ++ /// * `"openbsd"` ++======= + /// * `"openbsd"` + /// * `"qnx"` ++>>>>>>> dc484f364dc (Backport #2439) /// * `"redox"` /// * `"solaris"` /// * `"solid_asp3"` diff --cc src/bootstrap/src/core/sanity.rs index f829a5b,b0190328740..00000000000 --- a/src/bootstrap/src/core/sanity.rs +++ b/src/bootstrap/src/core/sanity.rs `@@@` -47,6 -47,9 +47,14 `@@@` const STAGE0_MISSING_TARGETS: &[&str] "thumbv7em-ferrocene.facade-eabi", "thumbv7em-ferrocene.facade-eabihf", // just a dummy comment so the list doesn't get onelined ++<<<<<<< HEAD ++||||||| parent of dc484f364dc (Backport #2439) ++ "powerpc64-unknown-linux-gnuelfv2", ++======= + "powerpc64-unknown-linux-gnuelfv2", + "aarch64-unknown-qnx", + "x86_64-pc-qnx", ++>>>>>>> dc484f364dc (Backport #2439) ]; /// Minimum version threshold for libstdc++ required when using prebuilt LLVM diff --cc src/tools/miri/tests/pass-dep/shims/gettid.rs index 0dce7bd,05885ac277f..00000000000 --- a/src/tools/miri/tests/pass-dep/shims/gettid.rs +++ b/src/tools/miri/tests/pass-dep/shims/gettid.rs `@@@` -5,21 -5,27 +5,29 `@@@` #![feature(linkage)] fn gettid() -> u64 { - cfg_select! { - any(target_os = "android", target_os = "linux") => { + cfg_if::cfg_if! { + if #[cfg(any(target_os = "android", target_os = "linux"))] { gettid_linux_like() ++<<<<<<< HEAD + } else if #[cfg(target_os = "nto")] { ++||||||| parent of dc484f364dc (Backport #2439) ++ } ++ target_os = "nto" => { ++======= + } + any(target_os = "nto", target_os = "qnx") => { ++>>>>>>> dc484f364dc (Backport #2439) unsafe { libc::gettid() as u64 } - } - target_os = "openbsd" => { + } else if #[cfg(target_os = "openbsd")] { unsafe { libc::getthrid() as u64 } - } - target_os = "freebsd" => { + } else if #[cfg(target_os = "freebsd")] { unsafe { libc::pthread_getthreadid_np() as u64 } - } - target_os = "netbsd" => { + } else if #[cfg(target_os = "netbsd")] { unsafe { libc::_lwp_self() as u64 } - } - any(target_os = "solaris", target_os = "illumos") => { + } else if #[cfg(any(target_os = "solaris", target_os = "illumos"))] { // On Solaris and Illumos, the `pthread_t` is the OS TID. unsafe { libc::pthread_self() as u64 } - } - target_vendor = "apple" => { + } else if #[cfg(target_vendor = "apple")] { let mut id = 0u64; let status: libc::c_int = unsafe { libc::pthread_threadid_np(0, &mut id) }; assert_eq!(status, 0); diff --cc tests/run-make/c-link-to-rust-va-list-fn/rmake.rs index 96b8ade,457a286b6e2..00000000000 --- a/tests/run-make/c-link-to-rust-va-list-fn/rmake.rs +++ b/tests/run-make/c-link-to-rust-va-list-fn/rmake.rs `@@@` -7,6 -7,12 +7,21 `@@@` //@ ignore-android: FIXME(#142855) //@ ignore-sgx: (x86 machine code cannot be directly executed) ++<<<<<<< HEAD ++||||||| parent of dc484f364dc (Backport #2439) ++// Ferrocene addition: Various compile and link errors on these platforms: ++// missing <assert.h>, missing libraries, and breakage when not using -fPIC ++//@ ignore-ferrocene.facade ++//@ ignore-nto ++ ++======= + // Ferrocene addition: Various compile and link errors on these platforms: + // missing <assert.h>, missing libraries, and breakage when not using -fPIC + //@ ignore-ferrocene.facade + //@ ignore-nto + //@ ignore-qnx + ++>>>>>>> dc484f364dc (Backport #2439) use run_make_support::{cc, extra_c_flags, run, rustc, static_lib_name}; fn main() { diff --cc tests/rustdoc-html/doc-cfg/all-targets.rs index 5b61d61,d5a8be83bc1..00000000000 --- a/tests/rustdoc-html/doc-cfg/all-targets.rs +++ b/tests/rustdoc-html/doc-cfg/all-targets.rs `@@@` -2,10 -2,10 +2,22 `@@@` //@ has all_targets/fn.foo.html \ // '//*[`@id="main-content"]/*[@Class="item-info"]/*[@Class="stab` portability"]' \ ++<<<<<<< HEAD +// 'Available on GNU or Catalyst or Managarm C Library or MSVC or musl or Newlib or \ +// Neutrino 7.0 or Neutrino 7.1 or Neutrino 7.1 with io-sock or Neutrino 8.0 or \ +// OpenHarmony or relibc or SGX or Simulator or WASIp1 or WASIp2 or WASIp3 or \ +// uClibc or V5 or target_env=fake_env only.' ++||||||| parent of dc484f364dc (Backport #2439) ++// 'Available on target_env=fake_env or Catalyst or GNU or Managarm C Library \ ++// or MSVC or musl or Neutrino 7.0 or Neutrino 7.1 or Neutrino 7.1 with io-sock \ ++// or Neutrino 8.0 or Newlib or OpenHarmony or relibc or SGX or Simulator or \ ++// uClibc or V5 or WASIp1 or WASIp2 or WASIp3 only.' ++======= + // 'Available on target_env=fake_env or Catalyst or GNU or Managarm C Library \ + // or MSVC or musl or Newlib or OpenHarmony or QNX SDP 7.0 or QNX SDP 7.1 or \ + // QNX SDP 7.1 with io-sock or relibc or SGX or Simulator or uClibc or V5 or WASIp1 \ + // or WASIp2 or WASIp3 only.' ++>>>>>>> dc484f364dc (Backport #2439) #[doc(cfg(any( target_env = "gnu", target_env = "macabi", `@@@` -75,15 -74,16 +86,39 `@@@` pub fn bar() { //@ has all_targets/fn.baz.html \ // '//*[`@id="main-content"]/*[@Class="item-info"]/*[@Class="stab` portability"]' \ ++<<<<<<< HEAD +// 'Available on AIX and AMD HSA and Android and CUDA and Cygwin and DragonFly \ +// BSD and Emscripten and ESP-IDF and FreeBSD and Fuchsia and Haiku and HelenOS \ +// and Hermit and Horizon and GNU/Hurd and illumos and iOS and L4Re and Linux \ +// and LynxOS-178 and macOS and Managarm and Motor OS and NetBSD and bare-metal \ +// and QNX Neutrino and NuttX and OpenBSD and Play Station Portable and Play \ +// Station 1 and QuRT and Redox OS and RTEMS OS and Solaris and SOLID ASP3 and \ +// TEEOS and Trusty and tvOS and UEFI and VEXos and visionOS and Play Station \ +// Vita and VxWorks and WASI and watchOS and Windows and Xous and zero knowledge \ +// Virtual Machine and target_os=unknown and target_os=fake_os only.' ++||||||| parent of dc484f364dc (Backport #2439) ++// 'Available on target_os=fake_os and target_os=unknown and AIX and AMD HSA \ ++// and Android and bare-metal and CUDA and Cygwin and DragonFly BSD and \ ++// Emscripten and ESP-IDF and FreeBSD and Fuchsia and GNU/Hurd and Haiku \ ++// and HelenOS and Hermit and Horizon and illumos and iOS and L4Re and Linux \ ++// and LynxOS-178 and macOS and Managarm and Motor OS and NetBSD and NuttX \ ++// and OpenBSD and Play Station 1 and Play Station Portable and Play Station Vita \ ++// and QNX Neutrino and QuRT and Redox OS and RTEMS OS and Solaris and \ ++// SOLID ASP3 and TEEOS and Trusty and tvOS and UEFI and VEXos and visionOS \ ++// and VxWorks and WASI and watchOS and Windows and Xous and zero knowledge \ ++// Virtual Machine only.' ++======= + // 'Available on target_os=fake_os and target_os=unknown and AIX and AMD HSA \ + // and Android and bare-metal and CUDA and Cygwin and DragonFly BSD and \ + // Emscripten and ESP-IDF and FreeBSD and Fuchsia and GNU/Hurd and Haiku \ + // and HelenOS and Hermit and Horizon and illumos and iOS and L4Re and Linux \ + // and LynxOS-178 and macOS and Managarm and Motor OS and NetBSD and NuttX \ + // and OpenBSD and Play Station 1 and Play Station Portable and Play Station Vita \ + // and QNX SDP 7.x and QNX SDP 8.0+ and QuRT and Redox OS and RTEMS OS and Solaris and \ + // SOLID ASP3 and TEEOS and Trusty and tvOS and UEFI and VEXos and visionOS \ + // and VxWorks and WASI and watchOS and Windows and Xous and zero knowledge \ + // Virtual Machine only.' ++>>>>>>> dc484f364dc (Backport #2439) #[doc(cfg(all( target_os = "aix", target_os = "amdhsa", * Unmerged path tests/rustdoc-html/doc-cfg/sort.rs ``` </details> #2394 was not marked as backport until just now; i needed it or the QNX rename wouldn't backport cleanly. Co-authored-by: Urhengulas <[email protected]> Co-authored-by: Jorge Aparicio <[email protected]> Co-authored-by: Jynn Nelson <[email protected]> Co-authored-by: Tshepang Mbambo <[email protected]> Co-authored-by: Ana Hobden <[email protected]> Co-authored-by: jyn <[email protected]>
2473: [1.97] 26.08 backports r=jyn514 a=jyn514 i fixed the following conflicts which remained after running mergiraf: - #2460: ferrocene/doc/qualification-report/src/index.rst (1.98 had a powerpc target that 1.97 didn't) - #2439: library/std/src/env.rs, src/bootstrap/src/core/sanity.rs, src/tools/miri/tests/pass-dep/shims/gettid.rs, tests/run-make/c-link-to-rust-va-list-fn/rmake.rs, tests/rustdoc-html/doc-cfg/all-targets.rs <details> ```diff diff --cc library/std/src/env.rs index 047dfbe,fa5dfd8b76e..00000000000 --- a/library/std/src/env.rs +++ b/library/std/src/env.rs `@@@` -1098,8 -1089,14 +1098,15 `@@@` pub mod consts /// * `"horizon"` /// * `"hurd"` /// * `"illumos"` - /// * `"ios"` /// * `"l4re"` - /// * `"linux"` - /// * `"macos"` - /// * `"netbsd"` /// * `"nto"` ++<<<<<<< HEAD ++||||||| parent of dc484f364dc (Backport #2439) ++ /// * `"openbsd"` ++======= + /// * `"openbsd"` + /// * `"qnx"` ++>>>>>>> dc484f364dc (Backport #2439) /// * `"redox"` /// * `"solaris"` /// * `"solid_asp3"` diff --cc src/bootstrap/src/core/sanity.rs index f829a5b,b0190328740..00000000000 --- a/src/bootstrap/src/core/sanity.rs +++ b/src/bootstrap/src/core/sanity.rs `@@@` -47,6 -47,9 +47,14 `@@@` const STAGE0_MISSING_TARGETS: &[&str] "thumbv7em-ferrocene.facade-eabi", "thumbv7em-ferrocene.facade-eabihf", // just a dummy comment so the list doesn't get onelined ++<<<<<<< HEAD ++||||||| parent of dc484f364dc (Backport #2439) ++ "powerpc64-unknown-linux-gnuelfv2", ++======= + "powerpc64-unknown-linux-gnuelfv2", + "aarch64-unknown-qnx", + "x86_64-pc-qnx", ++>>>>>>> dc484f364dc (Backport #2439) ]; /// Minimum version threshold for libstdc++ required when using prebuilt LLVM diff --cc src/tools/miri/tests/pass-dep/shims/gettid.rs index 0dce7bd,05885ac277f..00000000000 --- a/src/tools/miri/tests/pass-dep/shims/gettid.rs +++ b/src/tools/miri/tests/pass-dep/shims/gettid.rs `@@@` -5,21 -5,27 +5,29 `@@@` #![feature(linkage)] fn gettid() -> u64 { - cfg_select! { - any(target_os = "android", target_os = "linux") => { + cfg_if::cfg_if! { + if #[cfg(any(target_os = "android", target_os = "linux"))] { gettid_linux_like() ++<<<<<<< HEAD + } else if #[cfg(target_os = "nto")] { ++||||||| parent of dc484f364dc (Backport #2439) ++ } ++ target_os = "nto" => { ++======= + } + any(target_os = "nto", target_os = "qnx") => { ++>>>>>>> dc484f364dc (Backport #2439) unsafe { libc::gettid() as u64 } - } - target_os = "openbsd" => { + } else if #[cfg(target_os = "openbsd")] { unsafe { libc::getthrid() as u64 } - } - target_os = "freebsd" => { + } else if #[cfg(target_os = "freebsd")] { unsafe { libc::pthread_getthreadid_np() as u64 } - } - target_os = "netbsd" => { + } else if #[cfg(target_os = "netbsd")] { unsafe { libc::_lwp_self() as u64 } - } - any(target_os = "solaris", target_os = "illumos") => { + } else if #[cfg(any(target_os = "solaris", target_os = "illumos"))] { // On Solaris and Illumos, the `pthread_t` is the OS TID. unsafe { libc::pthread_self() as u64 } - } - target_vendor = "apple" => { + } else if #[cfg(target_vendor = "apple")] { let mut id = 0u64; let status: libc::c_int = unsafe { libc::pthread_threadid_np(0, &mut id) }; assert_eq!(status, 0); diff --cc tests/run-make/c-link-to-rust-va-list-fn/rmake.rs index 96b8ade,457a286b6e2..00000000000 --- a/tests/run-make/c-link-to-rust-va-list-fn/rmake.rs +++ b/tests/run-make/c-link-to-rust-va-list-fn/rmake.rs `@@@` -7,6 -7,12 +7,21 `@@@` //@ ignore-android: FIXME(#142855) //@ ignore-sgx: (x86 machine code cannot be directly executed) ++<<<<<<< HEAD ++||||||| parent of dc484f364dc (Backport #2439) ++// Ferrocene addition: Various compile and link errors on these platforms: ++// missing <assert.h>, missing libraries, and breakage when not using -fPIC ++//@ ignore-ferrocene.facade ++//@ ignore-nto ++ ++======= + // Ferrocene addition: Various compile and link errors on these platforms: + // missing <assert.h>, missing libraries, and breakage when not using -fPIC + //@ ignore-ferrocene.facade + //@ ignore-nto + //@ ignore-qnx + ++>>>>>>> dc484f364dc (Backport #2439) use run_make_support::{cc, extra_c_flags, run, rustc, static_lib_name}; fn main() { diff --cc tests/rustdoc-html/doc-cfg/all-targets.rs index 5b61d61,d5a8be83bc1..00000000000 --- a/tests/rustdoc-html/doc-cfg/all-targets.rs +++ b/tests/rustdoc-html/doc-cfg/all-targets.rs `@@@` -2,10 -2,10 +2,22 `@@@` //@ has all_targets/fn.foo.html \ // '//*[`@id="main-content"]/*[@Class="item-info"]/*[@Class="stab` portability"]' \ ++<<<<<<< HEAD +// 'Available on GNU or Catalyst or Managarm C Library or MSVC or musl or Newlib or \ +// Neutrino 7.0 or Neutrino 7.1 or Neutrino 7.1 with io-sock or Neutrino 8.0 or \ +// OpenHarmony or relibc or SGX or Simulator or WASIp1 or WASIp2 or WASIp3 or \ +// uClibc or V5 or target_env=fake_env only.' ++||||||| parent of dc484f364dc (Backport #2439) ++// 'Available on target_env=fake_env or Catalyst or GNU or Managarm C Library \ ++// or MSVC or musl or Neutrino 7.0 or Neutrino 7.1 or Neutrino 7.1 with io-sock \ ++// or Neutrino 8.0 or Newlib or OpenHarmony or relibc or SGX or Simulator or \ ++// uClibc or V5 or WASIp1 or WASIp2 or WASIp3 only.' ++======= + // 'Available on target_env=fake_env or Catalyst or GNU or Managarm C Library \ + // or MSVC or musl or Newlib or OpenHarmony or QNX SDP 7.0 or QNX SDP 7.1 or \ + // QNX SDP 7.1 with io-sock or relibc or SGX or Simulator or uClibc or V5 or WASIp1 \ + // or WASIp2 or WASIp3 only.' ++>>>>>>> dc484f364dc (Backport #2439) #[doc(cfg(any( target_env = "gnu", target_env = "macabi", `@@@` -75,15 -74,16 +86,39 `@@@` pub fn bar() { //@ has all_targets/fn.baz.html \ // '//*[`@id="main-content"]/*[@Class="item-info"]/*[@Class="stab` portability"]' \ ++<<<<<<< HEAD +// 'Available on AIX and AMD HSA and Android and CUDA and Cygwin and DragonFly \ +// BSD and Emscripten and ESP-IDF and FreeBSD and Fuchsia and Haiku and HelenOS \ +// and Hermit and Horizon and GNU/Hurd and illumos and iOS and L4Re and Linux \ +// and LynxOS-178 and macOS and Managarm and Motor OS and NetBSD and bare-metal \ +// and QNX Neutrino and NuttX and OpenBSD and Play Station Portable and Play \ +// Station 1 and QuRT and Redox OS and RTEMS OS and Solaris and SOLID ASP3 and \ +// TEEOS and Trusty and tvOS and UEFI and VEXos and visionOS and Play Station \ +// Vita and VxWorks and WASI and watchOS and Windows and Xous and zero knowledge \ +// Virtual Machine and target_os=unknown and target_os=fake_os only.' ++||||||| parent of dc484f364dc (Backport #2439) ++// 'Available on target_os=fake_os and target_os=unknown and AIX and AMD HSA \ ++// and Android and bare-metal and CUDA and Cygwin and DragonFly BSD and \ ++// Emscripten and ESP-IDF and FreeBSD and Fuchsia and GNU/Hurd and Haiku \ ++// and HelenOS and Hermit and Horizon and illumos and iOS and L4Re and Linux \ ++// and LynxOS-178 and macOS and Managarm and Motor OS and NetBSD and NuttX \ ++// and OpenBSD and Play Station 1 and Play Station Portable and Play Station Vita \ ++// and QNX Neutrino and QuRT and Redox OS and RTEMS OS and Solaris and \ ++// SOLID ASP3 and TEEOS and Trusty and tvOS and UEFI and VEXos and visionOS \ ++// and VxWorks and WASI and watchOS and Windows and Xous and zero knowledge \ ++// Virtual Machine only.' ++======= + // 'Available on target_os=fake_os and target_os=unknown and AIX and AMD HSA \ + // and Android and bare-metal and CUDA and Cygwin and DragonFly BSD and \ + // Emscripten and ESP-IDF and FreeBSD and Fuchsia and GNU/Hurd and Haiku \ + // and HelenOS and Hermit and Horizon and illumos and iOS and L4Re and Linux \ + // and LynxOS-178 and macOS and Managarm and Motor OS and NetBSD and NuttX \ + // and OpenBSD and Play Station 1 and Play Station Portable and Play Station Vita \ + // and QNX SDP 7.x and QNX SDP 8.0+ and QuRT and Redox OS and RTEMS OS and Solaris and \ + // SOLID ASP3 and TEEOS and Trusty and tvOS and UEFI and VEXos and visionOS \ + // and VxWorks and WASI and watchOS and Windows and Xous and zero knowledge \ + // Virtual Machine only.' ++>>>>>>> dc484f364dc (Backport #2439) #[doc(cfg(all( target_os = "aix", target_os = "amdhsa", * Unmerged path tests/rustdoc-html/doc-cfg/sort.rs ``` </details> #2394 was not marked as backport until just now; i needed it or the QNX rename wouldn't backport cleanly. Co-authored-by: Urhengulas <[email protected]> Co-authored-by: Jorge Aparicio <[email protected]> Co-authored-by: Jynn Nelson <[email protected]> Co-authored-by: Tshepang Mbambo <[email protected]> Co-authored-by: Ana Hobden <[email protected]> Co-authored-by: jyn <[email protected]>
NOTE depends and includes PR #2454
This is a rebased version of #2418 now that rust-lang/rust#158449 has been merged. the first six commits in this PR are a cherry picks the commits in rust-lang/rust#158449. the rest of commits are a cherry pick of #2418. note that commit fix rustdoc-html tests has been dropped because it became unnecessary with upstream commit rust-lang/rust@4eec7f5
aarch64-unknown-nto-qnx800becomes simplyaarch64-unknown-qnxx86_64-pc-nto-qnx800becomes simplyx86_64-pc-qnxnto_qnxmodules are renamed toqnx_sdpto match the aboveThe new target names are more consistent with those used by the QNX SDP 8.0 toolchain, and reflect a level on ongoing API stability similar to that for macOS and Linux (which simply have minimum supported versions record for their targets). The new target names also match what the copy of
clangshipped in the QNX Desktop Image (part of QNX SDP 8.0) self reports as (that is,clangrunning self-hosted on QNX).