Skip to content

Commit

Permalink
project: Update AppVeyor CI to use gitlink.
Browse files Browse the repository at this point in the history
  • Loading branch information
Sibras committed Jul 10, 2016
1 parent b95e15e commit e582d44
Show file tree
Hide file tree
Showing 3 changed files with 57 additions and 21 deletions.
46 changes: 40 additions & 6 deletions SMP/appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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 = @'
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="Build" ToolsVersion="4.0">
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="GitLink" ToolsVersion="4.0">
<ItemGroup>
<ConfigurationList Condition="'@(ConfigurationList)' == '' and $(Configuration) != ''" Include="$(Configuration.Split('+'))" />
<ConfigurationList Condition="'@(ConfigurationList)' == ''" Include="Release" />
<PlatformList Condition="'@(PlatformList)' == ''" Include="x64;Win32" />
<PlatformList Condition="'@(PlatformList)' == '' and $(Platform) != ''" Include="$(Platform.Split('+'))" />
<PlatformList Condition="'@(PlatformList)' == ''" Include="x64;x86" />
</ItemGroup>
<Target Name="Build" Outputs="%(PlatformList.Identity)">
<Target Name="List" Outputs="%(PlatformList.Identity)">
<PropertyGroup>
<CurrentPlatform>%(PlatformList.Identity)</CurrentPlatform>
</PropertyGroup>
<MSBuild Projects="SMP/APPVEYOR_PROJECT_NAME.sln" Properties="Configuration=%(ConfigurationList.Identity);Platform=$(CurrentPlatform);OutDir=$(MSBuildThisFileDirectory)build_out\;" />
<ItemGroup>
<ProjectToBuild Include="SMP/APPVEYOR_PROJECT_NAME.sln">
<Properties>Configuration=%(ConfigurationList.Identity);Platform=$(CurrentPlatform);OutDir=$(MSBuildThisFileDirectory)build_out\</Properties>
</ProjectToBuild>
</ItemGroup>
</Target>
<Target Name="Build" DependsOnTargets="List">
<MSBuild Projects="@(ProjectToBuild)" BuildInParallel="true" />
</Target>
<Target Name="GitLink" DependsOnTargets="Build" Outputs="%(PlatformList.Identity)">
<PropertyGroup>
<CurrentPlatform>%(PlatformList.Identity)</CurrentPlatform>
</PropertyGroup>
<Exec Command="GitLink . -f SMP/APPVEYOR_PROJECT_NAME.sln -c %(ConfigurationList.Identity) -p $(CurrentPlatform) -d $(MSBuildThisFileDirectory)build_out\lib\$(CurrentPlatform) -u https://github.com/APPVEYOR_REPO_NAME.git -s APPVEYOR_REPO_COMMIT"/>
</Target>
</Project>
Expand All @@ -35,10 +57,22 @@ 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%

build:
project: build.vcxproj
parallel: true
Expand Down
30 changes: 15 additions & 15 deletions SMP/libsdl.sln
Original file line number Diff line number Diff line change
Expand Up @@ -6,38 +6,38 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsdl", "libsdl.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
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.Debug|Win32.ActiveCfg = Debug|Win32
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.Debug|Win32.Build.0 = Debug|Win32
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.Debug|x64.ActiveCfg = Debug|x64
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.Debug|x64.Build.0 = Debug|x64
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.DebugDLL|Win32.ActiveCfg = DebugDLL|Win32
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.DebugDLL|Win32.Build.0 = DebugDLL|Win32
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.Debug|x86.ActiveCfg = Debug|Win32
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.Debug|x86.Build.0 = Debug|Win32
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.DebugDLL|x64.ActiveCfg = DebugDLL|x64
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.DebugDLL|x64.Build.0 = DebugDLL|x64
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.Release|Win32.ActiveCfg = Release|Win32
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.Release|Win32.Build.0 = Release|Win32
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.DebugDLL|x86.ActiveCfg = DebugDLL|Win32
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.DebugDLL|x86.Build.0 = DebugDLL|Win32
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.Release|x64.ActiveCfg = Release|x64
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.Release|x64.Build.0 = Release|x64
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.ReleaseDLL|Win32.ActiveCfg = ReleaseDLL|Win32
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.ReleaseDLL|Win32.Build.0 = ReleaseDLL|Win32
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.Release|x86.ActiveCfg = Release|Win32
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.Release|x86.Build.0 = Release|Win32
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.ReleaseDLL|x64.ActiveCfg = ReleaseDLL|x64
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.ReleaseDLL|x64.Build.0 = ReleaseDLL|x64
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.ReleaseLTO|Win32.ActiveCfg = ReleaseLTO|Win32
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.ReleaseLTO|Win32.Build.0 = ReleaseLTO|Win32
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.ReleaseDLL|x86.ActiveCfg = ReleaseDLL|Win32
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.ReleaseDLL|x86.Build.0 = ReleaseDLL|Win32
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.ReleaseLTO|x64.ActiveCfg = ReleaseLTO|x64
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.ReleaseLTO|x64.Build.0 = ReleaseLTO|x64
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.ReleaseLTO|x86.ActiveCfg = ReleaseLTO|Win32
{D82A9F8C-D671-4D9B-AE40-13CC6098AE69}.ReleaseLTO|x86.Build.0 = ReleaseLTO|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand Down
2 changes: 2 additions & 0 deletions SMP/libsdl.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -870,6 +870,7 @@ del /f /q $(OutDir)\licenses\libsdl.txt
<ProfileGuidedDatabase>$(IntDir)\$(TargetName).pgd</ProfileGuidedDatabase>
<LargeAddressAware>true</LargeAddressAware>
<AdditionalDependencies>winmm.lib;dxguid.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
<PostBuildEvent>
<Command>mkdir $(OutDir)\include
Expand Down Expand Up @@ -931,6 +932,7 @@ del /f /q $(OutDir)\licenses\libsdl.txt
<ImportLibrary>$(OutDir)\lib\x64\$(TargetName).lib</ImportLibrary>
<ProfileGuidedDatabase>$(IntDir)\$(TargetName).pgd</ProfileGuidedDatabase>
<AdditionalDependencies>winmm.lib;dxguid.lib;%(AdditionalDependencies)</AdditionalDependencies>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
<PostBuildEvent>
<Command>mkdir $(OutDir)\include
Expand Down

0 comments on commit e582d44

Please sign in to comment.