blob: 63e1e205ad91ac75b1d43ee2b5891d05e5d6cce5 [file] [log] [blame]
# **********************************************************
# Copyright (c) 2017 Google, Inc. All rights reserved.
# **********************************************************
# Dr. Memory: the memory debugger
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation;
# version 2.1 of the License, and no later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Library General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
# AppVeyor CI configuration:
notifications:
- provider: Email
to:
- drmemory-devs@googlegroups.com
on_build_success: false
on_build_failure: true
# Unfortunately there's no way to disable emails on pull requests,
# like Travis does, so we try to cut down on the noise by only
# sending out failures.
on_build_status_changed: false
# We don't do a shallow clone of just the source archive as we want to get
# the diff for source file checks.
# We do limit to the last few commits to speed things up:
clone_depth: 10
# Don't run on pushes to feature branches: pull requests cover those.
branches:
only:
- master
platform: x64
image: Visual Studio 2013
build:
verbosity: detailed
# We stick with just one config (we've dropped VS2010 support) to speed
# up the build (xref DRi#2406).
configuration:
- 2013
install:
##################################################
# Install ninja so we have readable output.
- mkdir c:\projects\install
- cd c:\projects\install
- appveyor DownloadFile https://github.com/ninja-build/ninja/releases/download/v1.7.2/ninja-win.zip
- 7z x ninja-win.zip -oc:\projects\install\ninja > nul
- set PATH=c:\projects\install\ninja;%PATH%
##################################################
# Install packages for docs.
# DRi#2616: internet outages have caused builds to spin for tens of minutes, only to fail
# due to chocolatey and fig2dev download errors. We instead ignore errors here and
# continue to build and test anyway.
- choco install --timeout 600 -y doxygen.portable imagemagick.tool ghostscript || true
# The ghostscript package is an install that doesn't add to PATH.
# FIXME i#2145: fig2dev is failing to launch ghostscript, so for now
# we're disabling to get the initial AppVeyor to be green.
#- set PATH=C:\Program Files\gs\gs9.20\bin;%PATH%
# Install fig2dev. DRi#2616: we ignore fig2dev download errors.
- appveyor DownloadFile http://www.winfig.com/WinFIG-Dateien/WinFIG62.zip || true
- 7z x WinFIG62.zip > nul || true
- set PATH=c:\projects\install\WinFig;%PATH%
##################################################
# XXX i#2145: point at Qt5 for testing drheapstat visualizer.
before_build:
- if "%configuration%"=="2013" call "c:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86
- cd c:\projects\drmemory
build_script:
# Unlike Travis, AppVeyor doesn't do a submodule update for us.
- git submodule update --init --recursive
- mkdir build
- cd build
- echo %PATH%
# The perl in c:\perl can't open a pipe so we use cygwin perl.
- c:\cygwin\bin\perl ../tests/runsuite_wrapper.pl travis use_ninja %EXTRA_ARGS%