Skip to content

Commit 288942e

Browse files
committed
Auto merge of rust-lang#652 - alexcrichton:s390xci, r=alexcrichton
Clean up CI configuration and add s390x We can't test s390x because qemu segfaults but we can at least verify that it compiles. Closes rust-lang#650
2 parents e8140b8 + 7d74c09 commit 288942e

File tree

6 files changed

+46
-77
lines changed

6 files changed

+46
-77
lines changed

.travis.yml

Lines changed: 25 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
language: rust
2+
rust: stable
23
sudo: required
34
dist: trusty
45
services:
@@ -22,109 +23,63 @@ env:
2223
matrix:
2324
include:
2425
# 1.0.0 compat
25-
- os: linux
26-
env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1
26+
- env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1
2727
rust: 1.0.0
2828
script: cargo build
2929
install:
3030

3131
# build documentation
32-
- os: linux
33-
env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1
32+
- env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1
3433
rust: nightly
3534
script: sh ci/dox.sh
3635

3736
# stable compat
38-
- os: linux
39-
env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1
40-
rust: stable
41-
- os: linux
42-
env: TARGET=i686-unknown-linux-gnu
43-
rust: stable
37+
- env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1
38+
- env: TARGET=i686-unknown-linux-gnu
4439
- os: osx
4540
env: TARGET=x86_64-apple-darwin NO_ADD=1
46-
rust: stable
4741
- os: osx
4842
env: TARGET=i686-apple-darwin
49-
rust: stable
50-
- os: linux
51-
env: TARGET=arm-linux-androideabi
52-
rust: stable
53-
- os: linux
54-
env: TARGET=aarch64-linux-android
55-
rust: stable
56-
- os: linux
57-
env: TARGET=i686-linux-android
58-
rust: stable
59-
# as of 2017/05/03 x86_64-linux-android are not on stable
60-
- os: linux
61-
env: TARGET=x86_64-linux-android
62-
rust: beta
63-
- os: linux
64-
env: TARGET=x86_64-unknown-linux-musl
65-
rust: stable
66-
- os: linux
67-
env: TARGET=i686-unknown-linux-musl
68-
rust: stable
69-
- os: linux
70-
env: TARGET=arm-unknown-linux-gnueabihf
71-
rust: stable
72-
- os: linux
73-
env: TARGET=aarch64-unknown-linux-gnu
74-
rust: stable
43+
- env: TARGET=arm-linux-androideabi
44+
- env: TARGET=aarch64-linux-android
45+
- env: TARGET=i686-linux-android
46+
- env: TARGET=x86_64-linux-android
47+
- env: TARGET=x86_64-unknown-linux-musl
48+
- env: TARGET=i686-unknown-linux-musl
49+
- env: TARGET=arm-unknown-linux-gnueabihf
50+
- env: TARGET=aarch64-unknown-linux-gnu
7551
- os: osx
7652
osx_image: xcode8.2
7753
env: TARGET=i386-apple-ios
78-
rust: stable
7954
- os: osx
8055
osx_image: xcode8.2
8156
env: TARGET=x86_64-apple-ios
82-
rust: stable
83-
- os: linux
84-
env: TARGET=x86_64-rumprun-netbsd
85-
rust: stable
86-
- os: linux
87-
env: TARGET=powerpc-unknown-linux-gnu
88-
rust: stable
89-
- os: linux
90-
env: TARGET=powerpc64-unknown-linux-gnu
91-
rust: beta
92-
- os: linux
93-
env: TARGET=mips-unknown-linux-musl
94-
rust: stable
95-
- os: linux
96-
env: TARGET=mipsel-unknown-linux-musl
97-
rust: stable
98-
- os: linux
99-
env: TARGET=mips64-unknown-linux-gnuabi64
100-
rust: beta
101-
- os: linux
102-
env: TARGET=mips-unknown-linux-gnu
103-
rust: beta
57+
- env: TARGET=x86_64-rumprun-netbsd
58+
- env: TARGET=powerpc-unknown-linux-gnu
59+
- env: TARGET=powerpc64-unknown-linux-gnu
60+
- env: TARGET=mips-unknown-linux-musl
61+
- env: TARGET=mipsel-unknown-linux-musl
62+
- env: TARGET=mips64-unknown-linux-gnuabi64
63+
- env: TARGET=mips-unknown-linux-gnu
64+
- env: TARGET=s390x-unknown-linux-gnu
10465

