# Use 'generic' to be able to override CC/CXX for clang
language: generic

matrix:
  include:
    - compiler: mingw-x86
      addons:
        apt:
          packages:
            - g++-mingw-w64-i686
            - mingw-w64-i686-dev
      script:
        - CROSS_COMPILE=i686-w64-mingw32- CFLAGS="-D_WIN32_WINNT=0x0501" ./configure --disable-d3d8 --disable-d3d9 --disable-d3d10 --disable-d3d11 --disable-d3d12 && make HAVE_ZLIB=1 HAVE_BUILTINZLIB=1 HAVE_RPNG=1
    - compiler: mingw-x64
      addons:
        apt:
          packages:
            - g++-mingw-w64-x86-64
            - mingw-w64-x86-64-dev
      script:
        - CROSS_COMPILE=x86_64-w64-mingw32- CFLAGS="-D_WIN32_WINNT=0x0501" ./configure --disable-d3d8 --disable-d3d9 --disable-d3d10 --disable-d3d11 --disable-d3d12 && make HAVE_ZLIB=1 HAVE_BUILTINZLIB=1 HAVE_RPNG=1
    - compiler: gcc
    - compiler: clang
      addons:
        # Install a more recent clang than the default
        apt:
          sources:
            - ubuntu-toolchain-r-test
            - llvm-toolchain-precise-3.8
          packages:
            - clang-3.8
      env: COMPILER_NAME=clang-3.8 CXX=clang++-3.8 CC=clang-3.8
    - os: osx
      osx_image: xcode7.3
      script:
          - xcodebuild -target RetroArch -configuration Release -project pkg/apple/RetroArch.xcodeproj

script:
  - ./configure
  - make

env:
  global:
   - MAKEFLAGS="-j2"
   - secure: "qc91ReC3OlzSh2gFaSH6TYzC2qIQvgA2AZff6J13eaH8xijAhuMzttZ0rMQJ0DWCIhPeUb0kIzVyaGoe4MwPALzpw1C1AznIWiZJ53HN+hWCOcS/af7YVPk6HPySnwqrS+Wv3AIIvIKFV2mxv21F/JbT/N+pArlRrp904Xj+KPo="
addons:
  apt:
    packages:
      - curl
      - pkg-config
      - libglu1-mesa-dev
      - freeglut3-dev
      - mesa-common-dev
      - libsdl1.2-dev
      - libsdl-image1.2-dev
      - libsdl-mixer1.2-dev
      - libsdl-ttf2.0-dev
      - libusb-1.0-0-dev
  coverity_scan:
    project:
      name: "RetroArch"
      description: "RetroArch is the official reference frontend for the libretro API."
    notification_email: libretro@gmail.com
    build_command_prepend: "./configure; make clean"
    build_command:   "make"
    branch_pattern: coverity_scan
notifications:
  email: false