mirror of
https://github.com/rust-lang/rust.git
synced 2025-05-14 02:49:40 +00:00
Rollup merge of #92098 - semarie:openbsd-platform, r=pietroalbini
add OpenBSD platform-support page It mentions x86_64, i686, aarch64 and sparc64 which are actively maintained and used on OpenBSD (binaries provided by standard package distribution on OpenBSD). I volontary kept `powerpc-unknown-openbsd` unmentioned as it was added by `@Yn0ga` in #82733, and I am unaware if it is functional or not (I doubt as I added libc support only few days ago, and std `c_char` signess was wrong). `@Yn0ga` maybe you comment on your `powerpc-unknown-openbsd` usage ?
This commit is contained in:
commit
75eb96301d
@ -17,6 +17,7 @@
|
||||
- [aarch64-apple-ios-sim](platform-support/aarch64-apple-ios-sim.md)
|
||||
- [armv7-unknown-linux-uclibceabihf](platform-support/armv7-unknown-linux-uclibceabihf.md)
|
||||
- [\*-kmc-solid_\*](platform-support/kmc-solid.md)
|
||||
- [*-unknown-openbsd](platform-support/openbsd.md)
|
||||
- [x86_64-unknown-none](platform-support/x86_64-unknown-none.md)
|
||||
- [wasm64-unknown-unknown](platform-support/wasm64-unknown-unknown.md)
|
||||
- [Target Tier Policy](target-tier-policy.md)
|
||||
|
@ -208,7 +208,7 @@ target | std | host | notes
|
||||
`aarch64-unknown-uefi` | * | | ARM64 UEFI
|
||||
`aarch64-unknown-linux-gnu_ilp32` | ✓ | ✓ | ARM64 Linux (ILP32 ABI)
|
||||
`aarch64-unknown-netbsd` | ✓ | ✓ |
|
||||
`aarch64-unknown-openbsd` | ✓ | ✓ | ARM64 OpenBSD
|
||||
[`aarch64-unknown-openbsd`](platform-support/openbsd.md) | ✓ | ✓ | ARM64 OpenBSD
|
||||
`aarch64-unknown-redox` | ? | | ARM64 Redox OS
|
||||
`aarch64-uwp-windows-msvc` | ? | |
|
||||
`aarch64-wrs-vxworks` | ? | |
|
||||
@ -237,7 +237,7 @@ target | std | host | notes
|
||||
`i686-pc-windows-msvc` | ✓ | | 32-bit Windows XP support
|
||||
`i686-unknown-haiku` | ✓ | ✓ | 32-bit Haiku
|
||||
`i686-unknown-netbsd` | ✓ | ✓ | NetBSD/i386 with SSE2
|
||||
`i686-unknown-openbsd` | ✓ | ✓ | 32-bit OpenBSD
|
||||
[`i686-unknown-openbsd`](platform-support/openbsd.md) | ✓ | ✓ | 32-bit OpenBSD
|
||||
`i686-unknown-uefi` | * | | 32-bit UEFI
|
||||
`i686-uwp-windows-gnu` | ? | |
|
||||
`i686-uwp-windows-msvc` | ? | |
|
||||
@ -272,7 +272,7 @@ target | std | host | notes
|
||||
`s390x-unknown-linux-musl` | | | S390x Linux (kernel 2.6.32, MUSL)
|
||||
`sparc-unknown-linux-gnu` | ✓ | | 32-bit SPARC Linux
|
||||
`sparc64-unknown-netbsd` | ✓ | ✓ | NetBSD/sparc64
|
||||
`sparc64-unknown-openbsd` | ? | |
|
||||
[`sparc64-unknown-openbsd`](platform-support/openbsd.md) | ✓ | ✓ | OpenBSD/sparc64
|
||||
`thumbv4t-none-eabi` | * | | ARMv4T T32
|
||||
`thumbv7a-pc-windows-msvc` | ? | |
|
||||
`thumbv7a-uwp-windows-msvc` | ✓ | |
|
||||
@ -289,7 +289,7 @@ target | std | host | notes
|
||||
[`x86_64-unknown-none`](platform-support/x86_64-unknown-none.md) | * | | Freestanding/bare-metal x86_64, softfloat
|
||||
`x86_64-unknown-none-hermitkernel` | ? | | HermitCore kernel
|
||||
`x86_64-unknown-none-linuxkernel` | * | | Linux kernel modules
|
||||
`x86_64-unknown-openbsd` | ✓ | ✓ | 64-bit OpenBSD
|
||||
[`x86_64-unknown-openbsd`](platform-support/openbsd.md) | ✓ | ✓ | 64-bit OpenBSD
|
||||
`x86_64-unknown-uefi` | * | | 64-bit UEFI
|
||||
`x86_64-uwp-windows-gnu` | ✓ | |
|
||||
`x86_64-uwp-windows-msvc` | ✓ | |
|
||||
|
56
src/doc/rustc/src/platform-support/openbsd.md
Normal file
56
src/doc/rustc/src/platform-support/openbsd.md
Normal file
@ -0,0 +1,56 @@
|
||||
# \*-unknown-openbsd
|
||||
|
||||
**Tier: 3**
|
||||
|
||||
[OpenBSD] multi-platform 4.4BSD-based UNIX-like operating system.
|
||||
|
||||
[OpenBSD]: https://www.openbsd.org/
|
||||
|
||||
The target names follow this format: `$ARCH-unknown-openbsd`, where `$ARCH` specifies the target processor architecture. The following targets are currently defined:
|
||||
|
||||
| Target name | C++ library | OpenBSD Platform |
|
||||
|--------------------------------|-------------|------------------|
|
||||
| `aarch64-unknown-openbsd` | libc++ | [64-bit ARM systems](https://www.openbsd.org/arm64.html) |
|
||||
| `i686-unknown-openbsd` | libc++ | [Standard PC and clones based on the Intel i386 architecture and compatible processors](https://www.openbsd.org/i386.html) |
|
||||
| `sparc64-unknown-openbsd` | estdc++ | [Sun UltraSPARC and Fujitsu SPARC64 systems](https://www.openbsd.org/sparc64.html) |
|
||||
| `x86_64-unknown-openbsd` | libc++ | [AMD64-based systems](https://www.openbsd.org/amd64.html) |
|
||||
|
||||
Note that all OS versions are *major* even if using X.Y notation (`6.8` and `6.9` are different major versions) and could be binary incompatibles (with breaking changes).
|
||||
|
||||
|
||||
## Designated Developers
|
||||
|
||||
- [@semarie](https://github.com/semarie), `semarie@openbsd.org`
|
||||
- [lang/rust](https://cvsweb.openbsd.org/cgi-bin/cvsweb/ports/lang/rust/Makefile?rev=HEAD&content-type=text/x-cvsweb-markup) maintainer (see MAINTAINER variable)
|
||||
|
||||
Fallback to ports@openbsd.org, OpenBSD third parties public mailing-list (with openbsd developers readers)
|
||||
|
||||
|
||||
## Requirements
|
||||
|
||||
These targets are natively compiled and could be cross-compiled.
|
||||
C compiler toolchain is required for the purpose of building Rust and functional binaries.
|
||||
|
||||
## Building
|
||||
|
||||
The target can be built by enabling it for a `rustc` build.
|
||||
|
||||
```toml
|
||||
[build]
|
||||
target = ["$ARCH-unknown-openbsd"]
|
||||
|
||||
[target.$ARCH-unknown-openbsd]
|
||||
cc = "$ARCH-openbsd-cc"
|
||||
```
|
||||
|
||||
## Cross-compilation
|
||||
|
||||
These targets can be cross-compiled, but LLVM might not build out-of-box.
|
||||
|
||||
## Testing
|
||||
|
||||
The Rust testsuite could be run natively.
|
||||
|
||||
## Building Rust programs
|
||||
|
||||
Rust does not yet ship pre-compiled artifacts for these targets.
|
Loading…
Reference in New Issue
Block a user