Skip to content

Commit a8b46e7

Browse files
authored
Unrolled build for rust-lang#128431
Rollup merge of rust-lang#128431 - biabbas:master, r=Urgau Add myself as VxWorks target maintainer for reference Hi, would be working on VxWorks regularly, thus adding myself as a target maintainer. r? ```@workingjubilee```
2 parents 71b2116 + 62d4998 commit a8b46e7

File tree

3 files changed

+58
-6
lines changed

3 files changed

+58
-6
lines changed

src/doc/rustc/src/SUMMARY.md

+1
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,7 @@
7474
- [*-unknown-openbsd](platform-support/openbsd.md)
7575
- [*-unknown-redox](platform-support/redox.md)
7676
- [\*-unknown-uefi](platform-support/unknown-uefi.md)
77+
- [\*-wrs-vxworks](platform-support/vxworks.md)
7778
- [wasm32-wasip1](platform-support/wasm32-wasip1.md)
7879
- [wasm32-wasip1-threads](platform-support/wasm32-wasip1-threads.md)
7980
- [wasm32-wasip2](platform-support/wasm32-wasip2.md)

src/doc/rustc/src/platform-support.md

+6-6
Original file line numberDiff line numberDiff line change
@@ -263,7 +263,7 @@ target | std | host | notes
263263
[`aarch64-unknown-openbsd`](platform-support/openbsd.md) | ✓ | ✓ | ARM64 OpenBSD
264264
[`aarch64-unknown-redox`](platform-support/redox.md) | ✓ | | ARM64 Redox OS
265265
`aarch64-uwp-windows-msvc` | ✓ | |
266-
`aarch64-wrs-vxworks` | ? | |
266+
[`aarch64-wrs-vxworks`](platform-support/vxworks.md) | | | ARM64 VxWorks OS
267267
`aarch64_be-unknown-linux-gnu_ilp32` | ✓ | ✓ | ARM64 Linux (big-endian, ILP32 ABI)
268268
`aarch64_be-unknown-linux-gnu` | ✓ | ✓ | ARM64 Linux (big-endian)
269269
[`aarch64_be-unknown-netbsd`](platform-support/netbsd.md) | ✓ | ✓ | ARM64 NetBSD (big-endian)
@@ -281,7 +281,7 @@ target | std | host | notes
281281
[`armv7-unknown-linux-uclibceabihf`](platform-support/armv7-unknown-linux-uclibceabihf.md) | ✓ | ? | Armv7-A Linux with uClibc, hardfloat
282282
`armv7-unknown-freebsd` | ✓ | ✓ | Armv7-A FreeBSD
283283
[`armv7-unknown-netbsd-eabihf`](platform-support/netbsd.md) | ✓ | ✓ | Armv7-A NetBSD w/hard-float
284-
`armv7-wrs-vxworks-eabihf` | ? | | Armv7-A for VxWorks
284+
[`armv7-wrs-vxworks-eabihf`](platform-support/vxworks.md) | ? | | Armv7-A for VxWorks
285285
[`armv7a-kmc-solid_asp3-eabi`](platform-support/kmc-solid.md) | ✓ | | ARM SOLID with TOPPERS/ASP3
286286
[`armv7a-kmc-solid_asp3-eabihf`](platform-support/kmc-solid.md) | ✓ | | ARM SOLID with TOPPERS/ASP3, hardfloat
287287
[`armv7a-none-eabihf`](platform-support/arm-none-eabi.md) | * | | Bare Armv7-A, hardfloat
@@ -307,7 +307,7 @@ target | std | host | notes
307307
`i686-uwp-windows-gnu` | ✓ | | [^x86_32-floats-return-ABI]
308308
`i686-uwp-windows-msvc` | ✓ | | [^x86_32-floats-return-ABI]
309309
[`i686-win7-windows-msvc`](platform-support/win7-windows-msvc.md) | ✓ | | 32-bit Windows 7 support [^x86_32-floats-return-ABI]
310-
`i686-wrs-vxworks` | ? | | [^x86_32-floats-return-ABI]
310+
[`i686-wrs-vxworks`](platform-support/vxworks.md) | ? | | [^x86_32-floats-return-ABI]
311311
[`m68k-unknown-linux-gnu`](platform-support/m68k-unknown-linux-gnu.md) | ? | | Motorola 680x0 Linux
312312
`mips-unknown-linux-gnu` | ✓ | ✓ | MIPS Linux (kernel 4.4, glibc 2.23)
313313
`mips-unknown-linux-musl` | ✓ | | MIPS Linux with musl 1.2.3
@@ -333,8 +333,8 @@ target | std | host | notes
333333
`powerpc-unknown-linux-musl` | ? | | PowerPC Linux with musl 1.2.3
334334
[`powerpc-unknown-netbsd`](platform-support/netbsd.md) | ✓ | ✓ | NetBSD 32-bit powerpc systems
335335
[`powerpc-unknown-openbsd`](platform-support/powerpc-unknown-openbsd.md) | * | |
336-
`powerpc-wrs-vxworks-spe` | ? | |
337-
`powerpc-wrs-vxworks` | ? | |
336+
[`powerpc-wrs-vxworks-spe`](platform-support/vxworks.md) | ? | |
337+
[`powerpc-wrs-vxworks`](platform-support/vxworks.md) | ? | |
338338
`powerpc64-unknown-freebsd` | ✓ | ✓ | PPC64 FreeBSD (ELFv1 and ELFv2)
339339
`powerpc64le-unknown-freebsd` | | | PPC64LE FreeBSD
340340
`powerpc-unknown-freebsd` | | | PowerPC FreeBSD
@@ -383,7 +383,7 @@ target | std | host | notes
383383
`x86_64-uwp-windows-gnu` | ✓ | |
384384
`x86_64-uwp-windows-msvc` | ✓ | |
385385
[`x86_64-win7-windows-msvc`](platform-support/win7-windows-msvc.md) | ✓ | | 64-bit Windows 7 support
386-
`x86_64-wrs-vxworks` | ? | |
386+
[`x86_64-wrs-vxworks`](platform-support/vxworks.md) | ? | |
387387
[`x86_64h-apple-darwin`](platform-support/x86_64h-apple-darwin.md) | ✓ | ✓ | macOS with late-gen Intel (at least Haswell)
388388
[`x86_64-unknown-linux-none`](platform-support/x86_64-unknown-linux-none.md) | * | | 64-bit Linux with no libc
389389
[`xtensa-esp32-none-elf`](platform-support/xtensa.md) | * | | Xtensa ESP32
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
# `*-wrs-vxworks`
2+
3+
**Tier: 3**
4+
5+
Targets for the VxWorks operating
6+
system.
7+
8+
Target triplets available:
9+
10+
- `x86_64-wrs-vxworks`
11+
- `aarch64-wrs-vxworks`
12+
- `i686-wrs-vxworks`
13+
- `armv7-wrs-vxworks-eabihf`
14+
- `powerpc-wrs-vxworks`
15+
- `powerpc-wrs-vxworks-spe`
16+
17+
## Target maintainers
18+
19+
- B I Mohammed Abbas ([@biabbas](https://github.com/biabbas))
20+
21+
## Requirements
22+
23+
Rust for each target can be cross-compiled with its specific target vsb configuration. Std support is added but not yet fully tested.
24+
25+
## Building the target
26+
27+
You can build Rust with support for the targets by adding it to the `target` list in `config.toml`. In addition the workbench and wr-cc have to configured and activated.
28+
29+
```toml
30+
[build]
31+
build-stage = 1
32+
target = [
33+
"<HOST_TARGET>",
34+
"x86_64-wrs-vxworks",
35+
"aarch64-wrs-vxworks",
36+
"i686-wrs-vxworks",
37+
"armv7-wrs-vxworks-eabihf",
38+
"powerpc-wrs-vxworks",
39+
"powerpc-wrs-vxworks-spe",
40+
]
41+
```
42+
43+
## Building Rust programs
44+
45+
Rust does not yet ship pre-compiled artifacts for VxWorks.
46+
47+
The easiest way to build and test programs for VxWorks is to use the shipped rustc and cargo in VxWorks workbench, following the official windriver guidelines.
48+
49+
## Cross-compilation toolchains and C code
50+
51+
The target supports C code. Pre-compiled C toolchains can be found in provided VxWorks workbench.

0 commit comments

Comments
 (0)