language: c
dist: trusty
sudo: required
# don't test master, smoke and coverity branches
branches:
    except:
        - master
        - smoke
        - /^coverity-tested\/.*/
        - /^stable-.*/
matrix:
    include:
        - compiler: gcc
          env: XEN_TARGET_ARCH=x86_64 debug=n
        - compiler: gcc
          env: XEN_TARGET_ARCH=x86_64 XEN_CONFIG_EXPERT=y RANDCONFIG=y debug=n
        - compiler: gcc-5
          env: XEN_TARGET_ARCH=x86_64 debug=n
        - compiler: gcc
          env: XEN_TARGET_ARCH=x86_64 debug=y
        - compiler: gcc-5
          env: XEN_TARGET_ARCH=x86_64 debug=y
        - compiler: clang
          env: XEN_TARGET_ARCH=x86_64 clang=y debug=n
        - compiler: clang
          env: XEN_TARGET_ARCH=x86_64 clang=y debug=y
        - compiler: gcc
          env: XEN_TARGET_ARCH=arm32 CROSS_COMPILE=arm-linux-gnueabihf- debug=n
        - compiler: gcc
          env: XEN_TARGET_ARCH=arm32 CROSS_COMPILE=arm-linux-gnueabihf- XEN_CONFIG_EXPERT=y RANDCONFIG=y debug=n
        - compiler: gcc
          env: XEN_TARGET_ARCH=arm32 CROSS_COMPILE=arm-linux-gnueabihf- debug=y
        - compiler: gcc
          env: XEN_TARGET_ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- debug=n
        - compiler: gcc
          env: XEN_TARGET_ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- XEN_CONFIG_EXPERT=y RANDCONFIG=y debug=n
        - compiler: gcc
          env: XEN_TARGET_ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- debug=y
addons:
    apt:
        sources:
            - ubuntu-toolchain-r-test
        packages:
            - zlib1g-dev
            - libncurses5-dev
            - libssl-dev
            - python2.7-dev
            - xorg-dev
            - uuid-dev
            - libyajl-dev
            - libaio-dev
            - libglib2.0-dev
            - libpixman-1-dev
            - pkg-config
            - flex
            - bison
            - gettext
            - acpica-tools
            - bin86
            - bcc
            - libc6-dev-i386
            - libnl-3-dev
            - ocaml-nox
            - libfindlib-ocaml-dev
            - markdown
            - transfig
            - pandoc
            - gcc-arm-linux-gnueabihf
            - gcc-aarch64-linux-gnu
            - gcc-5
            - g++-5
            - seabios
            - checkpolicy
            - ghostscript
# we must set CXX manually instead of using 'language: cpp' due to
# travis-ci/travis-ci#3871
before_script:
    - export CXX=${CC/cc/++}
    - export CXX=${CXX/clang/clang++}
script:
    - ./scripts/travis-build
after_script:
    - cat xen/.config
    - cat tools/config.log
    - cat docs/config.log
notifications:
    irc:
        channels:
            - secure: "mPIFllF6eW3F3talvccMy55Tfcid66IPkkXZYCxDKRF2DQrMyvmg4qt0xN6gGZsdfOBMNr+/YfO5PxusBCUkVdBGBzd3QhFoIDYZbJZgzVh3yNDQ+x4L7p1cZNrwJ2loMmSX6KxGKZxZX9NRStrTUkVyp0jGZB9xkwT8Rl6jXj7EQkgQ95K1Wqafx0ycLfyDQmzX9bzi/3KIBFKMGmK18AFMh+R30zK0FPUUsS4+VhepIkVqO5puU3OYePd34wRnWlt7hjU2Vj5vYmVXp3UOE+E8/Lf9IGVAhitDi+EC35b8zo2BHJ9z6xZARYPvfSqbXcXV20RycabI+e3ufZJ40eatssly5QjWH+HhKS42C4gV1psmQhkTCNCM62Ty5uf6R1hsZJQuiOZrc8ojdje8ey2MxJk4R+Xz+Igg1/kD6+WX9/Y6Y3iRuj5HL1xCYfpTbK4mC7ofw0SofW2aAGI68jHpCqJdQCDzMl6748PlDMM0eKe0MPKIEenYHcoBnOEC/jciXUDa6wduV75EEip7oq2i+m44MopcsEDTpdliH077GhKapF0ActjvBTLpyoTRSfkKm0NZol/dgwd3PGG/mY8clIoeXWRb4opk93ejPC967KmSNC68SlfwaJmFZS5T9vAgb6k7r6i9G3dmYtrLKzws8IV1CPWqLzk58+v4pRk="
