language: cpp

dist: xenial

matrix:
  include:
    - env:
        - LABEL="make gcc LLVM-3.9"
        - LLVM_VERSION=3.9
        - CHECK_FILES="barts-r600--.bc cayman-r600--.bc cedar-r600--.bc cypress-r600--.bc tahiti-amdgcn--.bc amdgcn--amdhsa.bc nvptx--nvidiacl.bc nvptx64--nvidiacl.bc"
      addons:
        apt:
          packages:
            - llvm-3.9-dev
            - clang-3.9
    - env:
        - LABEL="make gcc LLVM-4.0"
        - LLVM_VERSION=4.0
        - CHECK_FILES="barts-r600--.bc cayman-r600--.bc cedar-r600--.bc cypress-r600--.bc tahiti-amdgcn--.bc amdgcn--amdhsa.bc tahiti-amdgcn-mesa-mesa3d.bc nvptx--nvidiacl.bc nvptx64--nvidiacl.bc"
      addons:
        apt:
          packages:
            - llvm-4.0-dev
            - clang-4.0
    - env:
        - LABEL="make gcc LLVM-5.0"
        - LLVM_VERSION=5.0
        - CHECK_FILES="barts-r600--.bc cayman-r600--.bc cedar-r600--.bc cypress-r600--.bc tahiti-amdgcn--.bc amdgcn--amdhsa.bc tahiti-amdgcn-mesa-mesa3d.bc nvptx--nvidiacl.bc nvptx64--nvidiacl.bc"
      addons:
        apt:
          packages:
            - llvm-5.0-dev
            - clang-5.0
    - env:
        - LABEL="make gcc LLVM-6.0"
        - LLVM_VERSION=6.0
        - CHECK_FILES="barts-r600--.bc cayman-r600--.bc cedar-r600--.bc cypress-r600--.bc tahiti-amdgcn--.bc amdgcn--amdhsa.bc tahiti-amdgcn-mesa-mesa3d.bc nvptx--nvidiacl.bc nvptx64--nvidiacl.bc"
      addons:
        apt:
          packages:
            - llvm-6.0-dev
            - clang-6.0
    - env:
        - LABEL="make gcc LLVM-7"
        - LLVM_VERSION=7
        - CHECK_FILES="barts-r600--.bc cayman-r600--.bc cedar-r600--.bc cypress-r600--.bc tahiti-amdgcn--.bc amdgcn--amdhsa.bc tahiti-amdgcn-mesa-mesa3d.bc nvptx--nvidiacl.bc nvptx64--nvidiacl.bc"
        # llvm passes -Werror=date-time which is only supported in gcc-4.9+
        - MATRIX_EVAL="CC=gcc-6 && CXX=g++-6"
      addons:
        apt:
          sources:
            - sourceline: 'deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-7 main'
              key_url: https://apt.llvm.org/llvm-snapshot.gpg.key
            - ubuntu-toolchain-r-test
          packages:
            - libedit-dev
            - g++-6
            # From sources above
            - llvm-7-dev
            - clang-7
    - env:
        - LABEL="make gcc LLVM-8"
        - LLVM_VERSION=8
        - CHECK_FILES="barts-r600--.bc cayman-r600--.bc cedar-r600--.bc cypress-r600--.bc tahiti-amdgcn--.bc amdgcn--amdhsa.bc tahiti-amdgcn-mesa-mesa3d.bc nvptx--nvidiacl.bc nvptx64--nvidiacl.bc"
        # llvm passes -Werror=date-time which is only supported in gcc-4.9+
        - MATRIX_EVAL="CC=gcc-6 && CXX=g++-6"
      addons:
        apt:
          sources:
            - sourceline: 'deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-8 main'
              key_url: https://apt.llvm.org/llvm-snapshot.gpg.key
            - ubuntu-toolchain-r-test
          packages:
            - libedit-dev
            - g++-6
            # From sources above
            - llvm-8-dev
            - clang-8
    - env:
        - LABEL="make gcc LLVM-9"
        - LLVM_VERSION=9
        - CHECK_FILES="barts-r600--.bc cayman-r600--.bc cedar-r600--.bc cypress-r600--.bc tahiti-amdgcn--.bc amdgcn--amdhsa.bc tahiti-amdgcn-mesa-mesa3d.bc nvptx--nvidiacl.bc nvptx64--nvidiacl.bc"
        - MATRIX_EVAL="CC=gcc-6 && CXX=g++-6"
      addons:
        apt:
          sources:
            - sourceline: 'deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-9 main'
              key_url: https://apt.llvm.org/llvm-snapshot.gpg.key
            - ubuntu-toolchain-r-test
          packages:
            - libedit-dev
            - g++-6
            # From sources above
            - llvm-9-dev
            - clang-9
    - env:
        - LABEL="cmake gcc LLVM-3.9"
        - LLVM_VERSION=3.9
        - CHECK_FILES="barts-r600--.bc cayman-r600--.bc cedar-r600--.bc cypress-r600--.bc tahiti-amdgcn--.bc amdgcn--amdhsa.bc nvptx--nvidiacl.bc nvptx64--nvidiacl.bc"
      addons:
        apt:
          packages:
            - llvm-3.9-dev
            - clang-3.9
    - env:
        - LABEL="cmake gcc LLVM-4.0"
        - LLVM_VERSION=4.0
        - CHECK_FILES="barts-r600--.bc cayman-r600--.bc cedar-r600--.bc cypress-r600--.bc tahiti-amdgcn--.bc amdgcn--amdhsa.bc tahiti-amdgcn-mesa-mesa3d.bc nvptx--nvidiacl.bc nvptx64--nvidiacl.bc"
      addons:
        apt:
          packages:
            - llvm-4.0-dev
            - clang-4.0
    - env:
        - LABEL="cmake gcc LLVM-5.0"
        - LLVM_VERSION=5.0
        - CHECK_FILES="barts-r600--.bc cayman-r600--.bc cedar-r600--.bc cypress-r600--.bc tahiti-amdgcn--.bc amdgcn--amdhsa.bc tahiti-amdgcn-mesa-mesa3d.bc nvptx--nvidiacl.bc nvptx64--nvidiacl.bc"
      addons:
        apt:
          packages:
            - llvm-5.0-dev
            - clang-5.0
    - env:
        - LABEL="cmake gcc LLVM-6.0"
        - LLVM_VERSION=6.0
        - CHECK_FILES="barts-r600--.bc cayman-r600--.bc cedar-r600--.bc cypress-r600--.bc tahiti-amdgcn--.bc amdgcn--amdhsa.bc tahiti-amdgcn-mesa-mesa3d.bc nvptx--nvidiacl.bc nvptx64--nvidiacl.bc"
      addons:
        apt:
          packages:
            - llvm-6.0-dev
            - clang-6.0
    - env:
        - LABEL="cmake gcc LLVM-7"
        - LLVM_VERSION=7
        - CHECK_FILES="barts-r600--.bc cayman-r600--.bc cedar-r600--.bc cypress-r600--.bc tahiti-amdgcn--.bc amdgcn--amdhsa.bc tahiti-amdgcn-mesa-mesa3d.bc nvptx--nvidiacl.bc nvptx64--nvidiacl.bc"
        # llvm passes -Werror=date-time which is only supported in gcc-4.9+
        - MATRIX_EVAL="CC=gcc-6 && CXX=g++-6"
      addons:
        apt:
          sources:
            - sourceline: 'deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-7 main'
              key_url: https://apt.llvm.org/llvm-snapshot.gpg.key
            - ubuntu-toolchain-r-test
          packages:
            - libedit-dev
            - g++-6
            # From sources above
            - llvm-7-dev
            - clang-7
    - env:
        - LABEL="cmake gcc LLVM-8"
        - LLVM_VERSION=8
        - CHECK_FILES="barts-r600--.bc cayman-r600--.bc cedar-r600--.bc cypress-r600--.bc tahiti-amdgcn--.bc amdgcn--amdhsa.bc tahiti-amdgcn-mesa-mesa3d.bc nvptx--nvidiacl.bc nvptx64--nvidiacl.bc"
        # llvm passes -Werror=date-time which is only supported in gcc-4.9+
        - MATRIX_EVAL="CC=gcc-6 && CXX=g++-6"
      addons:
        apt:
          sources:
            - sourceline: 'deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-8 main'
              key_url: https://apt.llvm.org/llvm-snapshot.gpg.key
            - ubuntu-toolchain-r-test
          packages:
            - libedit-dev
            - g++-6
            # From sources above
            - llvm-8-dev
            - clang-8
    - env:
        - LABEL="cmake gcc LLVM-9"
        - LLVM_VERSION=9
        - CHECK_FILES="barts-r600--.bc cayman-r600--.bc cedar-r600--.bc cypress-r600--.bc tahiti-amdgcn--.bc amdgcn--amdhsa.bc tahiti-amdgcn-mesa-mesa3d.bc nvptx--nvidiacl.bc nvptx64--nvidiacl.bc"
        - MATRIX_EVAL="CC=gcc-6 && CXX=g++-6"
      addons:
        apt:
          sources:
            - sourceline: 'deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-9 main'
              key_url: https://apt.llvm.org/llvm-snapshot.gpg.key
            - ubuntu-toolchain-r-test
          packages:
            - libedit-dev
            - g++-6
            # From sources above
            - llvm-9-dev
            - clang-9

before_install:
    - eval "${MATRIX_EVAL}"
    - export LLVM_CONFIG="llvm-config-${LLVM_VERSION}"

script:
  - if $(echo $LABEL | grep cmake > /dev/null) ; then
        mkdir built_libs && cd built_libs && cmake .. -DLLVM_CONFIG=$LLVM_CONFIG && make -j4 && cd .. ;
    else
        $PYTHON ./configure.py --with-llvm-config=$LLVM_CONFIG --with-cxx-compiler=$CXX && make -j4;
    fi
  - ret=0;
    for f in $CHECK_FILES; do
        ./check_external_calls.sh built_libs/$f || ret=1;
    done;
    test $ret -eq 0
