Skip to content

Commit

Permalink
added in appveyor support for VS2017
Browse files Browse the repository at this point in the history
Additional:
* added support for mingwx64
* fixed cmake issue with not found compiler name of VS2017
  • Loading branch information
acki-m committed Mar 18, 2017
1 parent 437a552 commit 5120097
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 43 deletions.
77 changes: 34 additions & 43 deletions .appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,25 +29,41 @@ shallow_clone: true

environment:
matrix:
- COMPILER: MSVC_12
- COMPILER: MSVC_15
ARCHITECTURE: x86
TESTS_ONLY: true
- COMPILER: MSVC_12
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
- COMPILER: MSVC_15
ARCHITECTURE: x64
TESTS_ONLY: true
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
- COMPILER: MSVC_14
ARCHITECTURE: x86
TESTS_ONLY: true
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
- COMPILER: MSVC_14
ARCHITECTURE: x64
TESTS_ONLY: true
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
- COMPILER: MSVC_12
ARCHITECTURE: x86
TESTS_ONLY: true
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013
- COMPILER: MSVC_12
ARCHITECTURE: x64
TESTS_ONLY: true
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013
- COMPILER: MINGW_482
ARCHITECTURE: x86
TESTS_ONLY: true
- COMPILER: MINGW_W64
ARCHITECTURE: x64
TESTS_ONLY: true
- COMPILER: MSVC_14
ARCHITECTURE: x64
BUILD_EXAMPLES: true
BUILD_BENCHMARKS: true
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015



Expand All @@ -65,12 +81,18 @@ install:
#######################################################################################
# Install Ninja
#######################################################################################
- set NINJA_URL="https://github.com/ninja-build/ninja/releases/download/v1.6.0/ninja-win.zip"
- set NINJA_URL="https://github.com/ninja-build/ninja/releases/download/v1.7.2/ninja-win.zip"
- appveyor DownloadFile %NINJA_URL% -FileName ninja.zip
- 7z x ninja.zip -oC:\projects\deps\ninja > nul
- set PATH=C:\projects\deps\ninja;%PATH%
- ninja --version

#######################################################################################
# Install MinGW
#######################################################################################
- IF "%COMPILER%" == "MINGW_W64" appveyor-retry appveyor DownloadFile http://downloads.sourceforge.net/mingw-w64/x86_64-5.3.0-release-posix-seh-rt_v4-rev0.7z
- IF "%COMPILER%" == "MINGW_W64" 7z x x86_64-5.3.0-release-posix-seh-rt_v4-rev0.7z -oc:\ > nul

#######################################################################################
# CMake
#######################################################################################
Expand All @@ -82,48 +104,17 @@ install:
- set BOOST_ROOT=C:\Libraries\boost_1_62_0
- set BOOST_LIBRARYDIR=C:\Libraries\boost_1_62_0\lib64-msvc-14.0


before_build:
- ps: >-
function Get-Batchfile ($file) {
$cmd = "`"$file`" & set"
cmd /c $cmd | Foreach-Object {
$p, $v = $_.split('=')
Set-Item -path env:$p -value $v
}
}
function VisualStudioVars($version, $envVariable, $batFile)
{
$key = "HKLM:SOFTWARE\Wow6432Node\Microsoft\VisualStudio\" + $version
$VsKey = Get-ItemProperty $key
$VsInstallPath = [System.IO.Path]::GetDirectoryName($VsKey.InstallDir)
$VsInstallDir = [System.IO.Path]::GetDirectoryName($VsInstallPath)
$VsToolsDir = [System.IO.Path]::Combine($VsInstallDir, "Tools")
$vsComntools = (Get-ChildItem env:$envVariable).Value
$batchFile = [System.IO.Path]::Combine($vsComntools, $batFile)
Get-Batchfile $batchFile
}
if ($env:ARCHITECTURE -eq "x86")
{
switch ($env:COMPILER)
{
"MSVC_12" { VisualStudioVars "12.0" "VS120COMNTOOLS" "vsvars32.bat" }
"MSVC_14" { VisualStudioVars "14.0" "VS140COMNTOOLS" "vsvars32.bat" }
"MINGW_482" { $env:PATH = "C:\Qt\Tools\mingw482_32\bin;$($env:PATH)" }
default { write-host "unknown compiler for x86" }
}
}
else
{
switch ($env:COMPILER)
{
"MSVC_12" { VisualStudioVars "12.0" "VS120COMNTOOLS" "..\..\VC\bin\x86_amd64\vcvarsx86_amd64.bat" }
"MSVC_14" { VisualStudioVars "14.0" "VS140COMNTOOLS" "..\..\VC\bin\x86_amd64\vcvarsx86_amd64.bat" }
default { write-host "unknown compiler for x64" }
}
}
- cmd: cd C:\projects\rttr

- IF "%ARCHITECTURE%" == "x86" IF "%COMPILER%" == "MSVC_15" call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\vsdevcmd.bat" -arch=x86 -host_arch=x64
- IF "%ARCHITECTURE%" == "x64" IF "%COMPILER%" == "MSVC_15" call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\vsdevcmd.bat" -arch=x64 -host_arch=x64
- IF "%ARCHITECTURE%" == "x86" IF "%COMPILER%" == "MSVC_14" call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\vsvars32.bat"
- IF "%ARCHITECTURE%" == "x64" IF "%COMPILER%" == "MSVC_14" call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_amd64\vcvarsx86_amd64.bat"
- IF "%ARCHITECTURE%" == "x86" IF "%COMPILER%" == "MSVC_12" call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\vsvars32.bat"
- IF "%ARCHITECTURE%" == "x64" IF "%COMPILER%" == "MSVC_12" call "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64\vcvarsx86_amd64.bat"
- IF "%ARCHITECTURE%" == "x86" IF "%COMPILER%" == "MINGW_482" set PATH=C:\Qt\Tools\mingw482_32\bin;%PATH%
- IF "%ARCHITECTURE%" == "x64" IF "%COMPILER%" == "MINGW_W64" set PATH=C:\mingw64\bin;%PATH%

#######################################################################################
# we can use Ninja for all configurations
#######################################################################################
Expand Down
2 changes: 2 additions & 0 deletions CMake/utility.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -451,6 +451,8 @@ function(getCompilerName _COMPILER_NAME)
set(COMPILER_NAME "vs2013")
elseif(MSVC_VERSION EQUAL 1900)
set(COMPILER_NAME "vs2015")
elseif(MSVC_VERSION EQUAL 1910)
set(COMPILER_NAME "vs2017")
elseif(CMAKE_COMPILER_IS_GNUCXX)
set(COMPILER_NAME "gcc")
if(WIN32)
Expand Down

0 comments on commit 5120097

Please # to comment.