Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Downgrade CI support for MIPS #3429

Merged
merged 1 commit into from
Nov 11, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 0 additions & 7 deletions .github/workflows/bors.yml
Original file line number Diff line number Diff line change
Expand Up @@ -136,13 +136,6 @@ jobs:
asmjs-unknown-emscripten,
i686-linux-android,
i686-unknown-linux-musl,
mips-unknown-linux-gnu,
mips-unknown-linux-musl,
# FIXME: Somehow failed on CI
# https://github.com/rust-lang/libc/runs/1659882216
# mips64-unknown-linux-gnuabi64,
# mips64el-unknown-linux-gnuabi64,
mipsel-unknown-linux-musl,
powerpc-unknown-linux-gnu,
powerpc64-unknown-linux-gnu,
powerpc64le-unknown-linux-gnu,
Expand Down
16 changes: 7 additions & 9 deletions ci/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -112,14 +112,6 @@ x86_64-unknown-linux-musl \
x86_64-unknown-netbsd \
"

# FIXME: builds of MIPS targets are currently broken on nightly.
# mips-unknown-linux-gnu \
# mips-unknown-linux-musl \
# mips64-unknown-linux-gnuabi64 \
# mips64el-unknown-linux-gnuabi64 \
# mipsel-unknown-linux-gnu \
# mipsel-unknown-linux-musl \

RUST_GT_1_13_LINUX_TARGETS="\
arm-unknown-linux-musleabi \
arm-unknown-linux-musleabihf \
Expand Down Expand Up @@ -238,9 +230,15 @@ i686-unknown-haiku \
i686-unknown-netbsd \
i686-unknown-openbsd \
i686-wrs-vxworks \
mipsel-sony-psp \
mips-unknown-linux-gnu \
mips-unknown-linux-musl \
mips64-unknown-linux-gnuabi64 \
mips64-unknown-linux-muslabi64 \
mips64el-unknown-linux-gnuabi64 \
mips64el-unknown-linux-muslabi64 \
mipsel-unknown-linux-gnu \
mipsel-unknown-linux-musl \
mipsel-sony-psp \
nvptx64-nvidia-cuda \
powerpc-unknown-linux-gnuspe \
powerpc-unknown-netbsd \
Expand Down
10 changes: 0 additions & 10 deletions ci/docker/mips-unknown-linux-gnu/Dockerfile

This file was deleted.

25 changes: 0 additions & 25 deletions ci/docker/mips-unknown-linux-musl/Dockerfile

This file was deleted.

11 changes: 0 additions & 11 deletions ci/docker/mips64-unknown-linux-gnuabi64/Dockerfile

This file was deleted.

15 changes: 0 additions & 15 deletions ci/docker/mips64-unknown-linux-muslabi64/Dockerfile

This file was deleted.

11 changes: 0 additions & 11 deletions ci/docker/mips64el-unknown-linux-gnuabi64/Dockerfile

This file was deleted.

15 changes: 0 additions & 15 deletions ci/docker/mips64el-unknown-linux-muslabi64/Dockerfile

This file was deleted.

25 changes: 0 additions & 25 deletions ci/docker/mipsel-unknown-linux-musl/Dockerfile

This file was deleted.

22 changes: 0 additions & 22 deletions ci/docker/mipsel-unknown-linux-uclibc/Dockerfile

This file was deleted.

