Skip to content

Commit

Permalink
Downgrade CI support for MIPS
Browse files Browse the repository at this point in the history
  • Loading branch information
JohnTitor committed Nov 11, 2023
1 parent a17ff20 commit ef3a782
Show file tree
Hide file tree
Showing 13 changed files with 20 additions and 196 deletions.
7 changes: 0 additions & 7 deletions .github/workflows/bors.yml
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
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
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
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
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

0 comments on commit ef3a782

Please sign in to comment.