OpenRCT2/openrct2.proj

306 lines
15 KiB
Plaintext
Raw Normal View History

2016-08-22 19:31:52 +02:00
<?xml version="1.0" encoding="utf-8"?>
<!-- Main msbuild project for OpenRCT2 -->
<!-- Inputs (/p: or environment variables)
- OPENRCT2_BUILD_SERVER
2016-08-23 19:22:06 +02:00
- GIT_TAG
- GIT_BRANCH
- GIT_COMMIT_SHA1
- GIT_DESCRIBE
2016-08-23 19:22:06 +02:00
- OPENRCT2_ORG_TOKEN
- NO_NSIS: set to true to prevent the NSIS installer building
2016-08-23 19:22:06 +02:00
-->
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="PublishAll">
2016-08-22 19:31:52 +02:00
<!-- Import custom build tasks -->
<Import Project="openrct2.targets" />
2016-08-22 19:31:52 +02:00
<PropertyGroup>
2016-09-10 00:13:12 +02:00
<Configuration Condition="'$(Configuration)'==''">Debug</Configuration>
2016-10-15 23:44:24 +02:00
<Platform Condition="'$(PLATFORM)'==''">x64</Platform>
<GIT_COMMIT_SHA1_SHORT Condition="'$(GIT_COMMIT_SHA1)'!=''">$(GIT_COMMIT_SHA1.Substring(0, 7))</GIT_COMMIT_SHA1_SHORT>
Release v0.2.3. - Feature: [#485] Rides can now be simulated with ghost trains during construction. - Feature: [#1260] Option for making giant screenshots have a transparent background. - Feature: [#2339] Find local servers automatically when fetching servers. - Feature: [#7296] Allow assigning a keyboard shortcut for the scenery picker. - Feature: [#8029] Add the Hungarian Forint (HUF) to the list of available currencies. - Feature: [#8481] Multi-threaded rendering. - Feature: [#8558] Guest debugging tab. - Feature: [#8659] Banner and sign texts are now shown in tooltips. - Feature: [#8687] New multiplayer toolbar icon showing network status with reconnect option. - Feature: [#8791] Improved tile element flag manipulation in Tile Inspector. - Feature: [#8919] Allow setting ride price from console. - Feature: [#8963] Add missing Czech letters to sprite font, use sprite font for Czech. - Feature: [#9154] Change map toolbar icon with current viewport rotation. - Change: [#7877] Files are now sorted in logical rather than dictionary order. - Change: [#8427] Ghost elements now show up as white on the mini-map. - Change: [#8688] Move common actions from debug menu into cheats menu. - Change: [#9428] Increase maximum height of the Hypercoaster to RCT1 limits. - Fix: [#2294] Clients crashing the server with invalid object selection. - Fix: [#4568, #5896] Incorrect fences removed when building a tracked ride through - Fix: [#5103] OpenGL: ride track preview not rendered. - Fix: [#5889] Giant screenshot does not work while using OpenGL renderer. - Fix: [#5579] Network desync immediately after connecting. - Fix: [#5893] Looking at guest window tabs other than the main tab eventually causes assertion. - Fix: [#5905] Urban Park merry-go-round has entrance and exit swapped (original bug). - Fix: [#6006] Objects higher than 6 metres are considered trees (original bug). - Fix: [#7039] Map window not rendering properly when using OpenGL. - Fix: [#7045] Theme window's colour pickers not drawn properly on OpenGL. - Fix: [#7323] Tunnel entrances not rendering in 'highlight path issues' mode if they have benches inside. - Fix: [#7729] Money Input Prompt breaks on certain values. - Fix: [#7884] Unfinished preserved rides can be demolished with quick demolish. - Fix: [#7913] RCT1/RCT2 title sequence timing is off. - Fix: [#7700, #8079, #8969] Crash when unloading buggy custom rides. - Fix: [#7829] Rotated information kiosk can cause 'unreachable' messages. - Fix: [#7878] Scroll shortcut keys ignore SHIFT/CTRL/ALT modifiers. - Fix: [#8219] Faulty folder recreation in "save" folder. - Fix: [#8480, #8535] Crash when mirroring track design. - Fix: [#8507] Incorrect change in vehicle rolling direction. - Fix: [#8537] Imported RCT1 rides/shops are all numbered 1. - Fix: [#8553] Scenery removal tool removes fences and paths while paused. - Fix: [#8598] Taking screenshots fails with some park names. - Fix: [#8602] Wall piece collision detection deviates from vanilla - Fix: [#8649] Setting date does not work in multiplayer. - Fix: [#8873] Potential crash when placing footpaths. - Fix: [#8882] Submarine Ride does not count as indoors (original bug). - Fix: [#8900] Peep tracking is not synchronized. - Fix: [#8909] Potential crash when invoking game actions as server. - Fix: [#8947] Detection of AVX2 support. - Fix: [#8988] Character sprite lookup noticeably slows down drawing. - Fix: [#9000] Show correct error message if not enough money available. - Fix: [#9067] Land/water tools show prices when money is disabled. - Fix: [#9124] Disconnected clients can crash the server. - Fix: [#9132] System file browser cannot open SV4 files. - Fix: [#9152] Spectators can modify ride colours. - Fix: [#9202] Artefacts show when changing ride type as client or using in-game console. - Fix: [#9240] Crash when passing directory instead of save file. - Fix: [#9245] Headless servers apply Discord Rich Presence. - Fix: [#9293] Issue with the native load/save dialog. - Fix: [#9322] Peep crashing the game trying to find a ride to look at. - Fix: [#9324] Crash trying to remove invalid footpath scenery. - Fix: [#9402] Ad campaigns disappear when you save and load the game. - Fix: [#9411] Ad campaigns end too soon. - Fix: [#9476] Running `simulate` command on park yields `Completed: (null)`. - Fix: [#9520] Time Twister object artdec29 conversion problem. - Fix: Guests eating popcorn are drawn as if they're eating pizza. - Fix: The arbitrary ride type and vehicle dropdown lists are ordered case-sensitively. - Improved: [#6116] Expose colour scheme for track elements in the tile inspector. - Improved: Allow the use of numpad enter key for console and chat.
2019-07-10 22:52:26 +02:00
<Version>0.2.3</Version>
<VersionExtra Condition="'$(GIT_BRANCH)'!=''">-$(GIT_BRANCH)-$(GIT_COMMIT_SHA1_SHORT)</VersionExtra>
<VersionExtra Condition="'$(GIT_TAG)'!=''"></VersionExtra>
2018-03-09 15:47:09 +01:00
<TargetLibsVersion>16</TargetLibsVersion>
2016-08-23 19:13:45 +02:00
2016-08-23 20:24:07 +02:00
<!-- Set dynamic OpenRCT2 #defines -->
2016-09-21 00:57:15 +02:00
<OPENRCT2_CL_ADDITIONALOPTIONS Condition="'$(BUILD_SERVER)'!=''">/D "OPENRCT2_BUILD_SERVER=\"$(BUILD_SERVER)\"" $(OPENRCT2_CL_ADDITIONALOPTIONS)</OPENRCT2_CL_ADDITIONALOPTIONS>
<OPENRCT2_CL_ADDITIONALOPTIONS Condition="'$(GIT_BRANCH)'!=''">/D "OPENRCT2_BRANCH=\"$(GIT_BRANCH)\"" $(OPENRCT2_CL_ADDITIONALOPTIONS)</OPENRCT2_CL_ADDITIONALOPTIONS>
<OPENRCT2_CL_ADDITIONALOPTIONS Condition="'$(GIT_COMMIT_SHA1)'!=''">/D "OPENRCT2_COMMIT_SHA1=\"$(GIT_COMMIT_SHA1)\"" $(OPENRCT2_CL_ADDITIONALOPTIONS)</OPENRCT2_CL_ADDITIONALOPTIONS>
<OPENRCT2_CL_ADDITIONALOPTIONS Condition="'$(GIT_COMMIT_SHA1_SHORT)'!=''">/D "OPENRCT2_COMMIT_SHA1_SHORT=\"$(GIT_COMMIT_SHA1_SHORT)\"" $(OPENRCT2_CL_ADDITIONALOPTIONS)</OPENRCT2_CL_ADDITIONALOPTIONS>
<OPENRCT2_CL_ADDITIONALOPTIONS Condition="'$(GIT_DESCRIBE)'!=''">/D "OPENRCT2_VERSION_TAG=\"$(GIT_DESCRIBE)\"" $(OPENRCT2_CL_ADDITIONALOPTIONS)</OPENRCT2_CL_ADDITIONALOPTIONS>
<OPENRCT2_CL_ADDITIONALOPTIONS Condition="'$(Configuration)'=='Release'">/D "USE_BREAKPAD" $(OPENRCT2_CL_ADDITIONALOPTIONS)</OPENRCT2_CL_ADDITIONALOPTIONS>
2016-08-23 20:24:07 +02:00
<RootDir>$(MsBuildThisFileDirectory)</RootDir>
<DistDir>$(RootDir)distribution\</DistDir>
<ArtifactsDir>$(RootDir)artifacts\</ArtifactsDir>
2016-09-09 23:42:35 +02:00
<TargetDir>$(RootDir)bin\</TargetDir>
2016-08-22 23:30:47 +02:00
<NsisScript>$(DistDir)windows\install.nsi</NsisScript>
<OutputExe>$(TargetDir)openrct2.exe</OutputExe>
<OutputCom>$(TargetDir)openrct2.com</OutputCom>
<OutputDll>$(TargetDir)openrct2.dll</OutputDll>
<g2Output>$(TargetDir)data\g2.dat</g2Output>
2016-08-26 19:04:17 +02:00
<PublishPostfix>-$(Configuration)-$(Platform)</PublishPostfix>
<PublishPostfix Condition="'$(GIT_COMMIT_SHA1_SHORT)'!=''">$(PublishPostfix)-$(GIT_COMMIT_SHA1_SHORT)</PublishPostfix>
2016-08-26 00:07:02 +02:00
<PublishPostfix>$(PublishPostfix.ToLower())</PublishPostfix>
<PublishZip>$(ArtifactsDir)openrct2-portable$(PublishPostfix).zip</PublishZip>
<PublishSymbolsZip Condition="'$(GIT_COMMIT_SHA1_SHORT)'==''">$(ArtifactsDir)openrct2-symbols$(PublishPostfix).zip</PublishSymbolsZip>
<PublishSymbolsZip Condition="'$(GIT_COMMIT_SHA1_SHORT)'!=''">$(ArtifactsDir)openrct2-symbols$(PublishPostfix).zip</PublishSymbolsZip>
<PublishInstallerExe>$(ArtifactsDir)openrct2-installer$(PublishPostfix).exe</PublishInstallerExe>
2016-08-23 19:13:45 +02:00
2016-08-27 16:14:34 +02:00
<UploadFilename>OpenRCT2-$(Version)$(VersionExtra)-windows-$(Platform.ToLower())</UploadFilename>
2016-09-18 12:24:46 +02:00
<!-- Set openrct2.sln properties -->
<SlnProperties>$(SlnProperties);Platform=$(Platform)</SlnProperties>
<SlnProperties Condition="'$(BUILD_SERVER)'!=''">$(SlnProperties);OPENRCT2_CL_ADDITIONALOPTIONS=$(OPENRCT2_CL_ADDITIONALOPTIONS)</SlnProperties>
</PropertyGroup>
2016-08-26 01:45:57 +02:00
<!-- 3rd party libraries / dependencies -->
<PropertyGroup>
<DependenciesCheckFile>$(RootDir).dependencies</DependenciesCheckFile>
<LibsUrl Condition="'$(Platform)'=='Win32'">https://github.com/OpenRCT2/Dependencies/releases/download/v19/openrct2-libs-v19-x86-windows-static-winssl.zip</LibsUrl>
<LibsSha1 Condition="'$(Platform)'=='Win32'">c0a49dfb7a0b4175c5b5003922f8a5c4b4589132</LibsSha1>
<LibsUrl Condition="'$(Platform)'=='x64'">https://github.com/OpenRCT2/Dependencies/releases/download/v19/openrct2-libs-v19-x64-windows-static-winssl.zip</LibsUrl>
<LibsSha1 Condition="'$(Platform)'=='x64'">623cb9199da328e55ee9c7f5e1135ceab43cc6b9</LibsSha1>
<GtestVersion>2fe3bd994b3189899d93f1d5a881e725e046fdc2</GtestVersion>
<GtestUrl>https://github.com/google/googletest/archive/$(GtestVersion).zip</GtestUrl>
<GtestSha1>058b9df80244c03f1633cb06e9f70471a29ebb8e</GtestSha1>
<TitleSequencesUrl>https://github.com/OpenRCT2/title-sequences/releases/download/v0.1.2b/title-sequence-v0.1.2b.zip</TitleSequencesUrl>
<TitleSequencesSha1>19263f8ca383345959473e64da4785a60f00f420</TitleSequencesSha1>
2019-07-06 16:50:58 +02:00
<ObjectsUrl>https://github.com/OpenRCT2/objects/releases/download/v1.0.11/objects.zip</ObjectsUrl>
<ObjectsSha1>8674120086929f9196560d77cada631fb478d7c0</ObjectsSha1>
2019-07-29 20:14:15 +02:00
<ReplaysUrl>https://github.com/OpenRCT2/replays/releases/download/v0.0.2/replays.zip</ReplaysUrl>
<ReplaysSha1>6E034E5299A8EC30A8D0A1B93F6A30A3A6429FEC</ReplaysSha1>
2016-08-26 01:45:57 +02:00
</PropertyGroup>
<ItemGroup>
<g2Inputs Include="$(RootDir)resources\g2\*" />
2016-08-22 22:45:36 +02:00
</ItemGroup>
<ItemGroup Label="Symbol Items">
<SymbolItems Include="$(OutputExe)" />
<SymbolItems Include="$(OutputCom)" />
<SymbolItems Include="$(OutputDll)" />
<SymbolItems Include="$(TargetDir)openrct2-dll.pdb" />
<SymbolItems Include="$(TargetDir)openrct2-win.pdb" />
2016-08-22 22:45:36 +02:00
</ItemGroup>
<ItemGroup Label="Publish Items">
2016-08-25 19:29:23 +02:00
<PublishItems Include="$(OutputExe)" />
<PublishItems Include="$(OutputCom)" />
<PublishItems Include="$(OutputDll)" />
2016-08-25 21:17:40 +02:00
<PublishItems Include="$(TargetDir)data" />
2016-08-22 22:45:36 +02:00
<PublishItems Include="$(DistDir)changelog.txt" />
<PublishItems Include="$(DistDir)readme.txt" />
<PublishItems Include="$(RootDir)contributors.md" />
<PublishItems Include="$(RootDir)licence.txt" />
</ItemGroup>
2016-08-23 19:13:45 +02:00
<ItemGroup Label="Upload Artifacts">
<UploadArtifacts Include="$(PublishZip)">
<Name>$(UploadFilename).zip</Name>
2016-08-26 19:33:54 +02:00
<FlavourId Condition="'$(Platform)'=='Win32'">1</FlavourId>
<FlavourId Condition="'$(Platform)'=='x64'">6</FlavourId>
2016-08-23 19:13:45 +02:00
</UploadArtifacts>
<UploadArtifacts Include="$(PublishInstallerExe)">
<Name>$(UploadFilename).exe</Name>
2016-08-26 19:33:54 +02:00
<FlavourId Condition="'$(Platform)'=='Win32'">2</FlavourId>
<FlavourId Condition="'$(Platform)'=='x64'">7</FlavourId>
2016-08-23 19:13:45 +02:00
</UploadArtifacts>
<UploadArtifacts Include="$(PublishSymbolsZip)">
<Name>$(UploadFilename)-symbols.zip</Name>
2016-08-26 19:33:54 +02:00
<FlavourId Condition="'$(Platform)'=='Win32'">5</FlavourId>
<FlavourId Condition="'$(Platform)'=='x64'">10</FlavourId>
2016-08-23 19:13:45 +02:00
</UploadArtifacts>
</ItemGroup>
2016-08-25 21:22:09 +02:00
<Target Name="DownloadLibs">
<!-- libs -->
<DownloadDependency Name="Libs"
Url="$(LibsUrl)"
Sha1="$(LibsSha1)"
CheckFile="$(DependenciesCheckFile)"
2018-03-03 12:34:47 +01:00
OutputDirectory="$(RootDir)lib\$(Platform)" />
2016-08-26 01:45:57 +02:00
2016-12-02 14:36:03 +01:00
<!-- googletest -->
<DownloadDependency Name="googletest"
Url="$(GtestUrl)"
Sha1="$(GtestSha1)"
CheckFile="$(DependenciesCheckFile)"
OutputDirectory="$(RootDir)lib" />
<PropertyGroup>
<GtestSrc>$(RootDir)lib\googletest-$(GtestVersion)</GtestSrc>
<GtestDst>$(RootDir)lib\googletest</GtestDst>
</PropertyGroup>
<Exec Command="cmd /c &quot;if exist &quot;$(GtestSrc)&quot; ( rmdir /S /Q &quot;$(GtestDst)&quot; 2> nul &amp; move &quot;$(GtestSrc)&quot; &quot;$(GtestDst)&quot; )&quot;" />
</Target>
2016-09-09 23:42:35 +02:00
<Target Name="Clean">
2016-12-02 15:42:40 +01:00
<PropertyGroup>
<SlnProperties>$(SlnProperties);Configuration=$(Configuration)</SlnProperties>
</PropertyGroup>
2016-08-26 19:04:17 +02:00
<ItemGroup>
<CleanItems Include="$(OutputCom)" />
2016-08-26 19:04:17 +02:00
<CleanItems Include="$(g2Output)" />
<CleanItems Include="$(ArtifactsDir)openrct2-installer-$(Configuration)-$(Platform)*.exe" />
<CleanItems Include="$(ArtifactsDir)openrct2-portable-$(Configuration)-$(Platform)*.zip" />
<CleanItems Include="$(ArtifactsDir)openrct2-symbols-$(Configuration)-$(Platform)*.zip" />
</ItemGroup>
<Delete Files="@(CleanItems)" />
2016-08-26 00:07:02 +02:00
<RemoveDir Directories="$(TargetDir)data" />
2016-09-18 12:24:46 +02:00
<MSBuild Projects="openrct2.sln" Targets="Clean" Properties="$(SlnProperties)" />
</Target>
<Target Name="BeforeBuild" BeforeTargets="Build;Rebuild" DependsOnTargets="DownloadLibs">
2016-08-25 20:18:45 +02:00
<PropertyGroup>
<BuildString Condition="'$(GIT_COMMIT_SHA1_SHORT)'!=''">$(GIT_COMMIT_SHA1_SHORT)</BuildString>
<BuildString Condition="'$(GIT_BRANCH)'!=''">$(BuildString) ($(GIT_BRANCH))</BuildString>
<BuildString Condition="'$(GIT_DESCRIBE)'!=''">$(BuildString) ($(GIT_DESCRIBE))</BuildString>
2016-08-25 20:18:45 +02:00
</PropertyGroup>
2016-08-25 21:17:40 +02:00
<ItemGroup>
<DataItems Include="$(RootDir)data\**\*" />
</ItemGroup>
2016-08-25 20:18:45 +02:00
<Message Condition="'$(BuildString)'!=''" Text="Building $(BuildString)" Importance="high" />
2016-08-25 21:17:40 +02:00
<Copy SourceFiles="@(CopyItems)" DestinationFolder="$(TargetDir)" SkipUnchangedFiles="true" />
<Copy SourceFiles="@(DataItems)" DestinationFolder="$(TargetDir)data\%(RecursiveDir)" SkipUnchangedFiles="true" />
2016-09-09 23:42:35 +02:00
</Target>
<Target Name="Build">
2016-12-02 15:42:40 +01:00
<PropertyGroup>
<SlnProperties>$(SlnProperties);Configuration=$(Configuration)</SlnProperties>
</PropertyGroup>
2016-09-21 00:57:15 +02:00
<Message Text="SlnProperties: $(SlnProperties)" />
2016-09-18 12:24:46 +02:00
<MSBuild Projects="openrct2.sln" Targets="Build" Properties="$(SlnProperties)" />
2016-09-09 23:42:35 +02:00
</Target>
<Target Name="Rebuild">
2016-12-02 15:42:40 +01:00
<PropertyGroup>
<SlnProperties>$(SlnProperties);Configuration=$(Configuration)</SlnProperties>
</PropertyGroup>
2016-09-21 00:57:15 +02:00
<Message Text="SlnProperties: $(SlnProperties)" />
2016-09-18 12:24:46 +02:00
<MSBuild Projects="openrct2.sln" Targets="Rebuild" Properties="$(SlnProperties)" />
2016-09-09 23:42:35 +02:00
</Target>
2018-04-19 14:26:31 +02:00
<Target Name="Test">
<!-- Scan repositories prior to running tests as it can take a while -->
<Message Text="Building OpenRCT2 repository indexes..." Importance="high" />
<Exec Command="$(TargetDir)openrct2.exe scan-objects"
WorkingDirectory="$(TargetDir)"
StandardOutputImportance="normal" />
2018-04-19 14:26:31 +02:00
<Message Text="Running tests..." Importance="high" />
<Exec Command="$(TargetDir)tests.exe &quot;--gtest_output=xml:$(ArtifactsDir)test-results.xml&quot;"
WorkingDirectory="$(TargetDir)" />
2016-12-02 15:42:40 +01:00
</Target>
2016-08-25 20:18:45 +02:00
<!-- Target to build g2.dat containing OpenRCT2 sprites -->
<Target Name="g2" AfterTargets="Build" Inputs="@(g2Inputs)" Outputs="$(g2Output)"
2016-12-03 00:07:07 +01:00
Condition="'$(TestConfig)'!='true'">
<Message Text="Building g2.dat..." Importance="high" />
<Exec Command="&quot;$(OutputExe)&quot; sprite build &quot;$(g2Output)&quot; &quot;$(RootDir)resources\g2\sprites.json&quot;"
StandardOutputImportance="normal" />
</Target>
<!-- Target to create openrct2.exe (windows) and openrct2.com (console) -->
<Target Name="CreateGUI" DependsOnTargets="Build" AfterTargets="Build" Inputs="$(OutputExe)" Outputs="$(OutputCom)">
<Copy SourceFiles="$(OutputExe)" DestinationFiles="$(OutputCom)" />
<Exec Command="editbin /subsystem:console &quot;$(OutputCom)&quot;" />
<Exec Command="editbin /subsystem:windows &quot;$(OutputExe)&quot;" />
</Target>
<!-- Target to download the title sequences -->
<Target Name="DownloadTitleSequences" AfterTargets="Build">
<DownloadDependency Name="TitleSequences"
Url="$(TitleSequencesUrl)"
Sha1="$(TitleSequencesSha1)"
CheckFile="$(DependenciesCheckFile)"
OutputDirectory="$(TargetDir)data\title" />
</Target>
2018-02-10 16:24:20 +01:00
<!-- Target to download the objects -->
<Target Name="DownloadObjects" AfterTargets="Build">
<DownloadDependency Name="Objects"
Url="$(ObjectsUrl)"
Sha1="$(ObjectsSha1)"
CheckFile="$(DependenciesCheckFile)"
OutputDirectory="$(TargetDir)data\object" />
</Target>
2019-07-15 19:42:43 +02:00
<!-- Target to download replays -->
<Target Name="DownloadReplays" AfterTargets="Build">
<DownloadDependency Name="Replays"
Url="$(ReplaysUrl)"
Sha1="$(ReplaysSha1)"
CheckFile="$(DependenciesCheckFile)"
OutputDirectory="$(TargetDir)testdata\replays" />
</Target>
<!-- Target to publish OpenRCT2 as a portable zip -->
2016-12-03 00:07:07 +01:00
<Target Name="PublishPortable" DependsOnTargets="Build;g2" Inputs="@(PublishItems)" Outputs="$(PublishZip)"
Condition="'$(TestConfig)'!='true'">
<MakeDir Directories="$(ArtifactsDir)" />
2016-08-26 00:07:02 +02:00
<Message Importance="high" Text="Creating $([System.IO.Path]::GetFileName($(PublishZip)))..." />
2016-08-25 21:17:40 +02:00
<_7z Output="$(PublishZip)" Inputs="@(PublishItems)" />
</Target>
2016-08-22 22:45:36 +02:00
<!-- Target to publish the OpenRCT2 debug symbols -->
2016-12-03 00:07:07 +01:00
<Target Name="PublishSymbols" DependsOnTargets="Build" Inputs="@(SymbolItems)" Outputs="$(PublishSymbolsZip)"
Condition="'$(TestConfig)'!='true'">
<MakeDir Directories="$(ArtifactsDir)" />
2016-08-26 00:07:02 +02:00
<Message Importance="high" Text="Creating $([System.IO.Path]::GetFileName($(PublishSymbolsZip)))..." />
2016-08-22 22:45:36 +02:00
<_7z Output="$(PublishSymbolsZip)" Inputs="@(SymbolItems)" />
</Target>
2016-08-22 23:30:47 +02:00
<!-- Target to publish the OpenRCT2 as an NSIS installer -->
<Target Name="PublishInstaller"
DependsOnTargets="Build;g2"
2016-08-22 23:30:47 +02:00
Inputs="@(PublishItems);$(NsisScript)"
2016-08-26 00:38:48 +02:00
Outputs="$(PublishInstallerExe)"
2016-12-03 00:07:07 +01:00
Condition="'$(NO_NSIS)'!='true' AND '$(TestConfig)'!='true'">
2016-08-22 23:30:47 +02:00
<PropertyGroup>
<PublishInstallerExeName>$([System.IO.Path]::GetFilename($(PublishInstallerExe)))</PublishInstallerExeName>
</PropertyGroup>
2016-08-26 00:07:02 +02:00
<MakeDir Directories="$(ArtifactsDir)" />
2016-08-22 23:30:47 +02:00
<!-- Create the installer -->
<Message Text="Building Windows Installer (NSIS script)" Importance="high" />
<Exec Command="makensis /DOUTFILE=$(PublishInstallerExe) ^
/DAPPV_MAIN=$(Version) ^
/DAPPV_EXTRA=$(VersionExtra) ^
/DPLATFORM=$(Platform) ^
$(NsisScript)"
2016-08-22 23:30:47 +02:00
StandardOutputImportance="normal" />
</Target>
2016-08-22 22:45:36 +02:00
<Target Name="PublishAll"
2016-08-22 23:30:47 +02:00
DependsOnTargets="PublishSymbols;PublishPortable;PublishInstaller" />
2016-08-22 22:45:36 +02:00
2016-08-23 19:13:45 +02:00
<!-- Target to upload the artifacts to OpenRCT2.org -->
2016-12-03 00:07:07 +01:00
<Target Name="UploadArtifacts" DependsOnTargets="PublishAll"
Condition="'$(TestConfig)'!='true'">
2016-08-23 19:13:45 +02:00
<PropertyGroup>
<UploadLink>https://openrct2.org/altapi/?command=push-build</UploadLink>
<UploadFileNameShort>%(UploadArtifacts.Filename)%(UploadArtifacts.Extension)</UploadFileNameShort>
2017-01-29 22:22:43 +01:00
<UploadGitBranch>master</UploadGitBranch>
<UploadGitBranch Condition="'$(GIT_BRANCH)'!=''">$(GIT_BRANCH)</UploadGitBranch>
2016-08-23 19:13:45 +02:00
</PropertyGroup>
<Message Text="Uploading $(UploadFileNameShort)" Importance="high" />
<Error Condition="'$(OPENRCT2_ORG_TOKEN)'==''" Text="OPENRCT2_ORG_TOKEN not set." />
2016-08-23 19:22:06 +02:00
<Error Condition="'$(GIT_COMMIT_SHA1)'==''" Text="GIT_COMMIT_SHA1 not set." />
<Exec EchoOff="true" Command="curl.exe -s -o - ^
2016-08-23 19:22:06 +02:00
--form &quot;key=$(OPENRCT2_ORG_TOKEN)&quot; ^
--form &quot;fileName=%(UploadArtifacts.Name)&quot; ^
--form &quot;version=$(Version)&quot; ^
--form &quot;gitHash=$(GIT_COMMIT_SHA1)&quot; ^
2017-01-29 22:22:43 +01:00
--form &quot;gitBranch=$(UploadGitBranch)&quot; ^
2016-08-23 19:13:45 +02:00
--form &quot;flavourId=%(UploadArtifacts.FlavourId)&quot; ^
2016-08-23 19:22:06 +02:00
--form &quot;file=@%(UploadArtifacts.Identity)&quot; ^
2016-08-23 19:13:45 +02:00
&quot;$(UploadLink)&quot;"
CustomErrorRegularExpression="&quot;error&quot;:1" />
</Target>
</Project>