Skip to content

Commit 4b98f99

Browse files
committed
ci update freebsd version proposal, freebsd 12 being eol.
raising to the lowest still active supported freebsd version. From 13.1 (already eol too), freebsd introduces a cpu affinity layer with linux. It also introduces a api compatible copy_file_range which can be used like its linux's counterpart. The former is essential to build rust-lang#120589, therefore breaks the backward compatibility with the previous FreeBSD releases.
1 parent a526d7c commit 4b98f99

File tree

4 files changed

+19
-19
lines changed

4 files changed

+19
-19
lines changed

src/ci/docker/host-x86_64/dist-various-2/Dockerfile

+3-3
Original file line numberDiff line numberDiff line change
@@ -55,9 +55,9 @@ ENV \
5555
CFLAGS_x86_64_fortanix_unknown_sgx="-D__ELF__ -isystem/usr/include/x86_64-linux-gnu -mlvi-hardening -mllvm -x86-experimental-lvi-inline-asm-hardening" \
5656
CXX_x86_64_fortanix_unknown_sgx=clang++-11 \
5757
CXXFLAGS_x86_64_fortanix_unknown_sgx="-D__ELF__ -isystem/usr/include/x86_64-linux-gnu -mlvi-hardening -mllvm -x86-experimental-lvi-inline-asm-hardening" \
58-
AR_i686_unknown_freebsd=i686-unknown-freebsd12-ar \
59-
CC_i686_unknown_freebsd=i686-unknown-freebsd12-clang \
60-
CXX_i686_unknown_freebsd=i686-unknown-freebsd12-clang++ \
58+
AR_i686_unknown_freebsd=i686-unknown-freebsd13-ar \
59+
CC_i686_unknown_freebsd=i686-unknown-freebsd13-clang \
60+
CXX_i686_unknown_freebsd=i686-unknown-freebsd13-clang++ \
6161
CC_aarch64_unknown_uefi=clang-11 \
6262
CXX_aarch64_unknown_uefi=clang++-11 \
6363
CC_i686_unknown_uefi=clang-11 \

src/ci/docker/host-x86_64/dist-x86_64-freebsd/Dockerfile

+3-3
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,9 @@ COPY scripts/cmake.sh /scripts/
2929
RUN /scripts/cmake.sh
3030

3131
ENV \
32-
AR_x86_64_unknown_freebsd=x86_64-unknown-freebsd12-ar \
33-
CC_x86_64_unknown_freebsd=x86_64-unknown-freebsd12-clang \
34-
CXX_x86_64_unknown_freebsd=x86_64-unknown-freebsd12-clang++
32+
AR_x86_64_unknown_freebsd=x86_64-unknown-freebsd13-ar \
33+
CC_x86_64_unknown_freebsd=x86_64-unknown-freebsd13-clang \
34+
CXX_x86_64_unknown_freebsd=x86_64-unknown-freebsd13-clang++
3535

3636
ENV HOSTS=x86_64-unknown-freebsd
3737

src/ci/docker/scripts/freebsd-toolchain.sh

+4-4
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ set -eux
55

66
arch=$1
77
binutils_version=2.40
8-
freebsd_version=12.3
9-
triple=$arch-unknown-freebsd12
8+
freebsd_version=13.2
9+
triple=$arch-unknown-freebsd13
1010
sysroot=/usr/local/$triple
1111

