blob: d70a1e6f12efe898a9a6f05f05f90134184de7f3 [file] [log] [blame]
# **********************************************************
# Copyright (c) 2017 Google, Inc. All rights reserved.
# **********************************************************
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
#
# * Redistributions of source code must retain the above copyright notice,
# this list of conditions and the following disclaimer.
#
# * Redistributions in binary form must reproduce the above copyright notice,
# this list of conditions and the following disclaimer in the documentation
# and/or other materials provided with the distribution.
#
# * Neither the name of Google, Inc. nor the names of its contributors may be
# used to endorse or promote products derived from this software without
# specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL VMWARE, INC. OR CONTRIBUTORS BE LIABLE
# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
# DAMAGE.
# AppVeyor CI configuration:
notifications:
- provider: Email
to:
- dynamorio-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
# i#2406: Appveyor's global serialization makes it painful to use more than
# one configuration. We no longer build packages with VS2010 and are
# dropping official support for it, meaning we only need to test VS2013 here.
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.
# i#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.
- 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 drgui build.
before_build:
- if "%configuration%"=="2013" call "c:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86
- cd c:\projects\dynamorio
build_script:
- 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 ../suite/runsuite_wrapper.pl travis use_ninja %EXTRA_ARGS%