10566
# beta
106-
- os: linux
107-
env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1
67+
- env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1
10868
rust: beta
10969
- os: osx
11070
env: TARGET=x86_64-apple-darwin NO_ADD=1
11171
rust: beta
11272

11373
# nightly
114-
- os: linux
115-
env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1
74+
- env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1
11675
rust: nightly
11776
- os: osx
11877
env: TARGET=x86_64-apple-darwin NO_ADD=1
11978
rust: nightly
12079

12180
# QEMU based targets that compile in an emulator
122-
- os: linux
123-
env: TARGET=x86_64-unknown-freebsd
124-
rust: stable
125-
- os: linux
126-
env: TARGET=x86_64-unknown-openbsd QEMU=openbsd.qcow2
127-
rust: stable
81+
- env: TARGET=x86_64-unknown-freebsd
82+
- env: TARGET=x86_64-unknown-openbsd QEMU=openbsd.qcow2
12883
script: sh ci/run-docker.sh $TARGET
12984
install:
13085

Cargo.lock

Lines changed: 5 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[package]
22

33
name = "libc"
4-
version = "0.2.25"
4+
version = "0.2.26"
55
authors = ["The Rust Project Developers"]
66
license = "MIT/Apache-2.0"
77
readme = "README.md"
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
FROM ubuntu:17.04
2+
3+
RUN apt-get update && apt-get install -y --no-install-recommends \
4+
gcc libc6-dev qemu-user ca-certificates \
5+
gcc-s390x-linux-gnu libc6-dev-s390x-cross
6+
7+
ENV CARGO_TARGET_S390X_UNKNOWN_LINUX_GNU_LINKER=s390x-linux-gnu-gcc \
8+
CC_s390x_unknown_linux_gnu=s390x-linux-gnu-gcc \
9+
PATH=$PATH:/rust/bin

ci/run.sh

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -168,6 +168,11 @@ case "$TARGET" in
168168
qemu-aarch64 -L /usr/aarch64-linux-gnu/ $CARGO_TARGET_DIR/$TARGET/debug/libc-test
169169
;;
170170

171+
s390x-unknown-linux-gnu)
172+
# TODO: in theory we should execute this, but qemu segfaults immediately :(
173+
# qemu-s390x -L /usr/s390x-linux-gnu/ $CARGO_TARGET_DIR/$TARGET/debug/libc-test
174+
;;
175+
171176
*-rumprun-netbsd)
172177
rumprun-bake hw_virtio /tmp/libc-test.img $CARGO_TARGET_DIR/$TARGET/debug/libc-test
173178
qemu-system-x86_64 -nographic -vga none -m 64 \

src/unix/notbsd/linux/s390x.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ pub type greg_t = u64;
1616
pub type clock_t = i64;
1717
pub type __fsword_t = ::c_long;
1818
pub type __priority_which_t = ::c_uint;
19+
pub type __u64 = u64;
1920

2021
s! {
2122
pub struct aiocb {
@@ -777,7 +778,6 @@ pub const CMSPAR: ::tcflag_t = 0o10000000000;
777778
pub const VSWTC: usize = 7;
778779
pub const OLCUC: ::tcflag_t = 0o000002;
779780
pub const NLDLY: ::tcflag_t = 0o000400;
780-
pub const NL1: ::tcflag_t = 0x00000100;
781781
pub const CRDLY: ::tcflag_t = 0o003000;
782782
pub const CR1: ::tcflag_t = 0x00000200;
783783
pub const CR2: ::tcflag_t = 0x00000400;

0 commit comments

Comments
 (0)