language: cpp

env:
  global:
    - OMP_NUM_THREADS=4

matrix:
  include:
    - os: linux
      compiler: gcc
      addons:
        apt:
          packages:
            - libblas-dev
            - liblapack-dev
            - python-numpy
            - python-dev
            - swig
    - os: linux
      compiler: gcc
      addons:
        apt:
          packages:
            - libatlas-base-dev
            - liblapack-dev
            - python-numpy
            - python-dev
            - swig
    - os: linux
      compiler: gcc
      addons:
        apt:
          packages:
            - libopenblas-dev
            - liblapack-dev
            - python-numpy
            - python-dev
            - swig
    - os: linux
      compiler: clang
      addons:
        apt:
          packages:
            - libopenblas-dev
            - liblapack-dev
            - python-numpy
            - python-dev
            - swig
      env:
        # NOTE: Hack, c.f. https://github.com/travis-ci/travis-ci/issues/8613
        - LD_LIBRARY_PATH="/usr/local/clang/lib"
    - os: osx
      osx_image: xcode9.3
      env:
        - HOMEBREW_NO_AUTO_UPDATE=1
        - MATRIX_EVAL="brew install gcc@6 numpy swig; brew link --overwrite gcc@6; export CC=gcc-6 CXX=g++-6"
    - os: osx
      osx_image: xcode9.3
      env:
        - HOMEBREW_NO_AUTO_UPDATE=1
        - MATRIX_EVAL="brew install llvm numpy swig; brew link --overwrite llvm; export CC=/usr/local/opt/llvm/bin/clang CXX=/usr/local/opt/llvm/bin/clang++"
        - LDFLAGS="-L/usr/local/opt/llvm/lib"
        - CPPFLAGS="-I/usr/local/opt/llvm/include"

before_install:
  - eval "$MATRIX_EVAL"

install:
  - aclocal
  - autoconf
  - ./configure
  - make

script:
  - make test
