* attempt to add valgrind support to the CIs and testament * valgrind (currently) works only on 64-bit Linux
94 lines
2.2 KiB
YAML
94 lines
2.2 KiB
YAML
sudo: false
|
|
language: c
|
|
|
|
dist: xenial
|
|
|
|
matrix:
|
|
fast_finish: true
|
|
|
|
include:
|
|
- os: linux
|
|
env:
|
|
- NIM_COMPILE_TO_CPP=false
|
|
- CPU=amd64
|
|
|
|
- os: linux
|
|
env:
|
|
- NIM_COMPILE_TO_CPP=false
|
|
- CPU=i386
|
|
addons:
|
|
apt:
|
|
packages:
|
|
- gcc-multilib
|
|
- g++-multilib
|
|
- libcurl4-openssl-dev:i386
|
|
- libgc-dev:i386
|
|
- libglib2.0-dev:i386
|
|
- libpulse-dev:i386
|
|
- libsdl1.2-dev:i386
|
|
- libsfml-dev:i386
|
|
|
|
- os: osx
|
|
env:
|
|
- NIM_COMPILE_TO_CPP=false
|
|
- CPU=amd64
|
|
|
|
- os: osx
|
|
env:
|
|
- NIM_COMPILE_TO_CPP=true
|
|
- CPU=amd64
|
|
|
|
# To allow failures for a failing configuration, use something like:
|
|
# allow_failures:
|
|
# - env: NIM_COMPILE_TO_CPP=true
|
|
# - os: osx
|
|
|
|
addons:
|
|
apt:
|
|
# update the list above if more deps are introduced
|
|
packages:
|
|
- libcurl4-openssl-dev
|
|
- libsdl1.2-dev
|
|
- libgc-dev
|
|
- libsfml-dev
|
|
- libc6-dbg
|
|
- valgrind
|
|
homebrew:
|
|
packages:
|
|
- boehmgc
|
|
- make
|
|
- sfml
|
|
update: true
|
|
|
|
install:
|
|
- if [[ $CPU = i386 ]]; then echo -e "#!/bin/bash\n$(which gcc) -m32 \"\$@\"" > bin/gcc; fi
|
|
- if [[ $CPU = i386 ]]; then chmod 755 bin/gcc; fi
|
|
- if [[ $CPU = i386 ]]; then echo -e "#!/bin/bash\n$(which g++) -m32 \"\$@\"" > bin/g++; fi
|
|
- if [[ $CPU = i386 ]]; then chmod 755 bin/g++; fi
|
|
|
|
before_script:
|
|
- git clone --depth 1 https://github.com/nim-lang/csources.git
|
|
- export PATH="$PWD/bin${PATH:+:$PATH}"
|
|
- make -C csources -j 2 LD=$CC ucpu=$CPU
|
|
|
|
script:
|
|
- echo "travis_fold:start:nim_c_koch"
|
|
- nim c koch
|
|
- echo "travis_fold:end:nim_c_koch"
|
|
- ./koch runCI
|
|
|
|
before_deploy:
|
|
# Make https://nim-lang.github.io/Nim work the same as https://nim-lang.github.io/Nim/overview.html
|
|
- cp -f ./doc/html/overview.html ./doc/html/index.html
|
|
deploy: # https://nim-lang.github.io/Nim
|
|
provider: pages
|
|
# local-dir *has* to be a relative path from the repo root.
|
|
local-dir: "doc/html"
|
|
skip-cleanup: true
|
|
github-token: "$GITHUB_OAUTH_TOKEN"
|
|
keep-history: false
|
|
on:
|
|
branch: devel
|
|
|
|
# Extract failed tests
|
|
after_failure: nim c -r tools/ci_testresults.nim
|