.travis.yml
author sheepluva
Sat, 16 Jan 2016 19:11:21 +0100
changeset 11514 5d804405964d
parent 11504 df336149cc2b
child 11587 cf83d9cb5590
permissions -rw-r--r--
fix script for resolving git commit id to hg commit id (github page format changed; hw hg repo location too)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
9915
67c9bd84f941 Added simple travis file
Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
parents:
diff changeset
     1
language: c
11410
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
     2
os:
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
     3
  - linux
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
     4
  - osx
9915
67c9bd84f941 Added simple travis file
Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
parents:
diff changeset
     5
branches:
11410
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
     6
  only:
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
     7
    master
9915
67c9bd84f941 Added simple travis file
Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
parents:
diff changeset
     8
compiler:
67c9bd84f941 Added simple travis file
Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
parents:
diff changeset
     9
  - gcc
67c9bd84f941 Added simple travis file
Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
parents:
diff changeset
    10
  - clang
67c9bd84f941 Added simple travis file
Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
parents:
diff changeset
    11
env:
9935
491f661a4e57 add more travis tests
koda
parents: 9915
diff changeset
    12
  - BUILD_ARGS="-DCMAKE_BUILD_TYPE=Release"
9915
67c9bd84f941 Added simple travis file
Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
parents:
diff changeset
    13
  - BUILD_ARGS="-DCMAKE_BUILD_TYPE=Debug"
11343
0bff27d8d18f travis: Trim down the number of tests
Vittorio Giovara <vittorio.giovara@gmail.com>
parents: 10664
diff changeset
    14
  - BUILD_ARGS="-DNOSERVER=1 -DBUILD_ENGINE_C=1"
0bff27d8d18f travis: Trim down the number of tests
Vittorio Giovara <vittorio.giovara@gmail.com>
parents: 10664
diff changeset
    15
  - BUILD_ARGS="-DNOSERVER=1 -DNOVIDEOREC=1 -DNOPNG=1"
0bff27d8d18f travis: Trim down the number of tests
Vittorio Giovara <vittorio.giovara@gmail.com>
parents: 10664
diff changeset
    16
  - BUILD_ARGS="-DNOSERVER=1 -DLUA_SYSTEM=0 -DPHYSFS_SYSTEM=0"
11410
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    17
before_install: |
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    18
  if [ "$TRAVIS_OS_NAME" == "linux" ]; then
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    19
    sudo add-apt-repository -y ppa:zoogie/sdl2-snapshots
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    20
    sudo apt-get update -qq
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    21
  elif [ "$TRAVIS_OS_NAME" == "osx" ]; then
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    22
    brew update --all
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    23
  fi
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    24
install: |
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    25
  if [ "$TRAVIS_OS_NAME" == "linux" ]; then
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    26
    sudo apt-get install debhelper cmake dpkg-dev libqt4-dev qt4-qmake libphysfs-dev libsdl2-dev libsdl2-ttf-dev libsdl2-mixer-dev libsdl2-image-dev libsdl2-net-dev bzip2 ghc libghc-mtl-dev libghc-parsec3-dev libghc-bytestring-show-dev libghc-vector-dev libghc-zlib-dev libghc-random-dev libghc-stm-dev libghc-network-dev libghc-dataenc-dev libghc-hslogger-dev libghc-utf8-string-dev libghc-sha-dev libghc-entropy-dev liblua5.1-0-dev imagemagick fpc fp-compiler fp-units-misc libpng-dev fp-units-gfx libavcodec-dev libavformat-dev libglew1.6-dev
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    27
  elif [ "$TRAVIS_OS_NAME" == "osx" ]; then
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    28
    brew install fpc glew qt physfs lua51 sdl2 sdl2_image sdl2_net sdl2_ttf ffmpeg ghc cabal-install
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    29
    brew install sdl2_mixer --with-vorbis
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    30
    # use cabal install haskell deps, pas2c ones are covered by server
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    31
    if [[ "$BUILD_ARGS" != *"NOSERVER"* ]]; then
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    32
      cabal update
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    33
      cabal install --only-dependencies gameServer/hedgewars-server.cabal
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    34
    fi
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    35
    if [[ "$BUILD_ARGS" == *"BUILD_ENGINE_C"* ]]; then
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    36
      cabal update
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    37
      cabal install --only-dependencies tools/pas2c/pas2c.cabal
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    38
    fi
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    39
    # avoid installing Sparkle, add default unit path
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    40
    export BUILD_ARGS="$BUILD_ARGS -DNOAUTOUPDATE=1 -DCMAKE_Pascal_FLAGS=-Fu/usr/local/lib/fpc/$(fpc -iW)/units/x86_64-darwin/*/"
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    41
  fi
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    42
before_script:
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    43
  - mkdir build && cd build && cmake $BUILD_ARGS ..
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    44
script:
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    45
  - make VERBOSE=1
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    46
after_success: |
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    47
  if [ "$TRAVIS_OS_NAME" == "linux" ]; then
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    48
    make test_verbose
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    49
  elif [ "$TRAVIS_OS_NAME" == "osx" ]; then
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    50
    make install
1b9e183841e7 travis: Enable OSX tests
Vittorio Giovara <vittorio@vimeo.com>
parents: 11393
diff changeset
    51
  fi
9915
67c9bd84f941 Added simple travis file
Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
parents:
diff changeset
    52
notifications:
10664
20ec6af4fb87 Use notice and skip join on irc
Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
parents: 10559
diff changeset
    53
  email: false
9915
67c9bd84f941 Added simple travis file
Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
parents:
diff changeset
    54
  irc:
67c9bd84f941 Added simple travis file
Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
parents:
diff changeset
    55
    channels:
9936
a9fe8db625d0 enable travis bot
koda
parents: 9935
diff changeset
    56
      - "chat.freenode.net#hedgewars"
9939
462b644f415c less spam
koda
parents: 9936
diff changeset
    57
    template:
462b644f415c less spam
koda
parents: 9936
diff changeset
    58
      - "hw-build #%{build_number} (%{commit} by %{author}): %{message}"
462b644f415c less spam
koda
parents: 9936
diff changeset
    59
      - "See details at %{build_url}"
10664
20ec6af4fb87 Use notice and skip join on irc
Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
parents: 10559
diff changeset
    60
    on_success: change
20ec6af4fb87 Use notice and skip join on irc
Gianfranco Costamagna <costamagnagianfranco@yahoo.it>
parents: 10559
diff changeset
    61
    on_failure: always
11504
df336149cc2b travis: don't skip joins because that would require #hedgewars to allow messages from outside the channel
sheepluva
parents: 11410
diff changeset
    62
    skip_join: false