Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[msvc] Support MSVC 12/14 bindings generation and builds #270

Merged
merged 3 commits into from Aug 9, 2016
Merged
Changes from 1 commit
Commits
File filter...
Filter file types
Jump to…
Jump to file
Failed to load files.

Always

Just for now

Prev

Set up vcvars64 for Visual Studio builds

  • Loading branch information
vvuk committed Aug 9, 2016
commit 32bc9c63a8f693f5e7f95329c6bdaffbcfe84106
@@ -1,27 +1,71 @@
version: 1.0.{build}

environment:
PATH: 'C:\msys64\mingw64\bin;C:\msys64\usr\bin\;%PATH%'
MSYSTEM: 'MSYS'
MSYS: 'winsymlinks=lnk'
# 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:\\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

# Uncomment to enable RDP & wait for exit. Connection info will be printed in the 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'))

# called after cloning, before building
install:
- bash -lc "echo $MSYSTEM; pacman --needed --noconfirm -Sy pacman-mirrors"
- bash -lc "pacman --noconfirm -Sy"
- bash -lc "pacman -Sy --needed --noconfirm git mingw-w64-x86_64-toolchain tar make python2-setuptools"
- bash -lc "easy_install-2.7 pip virtualenv"
- bash -lc "mv /mingw64/bin/python2.exe /mingw64/bin/python2-mingw64.exe"
- bash -lc "mv /mingw64/bin/python2.7.exe /mingw64/bin/python2.7-mingw64.exe"
- ps: Start-FileDownload "http://servo-rust.s3.amazonaws.com/build/MozillaBuildSetup-2.2.0.exe"
- ps: .\MozillaBuildSetup-2.2.0.exe /S | Out-Null
- ps: Start-FileDownload "https://static.rust-lang.org/dist/rust-${env:TARGET}.exe" -FileName "rust-install.exe"
- ps: .\rust-install.exe /VERYSILENT /NORESTART /DIR="C:\rust" | Out-Null
- ps: $env:PATH="$env:PATH;C:\rust\bin"
# I can't make this work with a multi-line script (e.g. via |+ etc.), so we copy the if before every command
- if %TARGET:*-msvc=msvc%==msvc set BUILD_ENV=msvc
- if %TARGET:*-gnu=gnu%==gnu set BUILD_ENV=gnu
- if %BUILD_ENV%==msvc call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\vcvars64.bat"
- if %BUILD_ENV%==msvc copy C:\mozilla-build\yasm\yasm.exe C:\mozilla-build\msys\bin
- if %BUILD_ENV%==msvc copy C:\mozilla-build\mozmake\mozmake.exe C:\mozilla-build\msys\bin
- if %BUILD_ENV%==msvc set MOZTOOLS_PATH=C:\mozilla-build\msys\bin
- if %BUILD_ENV%==msvc set NATIVE_WIN32_PYTHON=C:/Python27/python.exe
- 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 git mingw-w64-x86_64-toolchain tar make python2-setuptools"
- if %BUILD_ENV%==gnu bash -lc "easy_install-2.7 pip virtualenv"
- if %BUILD_ENV%==gnu bash -lc "mv /mingw64/bin/python2.exe /mingw64/bin/python2-mingw64.exe"
- if %BUILD_ENV%==gnu bash -lc "mv /mingw64/bin/python2.7.exe /mingw64/bin/python2.7-mingw64.exe"
- rustc -vV
- cargo -vV

build_script:
- cmd: >-
set MSYSTEM=MINGW64
- echo PATH %PATH%
- echo VSINSTALLDIR %VSINSTALLDIR%
- echo MOZTOOLS_PATH %MOZTOOLS_PATH%
- if %BUILD_ENV%==msvc cd %APPVEYOR_BUILD_FOLDER% && cargo build && cargo test
- if %BUILD_ENV%==gnu bash -lc "cd $APPVEYOR_BUILD_FOLDER; cargo build && cargo test"

bash -lc "cd $APPVEYOR_BUILD_FOLDER; cargo build && cargo test"
ProTip! Use n and p to navigate between commits in a pull request.
You can’t perform that action at this time.