]> git.lizzy.rs Git - rust.git/blob - .travis.yml
fff11d97f6f7278e6d213e39aebbf9e409743f79
[rust.git] / .travis.yml
1 language: rust
2 rust:
3   - nightly
4
5 matrix:
6   fast_finish: true
7   include:
8     # Linux (x86_64)
9     - name: "x86_64-unknown-linux-gnu"
10       os: linux
11       arch: amd64
12       env:
13         - TARGET=x86_64-unknown-linux-gnu
14     - name: "x86_64-unknown-linux-gnu+sse"
15       os: linux
16       arch: amd64
17       env:
18         - TARGET=x86_64-unknown-linux-gnu
19         - TARGET_FEATURE=sse
20     - name: "x86_64-unknown-linux-gnu+sse2"
21       os: linux
22       arch: amd64
23       env:
24         - TARGET=x86_64-unknown-linux-gnu
25         - TARGET_FEATURE=sse2
26     - name: "x86_64-unknown-linux-gnu+sse3"
27       os: linux
28       arch: amd64
29       env:
30         - TARGET=x86_64-unknown-linux-gnu
31         - TARGET_FEATURE=sse3
32     - name: "x86_64-unknown-linux-gnu+sse4.1"
33       os: linux
34       arch: amd64
35       env:
36         - TARGET=x86_64-unknown-linux-gnu
37         - TARGET_FEATURE=sse4.1
38     - name: "x86_64-unknown-linux-gnu+sse4.2"
39       os: linux
40       arch: amd64
41       env:
42         - TARGET=x86_64-unknown-linux-gnu
43         - TARGET_FEATURE=sse4.2
44     - name: "x86_64-unknown-linux-gnu+avx"
45       os: linux
46       arch: amd64
47       env:
48         - TARGET=x86_64-unknown-linux-gnu
49         - TARGET_FEATURE=avx
50     - name: "x86_64-unknown-linux-gnu+avx2"
51       os: linux
52       arch: amd64
53       env:
54         - TARGET=x86_64-unknown-linux-gnu
55         - TARGET_FEATURE=avx2
56     - name: "x86_64-unknown-linux-gnu+avx512vl"
57       os: linux
58       arch: amd64
59       env:
60         - TARGET=x86_64-unknown-linux-gnu
61         - TARGET_FEATURE=avx512vl
62
63     # Linux (aarch64)
64     - name: "aarch64-unknown-linux-gnu"
65       os: linux
66       arch: arm64
67       env:
68         - TARGET=aarch64-unknown-linux-gnu
69     - name: "aarch64-unknown-linux-gnu+neon"
70       os: linux
71       arch: arm64
72       env:
73         - TARGET=aarch64-unknown-linux-gnu
74         - TARGET_FEATURE=neon
75     - name: "aarch64-unknown-linux-gnu+sve"
76       os: linux
77       arch: arm64
78       env:
79         - TARGET=aarch64-unknown-linux-gnu
80         - TARGET_FEATURE=sve
81
82     # Linux (powerpc64)
83     - name: "powerpc64le-unknown-linux-gnu"
84       os: linux
85       arch: ppc64le
86       env:
87         - TARGET=powerpc64le-unknown-linux-gnu
88     - name: "powerpc64le-unknown-linux-gnu+vsx"
89       os: linux
90       arch: ppc64le
91       env:
92         - TARGET=powerpc64le-unknown-linux-gnu
93         - TARGET_FEATURE=vsx
94
95     # Windows (x86_64)
96     - name: "x86_64-pc-windows-msvc"
97       os: windows
98       arch: amd64
99       env: TARGET=x86_64-pc-windows-msvc
100     
101     # Windows (i686)
102     - name: "i686-pc-windows-msvc"
103       os: windows
104       env: TARGET=i686-pc-windows-msvc
105     - name: "i686-pc-windows-msvc+sse"
106       os: windows
107       arch: amd64
108       env:
109         - TARGET=i686-pc-windows-msvc
110         - TARGET_FEATURE=sse
111     - name: "i686-pc-windows-msvc+sse2"
112       os: windows
113       arch: amd64
114       env:
115         - TARGET=i686-pc-windows-msvc
116         - TARGET_FEATURE=sse2
117     - name: "i686-pc-windows-msvc+sse3"
118       os: windows
119       arch: amd64
120       env:
121         - TARGET=i686-pc-windows-msvc
122         - TARGET_FEATURE=sse3
123     - name: "i686-pc-windows-msvc+sse4.1"
124       os: windows
125       arch: amd64
126       env:
127         - TARGET=i686-pc-windows-msvc
128         - TARGET_FEATURE=sse4.1
129     - name: "i686-pc-windows-msvc+sse4.2"
130       os: windows
131       arch: amd64
132       env:
133         - TARGET=i686-pc-windows-msvc
134         - TARGET_FEATURE=sse4.2
135     - name: "i686-pc-windows-msvc+avx"
136       os: windows
137       arch: amd64
138       env:
139         - TARGET=i686-pc-windows-msvc
140         - TARGET_FEATURE=avx
141     - name: "i686-pc-windows-msvc+avx2"
142       os: windows
143       arch: amd64
144       env:
145         - TARGET=i686-pc-windows-msvc
146         - TARGET_FEATURE=avx2
147
148     # OSX (x86_64)
149     - name: "x86_64-apple-darwin"
150       os: osx
151       arch: amd64
152       env:
153         - TARGET=x86_64-apple-darwin
154
155 script:
156   - rustup target add $TARGET
157   - if [ -n "$TARGET_FEATURE" ]; then RUSTFLAGS="-C target-feature=+$TARGET_FEATURE"; fi
158   - cargo test -v --target $TARGET