14 changes: 0 additions & 14 deletions ci/install-musl.sh
Original file line number Diff line number Diff line change
Expand Up @@ -46,20 +46,6 @@ case ${1} in
./configure --prefix="/musl-${musl_arch}"
make install -j4
;;
mips64)
musl_arch=mips64
kernel_arch=mips
CC=mips64-linux-gnuabi64-gcc CFLAGS="-march=mips64r2 -mabi=64" \
./configure --prefix="/musl-${musl_arch}" --enable-wrapper=yes
make install -j4
;;
mips64el)
musl_arch=mips64el
kernel_arch=mips
CC=mips64el-linux-gnuabi64-gcc CFLAGS="-march=mips64r2 -mabi=64" \
./configure --prefix="/musl-${musl_arch}" --enable-wrapper=yes
make install -j4
;;
s390x)
musl_arch=s390x
kernel_arch=s390
Expand Down
3 changes: 0 additions & 3 deletions ci/install-rust.sh
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,6 @@ else
# https://github.com/rust-lang/rust/issues/103673 contains related information.
case "$TARGET" in
*android*) toolchain=nightly-2022-10-09;;
# FIXME: Unpin once mips' components are available on nightly.
# https://rust-lang.github.io/rustup-components-history/mips-unknown-linux-gnu.html
*mips*) toolchain=nightly-2023-07-04;;
*) toolchain=nightly;;
esac
fi
Expand Down
42 changes: 13 additions & 29 deletions libc-test/build.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3223,9 +3223,6 @@ fn test_linux(target: &str) {
let arm = target.contains("arm");
let aarch64 = target.contains("aarch64");
let i686 = target.contains("i686");
let mips = target.contains("mips");
let mips32 = mips && !target.contains("64");
let mips64 = mips && target.contains("64");
let ppc = target.contains("powerpc");
let ppc64 = target.contains("powerpc64");
let s390x = target.contains("s390x");
Expand Down Expand Up @@ -3596,17 +3593,15 @@ fn test_linux(target: &str) {
// FIXME: Requires >= 5.1 kernel headers.
// Everything that uses install-musl.sh has 4.19 kernel headers.
"tls12_crypto_info_aes_gcm_256"
if (aarch64 || arm || i686 || mips64 || s390x || x86_64) && musl =>
if (aarch64 || arm || i686 || s390x || x86_64) && musl =>
{
true
}

// FIXME: Requires >= 5.11 kernel headers.
// Everything that uses install-musl.sh has 4.19 kernel headers.
// mips-unknown-linux-musl and mips64-unknown-linux-musl use
// openwrt-sdk which has 5.4 kernel headers.
"tls12_crypto_info_chacha20_poly1305"
if (aarch64 || arm || i686 || mips || s390x || x86_64) && musl =>
if (aarch64 || arm || i686 || s390x || x86_64) && musl =>
{
true
}
Expand Down Expand Up @@ -3727,16 +3722,11 @@ fn test_linux(target: &str) {
| "IPPROTO_ETHERNET"
| "IPPROTO_MPTCP" => true,

// FIXME: Not currently available in headers
"P_PIDFD" if mips => true,
"SYS_pidfd_open" if mips => true,
// FIXME: Not yet implemented on sparc64
"SYS_clone3" if sparc64 => true,

// FIXME: Not currently available in headers on MIPS
// Not yet implemented on sparc64
"SYS_clone3" if mips | sparc64 => true,

// FIXME: Not defined on ARM, gnueabihf, MIPS, musl, PowerPC, riscv64, s390x, and sparc64.
"SYS_memfd_secret" if arm | gnueabihf | mips | musl | ppc | riscv64 | s390x | sparc64 => true,
// FIXME: Not defined on ARM, gnueabihf, musl, PowerPC, riscv64, s390x, and sparc64.
"SYS_memfd_secret" if arm | gnueabihf | musl | ppc | riscv64 | s390x | sparc64 => true,

// FIXME: Added in Linux 5.16
// https://github.com/torvalds/linux/commit/039c0ec9bb77446d7ada7f55f90af9299b28ca49
Expand All @@ -3754,10 +3744,10 @@ fn test_linux(target: &str) {
| "UINPUT_VERSION"
| "SW_MAX"
| "SW_CNT"
if mips || ppc64 || riscv64 => true,
if ppc64 || riscv64 => true,

// FIXME: Not currently available in headers on ARM, MIPS and musl.
"NETLINK_GET_STRICT_CHK" if arm || mips || musl => true,
// FIXME: Not currently available in headers on ARM and musl.
"NETLINK_GET_STRICT_CHK" if arm || musl => true,

// kernel constants not available in uclibc 1.0.34
| "EXTPROC"
Expand Down Expand Up @@ -3946,22 +3936,20 @@ fn test_linux(target: &str) {
| "TLS_CIPHER_AES_GCM_256_SALT_SIZE"
| "TLS_CIPHER_AES_GCM_256_TAG_SIZE"
| "TLS_CIPHER_AES_GCM_256_REC_SEQ_SIZE"
if (aarch64 || arm || i686 || mips64 || s390x || x86_64) && musl =>
if (aarch64 || arm || i686 || s390x || x86_64) && musl =>
{
true
}

// FIXME: Requires >= 5.11 kernel headers.
// Everything that uses install-musl.sh has 4.19 kernel headers.
// mips-unknown-linux-musl and mips64-unknown-linux-musl use
// openwrt-sdk which has 5.4 kernel headers.
"TLS_CIPHER_CHACHA20_POLY1305"
| "TLS_CIPHER_CHACHA20_POLY1305_IV_SIZE"
| "TLS_CIPHER_CHACHA20_POLY1305_KEY_SIZE"
| "TLS_CIPHER_CHACHA20_POLY1305_SALT_SIZE"
| "TLS_CIPHER_CHACHA20_POLY1305_TAG_SIZE"
| "TLS_CIPHER_CHACHA20_POLY1305_REC_SEQ_SIZE"
if (aarch64 || arm || i686 || mips || s390x || x86_64) && musl =>
if (aarch64 || arm || i686 || s390x || x86_64) && musl =>
{
true
}
Expand Down Expand Up @@ -4155,15 +4143,11 @@ fn test_linux(target: &str) {
});

cfg.skip_roundtrip(move |s| match s {
// FIXME:
"utsname" if mips32 || mips64 => true,
// FIXME:
"mcontext_t" if s390x => true,
// FIXME: This is actually a union.
"fpreg_t" if s390x => true,

"sockaddr_un" | "sembuf" | "ff_constant_effect" if mips32 && (gnu || musl) => true,

// The test doesn't work on some env:
"ipv6_mreq"
| "ip_mreq_source"
Expand All @@ -4183,7 +4167,7 @@ fn test_linux(target: &str) {
| "sockaddr_nl"
| "termios"
| "nlmsgerr"
if (mips64 || sparc64) && gnu =>
if sparc64 && gnu =>
{
true
}
Expand All @@ -4196,7 +4180,7 @@ fn test_linux(target: &str) {
"cmsghdr" => true,

// FIXME: the call ABI of max_align_t is incorrect on these platforms:
"max_align_t" if i686 || mips64 || ppc64 => true,
"max_align_t" if i686 || ppc64 => true,

_ => false,
});
Expand Down