1212
hide_output() {
@@ -59,7 +59,7 @@ done
5959

6060
# Originally downloaded from:
6161
# URL=https://download.freebsd.org/ftp/releases/${freebsd_arch}/${freebsd_version}-RELEASE/base.txz
62-
URL=https://ci-mirrors.rust-lang.org/rustc/2022-05-06-freebsd-${freebsd_version}-${freebsd_arch}-base.txz
62+
URL=https://ci-mirrors.rust-lang.org/rustc/2024-02-18-freebsd-${freebsd_version}-${freebsd_arch}-base.txz
6363
curl "$URL" | tar xJf - -C "$sysroot" --wildcards "${files_to_extract[@]}"
6464

6565
# Clang can do cross-builds out of the box, if we give it the right
@@ -68,7 +68,7 @@ curl "$URL" | tar xJf - -C "$sysroot" --wildcards "${files_to_extract[@]}"
6868
# there might be other problems.)
6969
#
7070
# The --target option is last because the cross-build of LLVM uses
71-
# --target without an OS version ("-freebsd" vs. "-freebsd12"). This
71+
# --target without an OS version ("-freebsd" vs. "-freebsd13"). This
7272
# makes Clang default to libstdc++ (which no longer exists), and also
7373
# controls other features, like GNU-style symbol table hashing and
7474
# anything predicated on the version number in the __FreeBSD__

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

+9-9
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ target | notes
9999
`powerpc64le-unknown-linux-gnu` | PPC64LE Linux (kernel 3.10, glibc 2.17)
100100
`riscv64gc-unknown-linux-gnu` | RISC-V Linux (kernel 4.20, glibc 2.29)
101101
`s390x-unknown-linux-gnu` | S390x Linux (kernel 3.2, glibc 2.17)
102-
`x86_64-unknown-freebsd` | 64-bit FreeBSD
102+
`x86_64-unknown-freebsd` | 64-bit FreeBSD (version 13.2)
103103
`x86_64-unknown-illumos` | illumos
104104
`x86_64-unknown-linux-musl` | 64-bit Linux with musl 1.2.3
105105
[`x86_64-unknown-netbsd`](platform-support/netbsd.md) | NetBSD/amd64
@@ -165,7 +165,7 @@ target | std | notes
165165
`i586-unknown-linux-musl` | ✓ | 32-bit Linux w/o SSE, musl 1.2.3 [^x86_32-floats-x87]
166166
[`i686-linux-android`](platform-support/android.md) | ✓ | 32-bit x86 Android [^x86_32-floats-return-ABI]
167167
[`i686-pc-windows-gnullvm`](platform-support/pc-windows-gnullvm.md) | ✓ | 32-bit x86 MinGW (Windows 10+), LLVM ABI [^x86_32-floats-return-ABI]
168-
`i686-unknown-freebsd` | ✓ | 32-bit FreeBSD [^x86_32-floats-return-ABI]
168+
`i686-unknown-freebsd` | ✓ | 32-bit FreeBSD (version 13.2) [^x86_32-floats-return-ABI]
169169
`i686-unknown-linux-musl` | ✓ | 32-bit Linux with musl 1.2.3 [^x86_32-floats-return-ABI]
170170
[`i686-unknown-uefi`](platform-support/unknown-uefi.md) | ? | 32-bit UEFI
171171
[`loongarch64-unknown-none`](platform-support/loongarch-none.md) | * | LoongArch64 Bare-metal (LP64D ABI)
@@ -255,7 +255,7 @@ target | std | host | notes
255255
[`aarch64-nintendo-switch-freestanding`](platform-support/aarch64-nintendo-switch-freestanding.md) | * | | ARM64 Nintendo Switch, Horizon
256256
[`aarch64-unknown-teeos`](platform-support/aarch64-unknown-teeos.md) | ? | | ARM64 TEEOS |
257257
[`aarch64-unknown-nto-qnx710`](platform-support/nto-qnx.md) | ✓ | | ARM64 QNX Neutrino 7.1 RTOS |
258-
`aarch64-unknown-freebsd` | ✓ | ✓ | ARM64 FreeBSD
258+
`aarch64-unknown-freebsd` | ✓ | ✓ | ARM64 FreeBSD (version 13.2)
259259
[`aarch64-unknown-hermit`](platform-support/hermit.md) | ✓ | | ARM64 Hermit
260260
`aarch64-unknown-illumos` | ✓ | ✓ | ARM64 illumos
261261
`aarch64-unknown-linux-gnu_ilp32` | ✓ | ✓ | ARM64 Linux (ILP32 ABI)
@@ -273,13 +273,13 @@ target | std | host | notes
273273
`armv4t-unknown-linux-gnueabi` | ? | | Armv4T Linux
274274
[`armv5te-none-eabi`](platform-support/armv5te-none-eabi.md) | * | | Bare Armv5TE
275275
`armv5te-unknown-linux-uclibceabi` | ? | | Armv5TE Linux with uClibc
276-
`armv6-unknown-freebsd` | ✓ | ✓ | Armv6 FreeBSD
276+
`armv6-unknown-freebsd` | ✓ | ✓ | Armv6 FreeBSD (version 13.2)
277277
[`armv6-unknown-netbsd-eabihf`](platform-support/netbsd.md) | ✓ | ✓ | Armv6 NetBSD w/hard-float
278278
[`armv6k-nintendo-3ds`](platform-support/armv6k-nintendo-3ds.md) | ? | | Armv6k Nintendo 3DS, Horizon (Requires devkitARM toolchain)
279279
[`armv7-sony-vita-newlibeabihf`](platform-support/armv7-sony-vita-newlibeabihf.md) | ✓ | | Armv7-A Cortex-A9 Sony PlayStation Vita (requires VITASDK toolchain)
280280
[`armv7-unknown-linux-uclibceabi`](platform-support/armv7-unknown-linux-uclibceabi.md) | ✓ | ✓ | Armv7-A Linux with uClibc, softfloat
281281
[`armv7-unknown-linux-uclibceabihf`](platform-support/armv7-unknown-linux-uclibceabihf.md) | ✓ | ? | Armv7-A Linux with uClibc, hardfloat
282-
`armv7-unknown-freebsd` | ✓ | ✓ | Armv7-A FreeBSD
282+
`armv7-unknown-freebsd` | ✓ | ✓ | Armv7-A FreeBSD (version 13.2)
283283
[`armv7-unknown-netbsd-eabihf`](platform-support/netbsd.md) | ✓ | ✓ | Armv7-A NetBSD w/hard-float
284284
`armv7-wrs-vxworks-eabihf` | ? | | Armv7-A for VxWorks
285285
[`armv7a-kmc-solid_asp3-eabi`](platform-support/kmc-solid.md) | ✓ | | ARM SOLID with TOPPERS/ASP3
@@ -335,9 +335,9 @@ target | std | host | notes
335335
[`powerpc-unknown-openbsd`](platform-support/powerpc-unknown-openbsd.md) | * | |
336336
`powerpc-wrs-vxworks-spe` | ? | |
337337
`powerpc-wrs-vxworks` | ? | |
338-
`powerpc64-unknown-freebsd` | ✓ | ✓ | PPC64 FreeBSD (ELFv1 and ELFv2)
339-
`powerpc64le-unknown-freebsd` | | | PPC64LE FreeBSD
340-
`powerpc-unknown-freebsd` | | | PowerPC FreeBSD
338+
`powerpc64-unknown-freebsd` | ✓ | ✓ | PPC64 FreeBSD (ELFv1 and ELFv2, version 13.2)
339+
`powerpc64le-unknown-freebsd` | | | PPC64LE FreeBSD (version 13.2)
340+
`powerpc-unknown-freebsd` | | | PowerPC FreeBSD (version 13.2)
341341
`powerpc64-unknown-linux-musl` | ? | | 64-bit PowerPC Linux with musl 1.2.3
342342
`powerpc64-wrs-vxworks` | ? | |
343343
`powerpc64le-unknown-linux-musl` | ? | | 64-bit PowerPC Linux with musl 1.2.3, Little Endian
@@ -352,7 +352,7 @@ target | std | host | notes
352352
[`riscv32imac-esp-espidf`](platform-support/esp-idf.md) | ✓ | | RISC-V ESP-IDF
353353
[`riscv32imafc-esp-espidf`](platform-support/esp-idf.md) | ✓ | | RISC-V ESP-IDF
354354
[`riscv64gc-unknown-hermit`](platform-support/hermit.md) | ✓ | | RISC-V Hermit
355-
`riscv64gc-unknown-freebsd` | | | RISC-V FreeBSD
355+
`riscv64gc-unknown-freebsd` | | | RISC-V FreeBSD (version 13.2)
356356
`riscv64gc-unknown-fuchsia` | | | RISC-V Fuchsia
357357
`riscv64gc-unknown-linux-musl` | | | RISC-V Linux (kernel 4.20, musl 1.2.3)
358358
[`riscv64gc-unknown-netbsd`](platform-support/netbsd.md) | ✓ | ✓ | RISC-V NetBSD

0 commit comments

Comments
 (0)