diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ae9d74151d..bca2344661 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -67,9 +67,16 @@ jobs: matrix: platform: [win32, x64, arm64] env: - CONFIGURATION: Release PLATFORM: ${{ matrix.platform }} steps: + - name: Setup environment + run: | + BRANCH=$(echo $GITHUB_REF | cut -d'/' -f 3) + if [[ $BRANCH == 'develop' || $BRANCH == 'master' ]]; then + echo "CONFIGURATION=ReleaseLTCG" >> "$GITHUB_ENV" + else + echo "CONFIGURATION=Release" >> "$GITHUB_ENV" + fi - name: Checkout uses: actions/checkout@v3 - name: Git describe for shallow checkout diff --git a/openrct2.common.props b/openrct2.common.props index 357686dfd8..b32345eb7e 100644 --- a/openrct2.common.props +++ b/openrct2.common.props @@ -25,6 +25,10 @@ true + false + false + + false true @@ -87,7 +91,7 @@ bz2d.lib;discord-rpc.lib;flac.lib;freetyped.lib;libpng16d.lib;ogg.lib;speexdsp.lib;SDL2d.lib;vorbis.lib;vorbisfile.lib;zip.lib;zlibd.lib;%(AdditionalDependencies) - + Full true @@ -108,7 +112,6 @@ bz2.lib;discord-rpc.lib;flac.lib;freetype.lib;libpng16.lib;ogg.lib;speexdsp.lib;SDL2.lib;vorbis.lib;vorbisfile.lib;zip.lib;zlib.lib;%(AdditionalDependencies) - diff --git a/openrct2.sln b/openrct2.sln index 6d4ece018d..5556485514 100644 --- a/openrct2.sln +++ b/openrct2.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.29411.138 +# Visual Studio Version 17 +VisualStudioVersion = 17.4.33213.308 MinimumVisualStudioVersion = 10.0.40219.1 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libopenrct2", "src\openrct2\libopenrct2.vcxproj", "{D24D94F6-2A74-480C-B512-629C306CE92F}" EndProject @@ -33,81 +33,114 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "openrct2-cli", "src\openrct EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|arm64 = Debug|arm64 Debug|Win32 = Debug|Win32 Debug|x64 = Debug|x64 - Debug|arm64 = Debug|arm64 + Release|arm64 = Release|arm64 Release|Win32 = Release|Win32 Release|x64 = Release|x64 - Release|arm64 = Release|arm64 + ReleaseLTCG|arm64 = ReleaseLTCG|arm64 + ReleaseLTCG|Win32 = ReleaseLTCG|Win32 + ReleaseLTCG|x64 = ReleaseLTCG|x64 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {7A9A57D5-7006-4208-A290-5491BA3C8808}.Debug|Win32.ActiveCfg = Debug|Win32 - {7A9A57D5-7006-4208-A290-5491BA3C8808}.Debug|Win32.Build.0 = Debug|Win32 - {7A9A57D5-7006-4208-A290-5491BA3C8808}.Debug|x64.ActiveCfg = Debug|x64 - {7A9A57D5-7006-4208-A290-5491BA3C8808}.Debug|x64.Build.0 = Debug|x64 - {7A9A57D5-7006-4208-A290-5491BA3C8808}.Debug|arm64.ActiveCfg = Debug|arm64 - {7A9A57D5-7006-4208-A290-5491BA3C8808}.Debug|arm64.Build.0 = Debug|arm64 - {7A9A57D5-7006-4208-A290-5491BA3C8808}.Release|Win32.ActiveCfg = Release|Win32 - {7A9A57D5-7006-4208-A290-5491BA3C8808}.Release|Win32.Build.0 = Release|Win32 - {7A9A57D5-7006-4208-A290-5491BA3C8808}.Release|x64.ActiveCfg = Release|x64 - {7A9A57D5-7006-4208-A290-5491BA3C8808}.Release|x64.Build.0 = Release|x64 - {7A9A57D5-7006-4208-A290-5491BA3C8808}.Release|arm64.ActiveCfg = Release|arm64 - {7A9A57D5-7006-4208-A290-5491BA3C8808}.Release|arm64.Build.0 = Release|arm64 + {D24D94F6-2A74-480C-B512-629C306CE92F}.Debug|arm64.ActiveCfg = Debug|arm64 + {D24D94F6-2A74-480C-B512-629C306CE92F}.Debug|arm64.Build.0 = Debug|arm64 {D24D94F6-2A74-480C-B512-629C306CE92F}.Debug|Win32.ActiveCfg = Debug|Win32 {D24D94F6-2A74-480C-B512-629C306CE92F}.Debug|Win32.Build.0 = Debug|Win32 {D24D94F6-2A74-480C-B512-629C306CE92F}.Debug|x64.ActiveCfg = Debug|x64 {D24D94F6-2A74-480C-B512-629C306CE92F}.Debug|x64.Build.0 = Debug|x64 - {D24D94F6-2A74-480C-B512-629C306CE92F}.Debug|arm64.ActiveCfg = Debug|arm64 - {D24D94F6-2A74-480C-B512-629C306CE92F}.Debug|arm64.Build.0 = Debug|arm64 + {D24D94F6-2A74-480C-B512-629C306CE92F}.Release|arm64.ActiveCfg = Release|arm64 + {D24D94F6-2A74-480C-B512-629C306CE92F}.Release|arm64.Build.0 = Release|arm64 {D24D94F6-2A74-480C-B512-629C306CE92F}.Release|Win32.ActiveCfg = Release|Win32 {D24D94F6-2A74-480C-B512-629C306CE92F}.Release|Win32.Build.0 = Release|Win32 {D24D94F6-2A74-480C-B512-629C306CE92F}.Release|x64.ActiveCfg = Release|x64 {D24D94F6-2A74-480C-B512-629C306CE92F}.Release|x64.Build.0 = Release|x64 - {D24D94F6-2A74-480C-B512-629C306CE92F}.Release|arm64.ActiveCfg = Release|arm64 - {D24D94F6-2A74-480C-B512-629C306CE92F}.Release|arm64.Build.0 = Release|arm64 + {D24D94F6-2A74-480C-B512-629C306CE92F}.ReleaseLTCG|arm64.ActiveCfg = ReleaseLTCG|arm64 + {D24D94F6-2A74-480C-B512-629C306CE92F}.ReleaseLTCG|arm64.Build.0 = ReleaseLTCG|arm64 + {D24D94F6-2A74-480C-B512-629C306CE92F}.ReleaseLTCG|Win32.ActiveCfg = ReleaseLTCG|Win32 + {D24D94F6-2A74-480C-B512-629C306CE92F}.ReleaseLTCG|Win32.Build.0 = ReleaseLTCG|Win32 + {D24D94F6-2A74-480C-B512-629C306CE92F}.ReleaseLTCG|x64.ActiveCfg = ReleaseLTCG|x64 + {D24D94F6-2A74-480C-B512-629C306CE92F}.ReleaseLTCG|x64.Build.0 = ReleaseLTCG|x64 + {7A9A57D5-7006-4208-A290-5491BA3C8808}.Debug|arm64.ActiveCfg = Debug|arm64 + {7A9A57D5-7006-4208-A290-5491BA3C8808}.Debug|arm64.Build.0 = Debug|arm64 + {7A9A57D5-7006-4208-A290-5491BA3C8808}.Debug|Win32.ActiveCfg = Debug|Win32 + {7A9A57D5-7006-4208-A290-5491BA3C8808}.Debug|Win32.Build.0 = Debug|Win32 + {7A9A57D5-7006-4208-A290-5491BA3C8808}.Debug|x64.ActiveCfg = Debug|x64 + {7A9A57D5-7006-4208-A290-5491BA3C8808}.Debug|x64.Build.0 = Debug|x64 + {7A9A57D5-7006-4208-A290-5491BA3C8808}.Release|arm64.ActiveCfg = Release|arm64 + {7A9A57D5-7006-4208-A290-5491BA3C8808}.Release|arm64.Build.0 = Release|arm64 + {7A9A57D5-7006-4208-A290-5491BA3C8808}.Release|Win32.ActiveCfg = Release|Win32 + {7A9A57D5-7006-4208-A290-5491BA3C8808}.Release|Win32.Build.0 = Release|Win32 + {7A9A57D5-7006-4208-A290-5491BA3C8808}.Release|x64.ActiveCfg = Release|x64 + {7A9A57D5-7006-4208-A290-5491BA3C8808}.Release|x64.Build.0 = Release|x64 + {7A9A57D5-7006-4208-A290-5491BA3C8808}.ReleaseLTCG|arm64.ActiveCfg = ReleaseLTCG|arm64 + {7A9A57D5-7006-4208-A290-5491BA3C8808}.ReleaseLTCG|arm64.Build.0 = ReleaseLTCG|arm64 + {7A9A57D5-7006-4208-A290-5491BA3C8808}.ReleaseLTCG|Win32.ActiveCfg = ReleaseLTCG|Win32 + {7A9A57D5-7006-4208-A290-5491BA3C8808}.ReleaseLTCG|Win32.Build.0 = ReleaseLTCG|Win32 + {7A9A57D5-7006-4208-A290-5491BA3C8808}.ReleaseLTCG|x64.ActiveCfg = ReleaseLTCG|x64 + {7A9A57D5-7006-4208-A290-5491BA3C8808}.ReleaseLTCG|x64.Build.0 = ReleaseLTCG|x64 + {62B020FA-E4FB-4C6E-B32A-DC999470F155}.Debug|arm64.ActiveCfg = Debug|arm64 + {62B020FA-E4FB-4C6E-B32A-DC999470F155}.Debug|arm64.Build.0 = Debug|arm64 {62B020FA-E4FB-4C6E-B32A-DC999470F155}.Debug|Win32.ActiveCfg = Debug|Win32 {62B020FA-E4FB-4C6E-B32A-DC999470F155}.Debug|Win32.Build.0 = Debug|Win32 {62B020FA-E4FB-4C6E-B32A-DC999470F155}.Debug|x64.ActiveCfg = Debug|x64 {62B020FA-E4FB-4C6E-B32A-DC999470F155}.Debug|x64.Build.0 = Debug|x64 - {62B020FA-E4FB-4C6E-B32A-DC999470F155}.Debug|arm64.ActiveCfg = Debug|arm64 - {62B020FA-E4FB-4C6E-B32A-DC999470F155}.Debug|arm64.Build.0 = Debug|arm64 + {62B020FA-E4FB-4C6E-B32A-DC999470F155}.Release|arm64.ActiveCfg = Release|arm64 + {62B020FA-E4FB-4C6E-B32A-DC999470F155}.Release|arm64.Build.0 = Release|arm64 {62B020FA-E4FB-4C6E-B32A-DC999470F155}.Release|Win32.ActiveCfg = Release|Win32 {62B020FA-E4FB-4C6E-B32A-DC999470F155}.Release|Win32.Build.0 = Release|Win32 {62B020FA-E4FB-4C6E-B32A-DC999470F155}.Release|x64.ActiveCfg = Release|x64 {62B020FA-E4FB-4C6E-B32A-DC999470F155}.Release|x64.Build.0 = Release|x64 - {62B020FA-E4FB-4C6E-B32A-DC999470F155}.Release|arm64.ActiveCfg = Release|arm64 - {62B020FA-E4FB-4C6E-B32A-DC999470F155}.Release|arm64.Build.0 = Release|arm64 + {62B020FA-E4FB-4C6E-B32A-DC999470F155}.ReleaseLTCG|arm64.ActiveCfg = ReleaseLTCG|arm64 + {62B020FA-E4FB-4C6E-B32A-DC999470F155}.ReleaseLTCG|arm64.Build.0 = ReleaseLTCG|arm64 + {62B020FA-E4FB-4C6E-B32A-DC999470F155}.ReleaseLTCG|Win32.ActiveCfg = ReleaseLTCG|Win32 + {62B020FA-E4FB-4C6E-B32A-DC999470F155}.ReleaseLTCG|Win32.Build.0 = ReleaseLTCG|Win32 + {62B020FA-E4FB-4C6E-B32A-DC999470F155}.ReleaseLTCG|x64.ActiveCfg = ReleaseLTCG|x64 + {62B020FA-E4FB-4C6E-B32A-DC999470F155}.ReleaseLTCG|x64.Build.0 = ReleaseLTCG|x64 + {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.Debug|arm64.ActiveCfg = Debug|arm64 + {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.Debug|arm64.Build.0 = Debug|arm64 {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.Debug|Win32.ActiveCfg = Debug|Win32 {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.Debug|Win32.Build.0 = Debug|Win32 {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.Debug|x64.ActiveCfg = Debug|x64 {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.Debug|x64.Build.0 = Debug|x64 - {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.Debug|arm64.ActiveCfg = Debug|arm64 - {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.Debug|arm64.Build.0 = Debug|arm64 + {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.Release|arm64.ActiveCfg = Release|arm64 + {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.Release|arm64.Build.0 = Release|arm64 {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.Release|Win32.ActiveCfg = Release|Win32 {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.Release|Win32.Build.0 = Release|Win32 {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.Release|x64.ActiveCfg = Release|x64 {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.Release|x64.Build.0 = Release|x64 - {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.Release|arm64.ActiveCfg = Release|arm64 - {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.Release|arm64.Build.0 = Release|arm64 + {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.ReleaseLTCG|arm64.ActiveCfg = ReleaseLTCG|arm64 + {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.ReleaseLTCG|arm64.Build.0 = ReleaseLTCG|arm64 + {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.ReleaseLTCG|Win32.ActiveCfg = ReleaseLTCG|Win32 + {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.ReleaseLTCG|Win32.Build.0 = ReleaseLTCG|Win32 + {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.ReleaseLTCG|x64.ActiveCfg = ReleaseLTCG|x64 + {8DD8AB7D-2EA6-44E3-8265-BAF08E832951}.ReleaseLTCG|x64.Build.0 = ReleaseLTCG|x64 + {B6808F71-30B4-4499-8FF6-0B1C86391842}.Debug|arm64.ActiveCfg = Debug|arm64 + {B6808F71-30B4-4499-8FF6-0B1C86391842}.Debug|arm64.Build.0 = Debug|arm64 {B6808F71-30B4-4499-8FF6-0B1C86391842}.Debug|Win32.ActiveCfg = Debug|Win32 {B6808F71-30B4-4499-8FF6-0B1C86391842}.Debug|Win32.Build.0 = Debug|Win32 {B6808F71-30B4-4499-8FF6-0B1C86391842}.Debug|x64.ActiveCfg = Debug|x64 {B6808F71-30B4-4499-8FF6-0B1C86391842}.Debug|x64.Build.0 = Debug|x64 - {B6808F71-30B4-4499-8FF6-0B1C86391842}.Debug|arm64.ActiveCfg = Debug|arm64 - {B6808F71-30B4-4499-8FF6-0B1C86391842}.Debug|arm64.Build.0 = Debug|arm64 + {B6808F71-30B4-4499-8FF6-0B1C86391842}.Release|arm64.ActiveCfg = Release|arm64 + {B6808F71-30B4-4499-8FF6-0B1C86391842}.Release|arm64.Build.0 = Release|arm64 {B6808F71-30B4-4499-8FF6-0B1C86391842}.Release|Win32.ActiveCfg = Release|Win32 {B6808F71-30B4-4499-8FF6-0B1C86391842}.Release|Win32.Build.0 = Release|Win32 {B6808F71-30B4-4499-8FF6-0B1C86391842}.Release|x64.ActiveCfg = Release|x64 {B6808F71-30B4-4499-8FF6-0B1C86391842}.Release|x64.Build.0 = Release|x64 - {B6808F71-30B4-4499-8FF6-0B1C86391842}.Release|arm64.ActiveCfg = Release|arm64 - {B6808F71-30B4-4499-8FF6-0B1C86391842}.Release|arm64.Build.0 = Release|arm64 + {B6808F71-30B4-4499-8FF6-0B1C86391842}.ReleaseLTCG|arm64.ActiveCfg = ReleaseLTCG|arm64 + {B6808F71-30B4-4499-8FF6-0B1C86391842}.ReleaseLTCG|arm64.Build.0 = ReleaseLTCG|arm64 + {B6808F71-30B4-4499-8FF6-0B1C86391842}.ReleaseLTCG|Win32.ActiveCfg = ReleaseLTCG|Win32 + {B6808F71-30B4-4499-8FF6-0B1C86391842}.ReleaseLTCG|Win32.Build.0 = ReleaseLTCG|Win32 + {B6808F71-30B4-4499-8FF6-0B1C86391842}.ReleaseLTCG|x64.ActiveCfg = ReleaseLTCG|x64 + {B6808F71-30B4-4499-8FF6-0B1C86391842}.ReleaseLTCG|x64.Build.0 = ReleaseLTCG|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection GlobalSection(NestedProjects) = preSolution - {7A9A57D5-7006-4208-A290-5491BA3C8808} = {2202A816-377D-4FA0-A7AF-7D4105F8A4FB} {D24D94F6-2A74-480C-B512-629C306CE92F} = {2202A816-377D-4FA0-A7AF-7D4105F8A4FB} + {7A9A57D5-7006-4208-A290-5491BA3C8808} = {2202A816-377D-4FA0-A7AF-7D4105F8A4FB} {62B020FA-E4FB-4C6E-B32A-DC999470F155} = {480B577D-4E4A-4757-9A42-28A9AD33E6B0} {8DD8AB7D-2EA6-44E3-8265-BAF08E832951} = {2202A816-377D-4FA0-A7AF-7D4105F8A4FB} {B6808F71-30B4-4499-8FF6-0B1C86391842} = {2202A816-377D-4FA0-A7AF-7D4105F8A4FB} diff --git a/src/openrct2-cli/openrct2-cli.vcxproj b/src/openrct2-cli/openrct2-cli.vcxproj index a134619da0..3e9f97f517 100644 --- a/src/openrct2-cli/openrct2-cli.vcxproj +++ b/src/openrct2-cli/openrct2-cli.vcxproj @@ -16,6 +16,18 @@ Debug arm64 + + ReleaseLTCG + arm64 + + + ReleaseLTCG + Win32 + + + ReleaseLTCG + x64 + Release Win32 @@ -64,4 +76,4 @@ - + \ No newline at end of file diff --git a/src/openrct2-ui/libopenrct2ui.vcxproj b/src/openrct2-ui/libopenrct2ui.vcxproj index aebee18021..358c1577d7 100644 --- a/src/openrct2-ui/libopenrct2ui.vcxproj +++ b/src/openrct2-ui/libopenrct2ui.vcxproj @@ -16,6 +16,18 @@ Debug arm64 + + ReleaseLTCG + arm64 + + + ReleaseLTCG + Win32 + + + ReleaseLTCG + x64 + Release Win32 @@ -234,4 +246,4 @@ - + \ No newline at end of file diff --git a/src/openrct2-win/openrct2-win.vcxproj b/src/openrct2-win/openrct2-win.vcxproj index 8e81f69b72..ef8cd4fdf9 100644 --- a/src/openrct2-win/openrct2-win.vcxproj +++ b/src/openrct2-win/openrct2-win.vcxproj @@ -16,6 +16,18 @@ Debug arm64 + + ReleaseLTCG + arm64 + + + ReleaseLTCG + Win32 + + + ReleaseLTCG + x64 + Release Win32 @@ -64,4 +76,4 @@ - + \ No newline at end of file diff --git a/src/openrct2/libopenrct2.vcxproj b/src/openrct2/libopenrct2.vcxproj index 478e94b52b..afd3147b63 100644 --- a/src/openrct2/libopenrct2.vcxproj +++ b/src/openrct2/libopenrct2.vcxproj @@ -15,6 +15,18 @@ Debug arm64 + + ReleaseLTCG + arm64 + + + ReleaseLTCG + Win32 + + + ReleaseLTCG + x64 + Release Win32 diff --git a/test/tests/tests.vcxproj b/test/tests/tests.vcxproj index 32c313b804..95d7c4c808 100644 --- a/test/tests/tests.vcxproj +++ b/test/tests/tests.vcxproj @@ -8,6 +8,18 @@ Debug Win32 + + ReleaseLTCG + arm64 + + + ReleaseLTCG + Win32 + + + ReleaseLTCG + x64 + Release Win32 @@ -97,4 +109,4 @@ - + \ No newline at end of file