summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2020-10-19 19:48:34 +0000
committerbors <bors@rust-lang.org>2020-10-19 19:48:34 +0000
commit35ee6ed0bea7c4ccf1096019eb8773e44f3eb753 (patch)
tree671a6d09b84ba2cb3255732bc2956cbfa78e8269
parent17b70c1f9bbe6d019857e2eebbc7f72cff64e9ae (diff)
parent6f1b951db57836ca3fc4625585064b7dde2c7531 (diff)
downloadrust-libc-35ee6ed0bea7c4ccf1096019eb8773e44f3eb753.tar.gz
Auto merge of #1934 - JohnTitor:redox, r=JohnTitor
Run build test for `x86_64-unknown-redox` Fix #1457
-rw-r--r--.github/workflows/bors.yml3
-rw-r--r--ci/build.sh4
-rw-r--r--ci/docker/x86_64-unknown-redox/Dockerfile9
-rwxr-xr-xlibc-test/build.rs19
4 files changed, 14 insertions, 21 deletions
diff --git a/.github/workflows/bors.yml b/.github/workflows/bors.yml
index 50d0fac8b0..abcc01765e 100644
--- a/.github/workflows/bors.yml
+++ b/.github/workflows/bors.yml
@@ -131,6 +131,9 @@ jobs:
x86_64-linux-android,
x86_64-unknown-linux-gnux32,
x86_64-unknown-linux-musl,
+ # FIXME: It seems some items in `src/unix/mod.rs`
+ # aren't defined on redox actually.
+ # x86_64-unknown-redox,
]
steps:
- uses: rust-lang/simpleinfra/github-actions/cancel-outdated-builds@master
diff --git a/ci/build.sh b/ci/build.sh
index 9decfb75cf..ba186f3af5 100644
--- a/ci/build.sh
+++ b/ci/build.sh
@@ -137,9 +137,6 @@ RUST_GT_1_24_LINUX_TARGETS="\
i586-unknown-linux-musl \
"
-# FIXME: temporarirly disable the redox target
-# https://github.com/rust-lang/libc/issues/1457
-# x86_64-unknown-redox
RUST_NIGHTLY_LINUX_TARGETS="\
aarch64-fuchsia \
armv5te-unknown-linux-gnueabi \
@@ -151,6 +148,7 @@ x86_64-fortanix-unknown-sgx \
x86_64-fuchsia \
x86_64-pc-windows-gnu \
x86_64-unknown-linux-gnux32 \
+x86_64-unknown-redox \
"
RUST_OSX_TARGETS="\
diff --git a/ci/docker/x86_64-unknown-redox/Dockerfile b/ci/docker/x86_64-unknown-redox/Dockerfile
new file mode 100644
index 0000000000..91b0cbabdc
--- /dev/null
+++ b/ci/docker/x86_64-unknown-redox/Dockerfile
@@ -0,0 +1,9 @@
+FROM redoxos/redoxer
+
+RUN mv /root/.redoxer /.redoxer
+
+ENV PATH=$PATH:/.redoxer/toolchain/bin:/rust/bin \
+ AR_x86_64_unknown_redox="x86_64-unknown-redox-ar" \
+ CC_x86_64_unknown_redox="x86_64-unknown-redox-gcc" \
+ CARGO_TARGET_X86_64_UNKNOWN_REDOX_LINKER="x86_64-unknown-redox-gcc" \
+ CARGO_TARGET_X86_64_UNKNOWN_REDOX_RUNNER="redoxer exec --folder ."
diff --git a/libc-test/build.rs b/libc-test/build.rs
index 65b049a9cc..649e3699e5 100755
--- a/libc-test/build.rs
+++ b/libc-test/build.rs
@@ -8,7 +8,7 @@ use std::env;
fn do_cc() {
let target = env::var("TARGET").unwrap();
if cfg!(unix) {
- let exclude = ["wasi"];
+ let exclude = ["redox", "wasi"];
if !exclude.iter().any(|x| target.contains(x)) {
let mut cmsg = cc::Build::new();
@@ -537,54 +537,37 @@ fn test_redox(target: &str) {
"dirent.h",
"dlfcn.h",
"errno.h",
- "execinfo.h",
"fcntl.h",
- "glob.h",
"grp.h",
- "ifaddrs.h",
- "langinfo.h",
"limits.h",
"locale.h",
- "net/if.h",
- "net/if_arp.h",
- "net/route.h",
"netdb.h",
"netinet/in.h",
"netinet/ip.h",
"netinet/tcp.h",
- "netinet/udp.h",
"poll.h",
- "pthread.h",
"pwd.h",
- "resolv.h",
- "sched.h",
"semaphore.h",
"string.h",
"strings.h",
"sys/file.h",
"sys/ioctl.h",
"sys/mman.h",
- "sys/mount.h",
"sys/ptrace.h",
- "sys/quota.h",
"sys/resource.h",
"sys/socket.h",
"sys/stat.h",
"sys/statvfs.h",
- "sys/sysctl.h",
"sys/time.h",
- "sys/times.h",
"sys/types.h",
"sys/uio.h",
"sys/un.h",
"sys/utsname.h",
"sys/wait.h",
- "syslog.h",
"termios.h",
"time.h",
"unistd.h",
"utime.h",
- "utmpx.h",
"wchar.h",
}