# Travis-CI Build for libgit2
# see travis-ci.org for details

# As CMake is not officially supported we use erlang VMs
language: c

compiler:
  - gcc
  - clang

# Settings to try
env:
  - OPTIONS="-DTHREADSAFE=ON -DCMAKE_BUILD_TYPE=Release"
  - OPTIONS="-DBUILD_CLAR=ON -DBUILD_EXAMPLES=ON"

matrix:
 include:
   - compiler: i586-mingw32msvc-gcc
     env: OPTIONS="-DBUILD_CLAR=OFF -DWIN32=ON -DMINGW=ON"

# Make sure CMake is installed
install:
 - sudo apt-get update >/dev/null
 - sudo apt-get -q install cmake valgrind

# Run the Build script
script:
 - mkdir _temp
 - git init --bare _temp/test.git
 - git daemon --listen=localhost --export-all --enable=receive-pack --base-path=_temp _temp 2>/dev/null &
 - export GITTEST_REMOTE_URL="git://localhost/test.git"
 - mkdir _build
 - cd _build
 - cmake .. -DCMAKE_INSTALL_PREFIX=../_install $OPTIONS
 - cmake --build . --target install
 - ctest -V .

# Run Tests
after_success:
 - valgrind --leak-check=full --show-reachable=yes --suppressions=../libgit2_clar.supp ./libgit2_clar -ionline

# Only watch the development branch
branches:
 only:
   - development

# Notify development list when needed
notifications:
 irc:
  channels:
    - irc.freenode.net#libgit2
  on_success: change
  on_failure: always
  use_notice: true
  skip_join: true
 campfire:
  on_success: always
  on_failure: always
  rooms:
   - secure: "sH0dpPWMirbEe7AvLddZ2yOp8rzHalGmv0bYL/LIhVw3JDI589HCYckeLMSB\n3e/FeXw4bn0EqXWEXijVa4ijbilVY6d8oprdqMdWHEodng4KvY5vID3iZSGT\nxylhahO1XHmRynKQLOAvxlc93IlpVW38vQfby8giIY1nkpspb2w="
