Build Switch on CI

This commit is contained in:
leo60228 2019-05-10 09:40:45 -04:00
parent 62ad61f973
commit a92266b0fe
2 changed files with 58 additions and 0 deletions

View File

@ -207,6 +207,27 @@ matrix:
- env: TARGET=wasm32-unknown-wasi
rust: nightly
stage: tier2
- name: "Nintendo Switch - build libcore only"
rust: nightly
stage: tier2
install:
- rustup component add rust-src
- (test -x $HOME/.cargo/bin/cargo-xbuild || cargo install cargo-xbuild)
script:
- mkdir -p target
- cd target
- wget https://github.com/devkitPro/pacman/releases/download/devkitpro-pacman-1.0.1/devkitpro-pacman.deb
- sudo dpkg -i devkitpro-pacman.deb
- sudo dkp-pacman -Sy
- sudo dkp-pacman -Syu
- sudo dkp-pacman -S -v --noconfirm switch-dev devkitA64
- export PATH="$PATH:/opt/devkitpro/devkitA64/bin"
- export PATH="$PATH:/opt/devkitpro/tools/bin"
- cd ..
# Pull the target spec up into the current directory and then build
- mv ci/switch.json switch.json
- cargo xbuild --target switch.json
allow_failures:
# FIXME: android build bots time out irregularly

37
ci/switch.json Normal file
View File

@ -0,0 +1,37 @@
{
"family": "unix",
"env": "newlib",
"target-env": "newlib",
"target-family": "unix",
"target-c-int-width": "32",
"target-endian": "little",
"target-pointer-width": "64",
"os": "horizon",
"arch": "aarch64",
"panic-strategy": "unwind",
"abi-blacklist": [
"stdcall",
"fastcall",
"vectorcall",
"thiscall",
"win64",
"sysv64"
],
"dynamic-linking" : false,
"features": "+a53,+strict-align",
"data-layout": "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128",
"executables": true,
"position-independent-executables" : true,
"linker-flavor": "gcc",
"llvm-target": "aarch64-unknown-none",
"has-elf-tls" : false,
"linker-is-gnu" : true,
"disable-redzone" : true,
"relocation-model" : "pic",
"max-atomic-width": 128,
"exe-suffix": ".elf",
"staticlib-suffix" : ".a",
"trap-unreachable" : true,
"emit-debug-gdb-scripts" : true,
"requires-uwtable" : true
}