@@ -22,11 +22,15 @@ Currently, the following QNX Neutrino versions and compilation targets are suppo
2222
2323| QNX Neutrino Version | Target Architecture | Full support | ` no_std ` support |
2424| ----------------------| ---------------------| :------------:| :----------------:|
25- | 7.1 | AArch64 | ✓ | ✓ |
25+ | 7.1 with io-pkt | AArch64 | ✓ | ✓ |
26+ | 7.1 with io-sock | AArch64 | ✓ | ✓ |
2627| 7.1 | x86_64 | ✓ | ✓ |
2728| 7.0 | AArch64 | ? | ✓ |
2829| 7.0 | x86 | | ✓ |
2930
31+ On QNX 7.0 and 7.1, ` io-pkt ` is used as network stack by default. QNX 7.1 includes
32+ the optional network stack ` io-sock ` .
33+
3034Adding other architectures that are supported by QNX Neutrino is possible.
3135
3236In the table above, 'full support' indicates support for building Rust applications with the full standard library.
@@ -107,7 +111,8 @@ There are no further known requirements.
107111For conditional compilation, following QNX Neutrino specific attributes are defined:
108112
109113- ` target_os ` = ` "nto" `
110- - ` target_env ` = ` "nto71" ` (for QNX Neutrino 7.1)
114+ - ` target_env ` = ` "nto71" ` (for QNX Neutrino 7.1 with "classic" network stack "io_pkt")
115+ - ` target_env ` = ` "nto71_iosock" ` (for QNX Neutrino 7.1 with network stack "io_sock")
111116- ` target_env ` = ` "nto70" ` (for QNX Neutrino 7.0)
112117
113118## Building the target
@@ -134,14 +139,18 @@ export build_env='
134139 CFLAGS_aarch64-unknown-nto-qnx710=-Vgcc_ntoaarch64le_cxx
135140 CXX_aarch64-unknown-nto-qnx710=qcc
136141 AR_aarch64_unknown_nto_qnx710=ntoaarch64-ar
142+ CC_aarch64-unknown-nto-qnx710_iosock=qcc
143+ CFLAGS_aarch64-unknown-nto-qnx710_iosock=-Vgcc_ntoaarch64le_cxx
144+ CXX_aarch64-unknown-nto-qnx710_iosock=qcc
145+ AR_aarch64_unknown_nto_qnx710_iosock=ntoaarch64-ar
137146 CC_x86_64-pc-nto-qnx710=qcc
138147 CFLAGS_x86_64-pc-nto-qnx710=-Vgcc_ntox86_64_cxx
139148 CXX_x86_64-pc-nto-qnx710=qcc
140149 AR_x86_64_pc_nto_qnx710=ntox86_64-ar'
141150
142151env $build_env \
143152 ./x.py build \
144- --target aarch64-unknown-nto-qnx710,x86_64-pc-nto-qnx710,x86_64-unknown-linux-gnu \
153+ --target aarch64-unknown-nto-qnx710_iosock,aarch64-unknown-nto- qnx710,x86_64-pc-nto-qnx710,x86_64-unknown-linux-gnu \
145154 rustc library/core library/alloc library/std
146155```
147156
0 commit comments