From fdcc7ae4ce26823a4d97c23478f3b49c186250cf Mon Sep 17 00:00:00 2001 From: Matt Oliver Date: Mon, 11 Jul 2016 03:04:12 +1000 Subject: [PATCH] project: Update AppVeyor CI to use gitlink. --- SMP/appveyor.yml | 59 +++++++++++++++++++++++++++++++++++++-------- SMP/libx265.sln | 43 +++++++++++++++++---------------- SMP/libx265.vcxproj | 2 ++ 3 files changed, 73 insertions(+), 31 deletions(-) diff --git a/SMP/appveyor.yml b/SMP/appveyor.yml index 0e3b9ecfdc..df94cebd05 100644 --- a/SMP/appveyor.yml +++ b/SMP/appveyor.yml @@ -4,29 +4,51 @@ branches: only: - master skip_non_tags: true -configuration: Release+ReleaseDLL shallow_clone: true +configuration: Release+ReleaseDLL + +platform: x86+x64 + environment: matrix: - - MSVC_VER: 14 - MSVC_VER: 12 - + - MSVC_VER: 14 + +install: +# Install GitLink +- cmd: choco install gitlink + before_build: +# Create build project to compile all configurations and platforms at once - ps: >- $script = @' - + - + + - + + + %(PlatformList.Identity) + + + + Configuration=%(ConfigurationList.Identity);Platform=$(CurrentPlatform);OutDir=$(MSBuildThisFileDirectory)build_out\ + + + + + + + %(PlatformList.Identity) - + @@ -35,16 +57,33 @@ before_build: $script = $script -replace "APPVEYOR_PROJECT_NAME", "$env:APPVEYOR_PROJECT_NAME" + $script = $script -replace "APPVEYOR_REPO_NAME", "$env:APPVEYOR_REPO_NAME" + + $script = $script -replace "APPVEYOR_REPO_COMMIT", "$env:APPVEYOR_REPO_COMMIT" + $script | Out-File build.vcxproj + +# Backup platform so it is not affected by vcvars +- cmd: SET PLATFORMBACK=%PLATFORM% + +# Setup msvc environment for required compiler version (specified by MSVC_VER) - ps: $env:VSCOMNTOOLS=(Get-Content ("env:VS" + "$env:MSVC_VER" + "0COMNTOOLS")) - cmd: call "%VSCOMNTOOLS%\..\..\VC\vcvarsall.bat" amd64 + +# Reset platform +- cmd: SET PLATFORM=%PLATFORMBACK% + +# Download and install yasm integration - ps: (New-Object Net.WebClient).DownloadFile('http://www.tortall.net/projects/yasm/releases/vsyasm-1.3.0-win64.zip', "$pwd\yasm.zip") -- ps: Add-Type -A 'System.IO.Compression.FileSystem'; [IO.Compression.ZipFile]::ExtractToDirectory("$pwd\yasm.zip", "$pwd\TempYASMUnpack"); +- ps: Add-Type -A 'System.IO.Compression.FileSystem'; [IO.Compression.ZipFile]::ExtractToDirectory("$pwd\yasm.zip", "$pwd\TempYASMUnpack") - ps: Move-Item -Force "TempYASMUnpack\*.exe" "$env:VSCOMNTOOLS\..\..\VC\bin" - ps: $env:MSBUILDDIR=((Get-Command msbuild.exe).Path | Split-Path -parent) - ps: (Get-Content "$pwd\TempYASMUnpack\vsyasm.props") -replace '\$\(Platform\)', 'win$(PlatformArchitecture)' | Set-Content "$pwd\TempYASMUnpack\vsyasm.props" -- ps: Move-Item -Force "TempYASMUnpack\*.*" "$env:MSBUILDDIR\..\..\..\Microsoft.Cpp\v4.0\V${env:MSVC_VER}0\BuildCustomizations" - +- ps: Copy-Item -Force "TempYASMUnpack\*.*" "$env:MSBUILDDIR\..\..\..\Microsoft.Cpp\v4.0\V${env:MSVC_VER}0\BuildCustomizations" +# Make additional copy so its available to GitLink (which currently looks in the wrong location) +- ps: Copy-Item -Force "TempYASMUnpack\*.*" "$env:MSBUILDDIR\..\..\..\Microsoft.Cpp\v4.0\BuildCustomizations" +- ps: Copy-Item -Force "TempYASMUnpack\*.*" "$env:MSBUILDDIR\..\..\..\Microsoft.Cpp\v4.0\V120\BuildCustomizations" + build: project: build.vcxproj parallel: true diff --git a/SMP/libx265.sln b/SMP/libx265.sln index 7b1aa9affc..fe65a23b88 100644 --- a/SMP/libx265.sln +++ b/SMP/libx265.sln @@ -1,6 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 - +VisualStudioVersion = 12.0.30723.0 +MinimumVisualStudioVersion = 10.0.40219.1 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libx265", "libx265.vcxproj", "{2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "program", "program", "{20A224A6-544D-49B2-B0B0-4B5B5FF9689D}" @@ -12,48 +13,48 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "x265cli", "x265cli.vcxproj" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Win32 = Debug|Win32 Debug|x64 = Debug|x64 - DebugDLL|Win32 = DebugDLL|Win32 + Debug|x86 = Debug|x86 DebugDLL|x64 = DebugDLL|x64 - Release|Win32 = Release|Win32 + DebugDLL|x86 = DebugDLL|x86 Release|x64 = Release|x64 - ReleaseDLL|Win32 = ReleaseDLL|Win32 + Release|x86 = Release|x86 ReleaseDLL|x64 = ReleaseDLL|x64 - ReleaseLTO|Win32 = ReleaseLTO|Win32 + ReleaseDLL|x86 = ReleaseDLL|x86 ReleaseLTO|x64 = ReleaseLTO|x64 + ReleaseLTO|x86 = ReleaseLTO|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.Debug|Win32.ActiveCfg = Debug|Win32 - {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.Debug|Win32.Build.0 = Debug|Win32 {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.Debug|x64.ActiveCfg = Debug|x64 {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.Debug|x64.Build.0 = Debug|x64 - {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.DebugDLL|Win32.ActiveCfg = DebugDLL|Win32 - {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.DebugDLL|Win32.Build.0 = DebugDLL|Win32 + {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.Debug|x86.ActiveCfg = Debug|Win32 + {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.Debug|x86.Build.0 = Debug|Win32 {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.DebugDLL|x64.ActiveCfg = DebugDLL|x64 {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.DebugDLL|x64.Build.0 = DebugDLL|x64 - {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.Release|Win32.ActiveCfg = Release|Win32 - {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.Release|Win32.Build.0 = Release|Win32 + {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.DebugDLL|x86.ActiveCfg = DebugDLL|Win32 + {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.DebugDLL|x86.Build.0 = DebugDLL|Win32 {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.Release|x64.ActiveCfg = Release|x64 {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.Release|x64.Build.0 = Release|x64 - {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.ReleaseDLL|Win32.ActiveCfg = ReleaseDLL|Win32 - {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.ReleaseDLL|Win32.Build.0 = ReleaseDLL|Win32 + {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.Release|x86.ActiveCfg = Release|Win32 + {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.Release|x86.Build.0 = Release|Win32 {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.ReleaseDLL|x64.ActiveCfg = ReleaseDLL|x64 {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.ReleaseDLL|x64.Build.0 = ReleaseDLL|x64 - {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.ReleaseLTO|Win32.ActiveCfg = ReleaseLTO|Win32 - {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.ReleaseLTO|Win32.Build.0 = ReleaseLTO|Win32 + {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.ReleaseDLL|x86.ActiveCfg = ReleaseDLL|Win32 + {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.ReleaseDLL|x86.Build.0 = ReleaseDLL|Win32 {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.ReleaseLTO|x64.ActiveCfg = ReleaseLTO|x64 {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.ReleaseLTO|x64.Build.0 = ReleaseLTO|x64 - {23B73CAF-85E7-442F-AACA-D0ECDDA50E1A}.Debug|Win32.ActiveCfg = Debug|Win32 + {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.ReleaseLTO|x86.ActiveCfg = ReleaseLTO|Win32 + {2CF9B09C-DC32-46BD-BF78-5B00B7E4ED00}.ReleaseLTO|x86.Build.0 = ReleaseLTO|Win32 {23B73CAF-85E7-442F-AACA-D0ECDDA50E1A}.Debug|x64.ActiveCfg = Debug|x64 - {23B73CAF-85E7-442F-AACA-D0ECDDA50E1A}.DebugDLL|Win32.ActiveCfg = Debug|Win32 + {23B73CAF-85E7-442F-AACA-D0ECDDA50E1A}.Debug|x86.ActiveCfg = Debug|Win32 {23B73CAF-85E7-442F-AACA-D0ECDDA50E1A}.DebugDLL|x64.ActiveCfg = Debug|x64 - {23B73CAF-85E7-442F-AACA-D0ECDDA50E1A}.Release|Win32.ActiveCfg = Release|Win32 + {23B73CAF-85E7-442F-AACA-D0ECDDA50E1A}.DebugDLL|x86.ActiveCfg = Debug|Win32 {23B73CAF-85E7-442F-AACA-D0ECDDA50E1A}.Release|x64.ActiveCfg = Release|x64 - {23B73CAF-85E7-442F-AACA-D0ECDDA50E1A}.ReleaseDLL|Win32.ActiveCfg = Release|Win32 + {23B73CAF-85E7-442F-AACA-D0ECDDA50E1A}.Release|x86.ActiveCfg = Release|Win32 {23B73CAF-85E7-442F-AACA-D0ECDDA50E1A}.ReleaseDLL|x64.ActiveCfg = Release|x64 - {23B73CAF-85E7-442F-AACA-D0ECDDA50E1A}.ReleaseLTO|Win32.ActiveCfg = Release|Win32 + {23B73CAF-85E7-442F-AACA-D0ECDDA50E1A}.ReleaseDLL|x86.ActiveCfg = Release|Win32 {23B73CAF-85E7-442F-AACA-D0ECDDA50E1A}.ReleaseLTO|x64.ActiveCfg = Release|x64 + {23B73CAF-85E7-442F-AACA-D0ECDDA50E1A}.ReleaseLTO|x86.ActiveCfg = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/SMP/libx265.vcxproj b/SMP/libx265.vcxproj index 0e49fb0359..511a9cac2b 100644 --- a/SMP/libx265.vcxproj +++ b/SMP/libx265.vcxproj @@ -972,6 +972,7 @@ del /f /q $(OutDir)\licenses\x265.txt libx265_10b.lib;libx265_12b.lib;%(AdditionalDependencies) $(OutDir)\lib\x86\;$(SolutionDir)obj\$(Platform)\;%(AdditionalLibraryDirectories) /IGNORE:4006,4221 %(AdditionalOptions) + true $(ProjectDir)\..\common\x86;%(IncludePaths) @@ -1048,6 +1049,7 @@ del /f /q $(OutDir)\licenses\x265.txt libx265_10b.lib;libx265_12b.lib;%(AdditionalDependencies) $(OutDir)\lib\x64\;$(SolutionDir)obj\$(Platform)\;%(AdditionalLibraryDirectories) /IGNORE:4006,4221 %(AdditionalOptions) + true $(ProjectDir)\..\common\x86;%(IncludePaths)