]> git.proxmox.com Git - libgit2.git/blobdiff - .travis.yml
Merge pull request #3116 from libgit2/cmn/remove-ssh-embed
[libgit2.git] / .travis.yml
index ad1172dfa094ef7e5ff91f4021c69dfe61f5955e..28ec0e0af6257d5e18ced980bb6436d3bb5e7921 100644 (file)
@@ -1,44 +1,65 @@
 # Travis-CI Build for libgit2
 # see travis-ci.org for details
 
-# As CMake is not officially supported we use erlang VMs
 language: c
 
+os:
+  - linux
+  - osx
+
 compiler:
   - gcc
   - clang
 
 # Settings to try
 env:
+ global:
+  - secure: "YnhS+8n6B+uoyaYfaJ3Lei7cSJqHDPiKJCKFIF2c87YDfmCvAJke8QtE7IzjYDs7UFkTCM4ox+ph2bERUrxZbSCyEkHdjIZpKuMJfYWja/jgMqTMxdyOH9y8JLFbZsSXDIXDwqBlC6vVyl1fP90M35wuWcNTs6tctfVWVofEFbs="
+  - GITTEST_INVASIVE_FS_SIZE=1
+ matrix:
   - OPTIONS="-DTHREADSAFE=ON -DCMAKE_BUILD_TYPE=Release"
-  - OPTIONS="-DBUILD_CLAR=ON -DBUILD_EXAMPLES=ON"
+  - OPTIONS="-DTHREADSAFE=OFF -DBUILD_EXAMPLES=ON"
 
 matrix:
+ fast_finish: true
+ exclude:
+   - os: osx
+     compiler: gcc
  include:
    - compiler: i586-mingw32msvc-gcc
-     env: OPTIONS="-DBUILD_CLAR=OFF -DWIN32=ON -DMINGW=ON"
+     env: OPTIONS="-DCMAKE_TOOLCHAIN_FILE=../script/toolchain-mingw32.cmake" SKIP_TESTS=1
+     os: linux
+   - compiler: gcc
+     env: COVERITY=1
+     os: linux
+   - compiler: gcc
+     env:
+       - VALGRIND=1
+         OPTIONS="-DBUILD_CLAR=ON -DBUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=Debug"
+     os: linux
+ allow_failures:
+   - env: COVERITY=1
+   - env:
+       - VALGRIND=1
+         OPTIONS="-DBUILD_CLAR=ON -DBUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=Debug"
 
-# Make sure CMake is installed
 install:
- - sudo apt-get update >/dev/null
- - sudo apt-get -q install cmake valgrind
+  - ./script/install-deps-${TRAVIS_OS_NAME}.sh
 
-# Run the Build script
+# Run the Build script and tests
 script:
- - mkdir _build
- - cd _build
- - cmake .. -DCMAKE_INSTALL_PREFIX=../_install $OPTIONS
- - cmake --build . --target install
- - ctest -V .
+ - script/cibuild.sh
 
 # Run Tests
 after_success:
- - valgrind --leak-check=full --show-reachable=yes --suppressions=../libgit2_clar.supp ./libgit2_clar -ionline
+ - if [ "$TRAVIS_OS_NAME" = "linux" -a -n "$VALGRIND" ]; then sudo apt-get -qq install valgrind; fi
+ - if [ "$TRAVIS_OS_NAME" = "linux" -a -n "$VALGRIND" ]; then valgrind --leak-check=full --show-reachable=yes --suppressions=./libgit2_clar.supp _build/libgit2_clar -ionline; fi
 
-# Only watch the development branch
+# Only watch the development and master branches
 branches:
  only:
    - development
+   - master
 
 # Notify development list when needed
 notifications: