servo/appveyor.yml
author Alisha <anejaalisha@yahoo.com>
Fri, 31 Mar 2017 17:55:00 -0400
changeset 351491 c46e2ef0d7ed9fd219ab95e0808ce596364e1fd0
parent 343365 a74967bd9c259d869eaad6509fcb378bba99689a
child 353391 68da606d9730302f795a3426eae20a90d6cd7a84
permissions -rw-r--r--
Bug 1346200 - Remove B2G code branches from Telemetry JS modules. r=chutten

version: 1.0.{build}

environment:
  CCACHE_DIR: "%APPVEYOR_BUILD_FOLDER%\\.ccache"
  RUST_BACKTRACE: 1
  # The appveyor image we use has a pretty huge set of things installed... we make the
  # initial PATH something sane so we know what to expect
  PATH: "C:\\windows\\system32;\
    C:\\windows;\
    C:\\windows\\System32\\Wbem;\
    C:\\windows\\System32\\WindowsPowerShell\\v1.0;\
    C:\\ProgramData\\chocolatey\\bin;\
    C:\\Python27;\
    C:\\Python27\\Scripts;\
    C:\\Tools\\PsTools;\
    C:\\Tools\\NuGet3;\
    C:\\Program Files\\Microsoft\\Web Platform Installer\\;\
    C:\\Program Files\\7-Zip;\
    C:\\Program Files\\Mercurial;\
    C:\\Program Files (x86)\\Subversion\\bin;\
    C:\\Program Files (x86)\\CMake\\bin;\
    C:\\Program Files (x86)\\Windows Kits\\10\\Windows Performance Toolkit\\;\
    C:\\Program Files (x86)\\MSBuild\\14.0\\Bin;\
    C:\\Program Files\\Amazon\\AWSCLI\\;\
    C:\\Program Files\\Microsoft Windows Performance Toolkit\\;\
    C:\\Program Files\\LLVM\\bin;\
    C:\\Program Files\\Git LFS;\
    C:\\Program Files\\Git\\cmd;\
    C:\\Program Files\\Git\\usr\\bin;\
    C:\\Program Files\\AppVeyor\\BuildAgent;"
  matrix:
  - TARGET: nightly-x86_64-pc-windows-msvc
  - TARGET: nightly-x86_64-pc-windows-gnu

branches:
  only:
    - master

cache:
  - .servo -> rust-commit-hash, cargo-commit-hash
  - .cargo -> rust-commit-hash, cargo-commit-hash
  - .ccache

install:
  - if %TARGET:*-msvc=msvc%==msvc set BUILD_ENV=msvc
  - if %TARGET:*-gnu=gnu%==gnu set BUILD_ENV=gnu
  - if %BUILD_ENV%==gnu  set PATH=C:\msys64\mingw64\bin;C:\msys64\usr\bin\;%PATH%
  - if %BUILD_ENV%==gnu  set MSYSTEM=MINGW64
  - if %BUILD_ENV%==gnu  set MSYS=winsymlinks=lnk
  - if %BUILD_ENV%==gnu  bash -lc "echo $MSYSTEM; pacman --needed --noconfirm -Sy pacman-mirrors"
  - if %BUILD_ENV%==gnu  bash -lc "pacman --noconfirm -Sy"
  - if %BUILD_ENV%==gnu  bash -lc "pacman -Sy --needed --noconfirm mingw-w64-x86_64-ccache mingw-w64-x86_64-toolchain mingw-w64-x86_64-icu mingw-w64-x86_64-nspr mingw-w64-x86_64-ca-certificates mingw-w64-x86_64-expat mingw-w64-x86_64-cmake tar diffutils patch patchutils make python2-setuptools"
  # Downgrade msys2 build GCC to 5.4.0-1 - https://github.com/servo/servo/issues/12512
  - if %BUILD_ENV%==gnu  set GCC_URL=http://repo.msys2.org/mingw/x86_64/mingw-w64-x86_64-gcc
  - if %BUILD_ENV%==gnu  set GCC_EXT=5.4.0-1-any.pkg.tar.xz
  - if %BUILD_ENV%==gnu  bash -lc "pacman -U --noconfirm $GCC_URL-$GCC_EXT $GCC_URL-ada-$GCC_EXT $GCC_URL-fortran-$GCC_EXT $GCC_URL-libgfortran-$GCC_EXT $GCC_URL-libs-$GCC_EXT $GCC_URL-objc-$GCC_EXT"

# Uncomment these lines to expose RDP access information to the build machine in the build log.
#init:
#  - ps: iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))
#
#on_finish:
#  - ps: $blockRdp = $true; iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))

build_script:
  - if %BUILD_ENV%==gnu  bash -lc "ccache -s"
  - if %BUILD_ENV%==msvc mach build -d -v && mach test-unit
  - if %BUILD_ENV%==gnu  bash -lc "export PATH=/c/Python27:$PATH; export CCACHE=/mingw64/bin/ccache; cd $APPVEYOR_BUILD_FOLDER; ./mach build -d -v && ./mach test-unit"
  - if %BUILD_ENV%==gnu  bash -lc "ccache -s"

test: off