.travis.yml 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. # TravisCI configuration for Slic3r - https://slic3r.org
  2. #
  3. # We build Linux and macOS versions on TravisCI, both the main program
  4. # (perl/C++) and the pure C++ one.
  5. #
  6. # Each job performs the following steps:
  7. # - install dependencies (cached across builds)
  8. # - build
  9. # - test
  10. # - package
  11. # - deploy to dl.slic3r.org (except for the cppgui branch)
  12. language: generic
  13. dist: trusty
  14. before_install:
  15. - sh package/common/travis-decrypt-key
  16. - export SLIC3R_GIT_VERSION=$(git rev-parse --short HEAD)
  17. script:
  18. - if [[ "${TRAVIS_OS_NAME}" == "linux" && "$TARGET" == "main" ]]; then ./package/linux/travis-build-main.sh || travis_terminate 1; fi
  19. - if [[ "${TRAVIS_OS_NAME}" == "linux" && "$TARGET" == "cpp" ]]; then ./package/linux/travis-build-cpp.sh || travis_terminate 1; fi
  20. - if [[ "${TRAVIS_OS_NAME}" == "osx" && "$TARGET" == "main" ]]; then ./package/osx/travis-build-main.sh || travis_terminate 1; fi
  21. - if [[ "${TRAVIS_OS_NAME}" == "osx" && "$TARGET" == "cpp" ]]; then ./package/osx/travis-build-cpp.sh || travis_terminate 1; fi
  22. branches:
  23. only:
  24. - master
  25. - cppgui
  26. - coverity-scan
  27. addons:
  28. apt:
  29. sources:
  30. - ubuntu-toolchain-r-test
  31. packages:
  32. - g++-7
  33. - gcc-7
  34. - g++-4.9
  35. - gcc-4.9
  36. - libgtk2.0-0
  37. - libgtk2.0-dev
  38. - freeglut3
  39. - cmake
  40. - wx3.0-headers
  41. - libwxgtk3.0-dev
  42. - wx-common
  43. ssh_known_hosts: dl.slic3r.org
  44. matrix:
  45. include:
  46. - os: linux
  47. env:
  48. - TARGET=main
  49. cache:
  50. directories:
  51. - $HOME/boost_1_63_0
  52. - $HOME/perl5
  53. - $HOME/wx302
  54. - local-lib
  55. after_success:
  56. - if [[ "${TRAVIS_BRANCH}" != "cppgui" ]]; then ./package/linux/travis-deploy-main.sh || travis_terminate 1; fi
  57. - os: linux
  58. env:
  59. - TARGET=cpp
  60. - CACHE=$HOME/cache
  61. cache:
  62. apt: true
  63. directories:
  64. - $HOME/cache
  65. after_success:
  66. - package/linux/travis-deploy-cpp.sh
  67. # While this works, it does not appear to be needed as the 10.13 builds
  68. # work on 10.12 as well.
  69. # - os: osx
  70. # # osx_image: xcode8 # OS X 10.11
  71. # osx_image: xcode9.2 # OS X 10.12
  72. # env:
  73. # - TARGET=main
  74. # cache:
  75. # directories:
  76. # - /usr/local/Homebrew
  77. # - $HOME/Library/Caches/Homebrew
  78. # - local-lib
  79. - os: osx
  80. osx_image: xcode9.4 # OS X 10.13
  81. env:
  82. - TARGET=main
  83. cache:
  84. directories:
  85. - /usr/local/Homebrew
  86. - $HOME/Library/Caches/Homebrew
  87. - local-lib
  88. after_success:
  89. - if [[ "${TRAVIS_BRANCH}" != "cppgui" ]]; then ./package/osx/travis-deploy-main.sh || travis_terminate 1; fi
  90. - os: osx
  91. osx_image: xcode9.4
  92. env:
  93. - TARGET=cpp
  94. - CACHE=$HOME/cache
  95. cache:
  96. ccache: true
  97. directories:
  98. - /usr/local/Homebrew
  99. - $HOME/cache
  100. - $HOME/Library/Caches/Homebrew
  101. env:
  102. global:
  103. - secure: eEVRZNMv7FM6jrOU9iAFkDhWxFQ1WtHBEaObImcvtFUxy6vWSt3ehFFeTRouj3uHQAnbvUzziDyvPPm8/95alv5g/du8ML6YzzqKBKfazM0xQ7SF6R2DQL8lfFIp+RSV7T02byEP1f1g7Zva7xH9szIlDcSfU0pXW4KWbkBFMd8=
  104. - secure: gj338h+qHGccTD/VQFmEJkqdg2McIe2pO0iZ4Ae9BvY5vxkIML4BpoYZQXQTqiAOETnUjlcknY9lx0hI/PfkDD9MSJc5BC/3fMYRCu3SgAclEwklWf9vvtodUeT69mtnZuw1zze1nTbExuOw2mepbqFjxKKMl+9l5oCz4O54fXU=
  105. notifications:
  106. irc:
  107. channels:
  108. - chat.freenode.net#slic3r
  109. on_success: change
  110. on_failure: always
  111. use_notice: true