.travis.yml 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. sudo: false
  2. language: c
  3. dist: xenial
  4. matrix:
  5. fast_finish: true
  6. include:
  7. - os: linux
  8. env:
  9. - NIM_COMPILE_TO_CPP=false
  10. - CPU=amd64
  11. - os: linux
  12. env:
  13. - NIM_COMPILE_TO_CPP=false
  14. - CPU=i386
  15. addons:
  16. apt:
  17. packages:
  18. - gcc-multilib
  19. - g++-multilib
  20. - libcurl4-openssl-dev:i386
  21. - libgc-dev:i386
  22. - libglib2.0-dev:i386
  23. - libpulse-dev:i386
  24. - libsdl1.2-dev:i386
  25. - libsfml-dev:i386
  26. - os: osx
  27. env:
  28. - NIM_COMPILE_TO_CPP=false
  29. - CPU=amd64
  30. - os: osx
  31. env:
  32. - NIM_COMPILE_TO_CPP=true
  33. - CPU=amd64
  34. # To allow failures for a failing configuration, use something like:
  35. # allow_failures:
  36. # - env: NIM_COMPILE_TO_CPP=true
  37. # - os: osx
  38. addons:
  39. apt:
  40. # update the list above if more deps are introduced
  41. packages:
  42. - libcurl4-openssl-dev
  43. - libsdl1.2-dev
  44. - libgc-dev
  45. - libsfml-dev
  46. - libc6-dbg
  47. - valgrind
  48. homebrew:
  49. packages:
  50. - boehmgc
  51. - make
  52. - sfml
  53. update: true
  54. install:
  55. - if [[ $CPU = i386 ]]; then echo -e "#!/bin/bash\n$(which gcc) -m32 \"\$@\"" > bin/gcc; fi
  56. - if [[ $CPU = i386 ]]; then chmod 755 bin/gcc; fi
  57. - if [[ $CPU = i386 ]]; then echo -e "#!/bin/bash\n$(which g++) -m32 \"\$@\"" > bin/g++; fi
  58. - if [[ $CPU = i386 ]]; then chmod 755 bin/g++; fi
  59. before_script:
  60. - git clone --depth 1 https://github.com/nim-lang/csources.git
  61. - export PATH="$PWD/bin${PATH:+:$PATH}"
  62. - make -C csources -j 2 LD=$CC ucpu=$CPU
  63. script:
  64. - echo "travis_fold:start:nim_c_koch"
  65. - nim c koch
  66. - echo "travis_fold:end:nim_c_koch"
  67. - ./koch runCI
  68. before_deploy:
  69. # Make https://nim-lang.github.io/Nim work the same as https://nim-lang.github.io/Nim/overview.html
  70. - cp -f ./doc/html/overview.html ./doc/html/index.html
  71. deploy: # https://nim-lang.github.io/Nim
  72. provider: pages
  73. # local-dir *has* to be a relative path from the repo root.
  74. local-dir: "doc/html"
  75. skip-cleanup: true
  76. github-token: "$GITHUB_OAUTH_TOKEN"
  77. keep-history: false
  78. on:
  79. branch: devel
  80. # Extract failed tests
  81. after_failure: nim c -r tools/ci_testresults.nim