aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cmake/compiler/msvc/Directory.Build.props6
-rw-r--r--cmake/compiler/msvc/settings.cmake8
2 files changed, 14 insertions, 0 deletions
diff --git a/cmake/compiler/msvc/Directory.Build.props b/cmake/compiler/msvc/Directory.Build.props
new file mode 100644
index 00000000000..34884d2b800
--- /dev/null
+++ b/cmake/compiler/msvc/Directory.Build.props
@@ -0,0 +1,6 @@
+<Project>
+ <PropertyGroup>
+ <UseMultiToolTask>false</UseMultiToolTask>
+ <UseMSBuildResourceManager>false</UseMSBuildResourceManager>
+ </PropertyGroup>
+</Project>
diff --git a/cmake/compiler/msvc/settings.cmake b/cmake/compiler/msvc/settings.cmake
index 40f8dd342ee..457d429b0dc 100644
--- a/cmake/compiler/msvc/settings.cmake
+++ b/cmake/compiler/msvc/settings.cmake
@@ -163,6 +163,14 @@ macro(DisableIncrementalLinking variable)
set(${variable} "${${variable}} /INCREMENTAL:NO")
endmacro()
+# Disable Visual Studio 2022 build process management
+# This will make compiler behave like in 2019 - compiling num_cpus * num_projects at the same time
+# it is neccessary because of a bug in current implementation that makes scripts build only a single
+# file at the same time after game project finishes building
+if (NOT MSVC_TOOLSET_VERSION LESS 143)
+ file(COPY "${CMAKE_CURRENT_LIST_DIR}/Directory.Build.props" DESTINATION "${CMAKE_BINARY_DIR}")
+endif()
+
DisableIncrementalLinking(CMAKE_EXE_LINKER_FLAGS_DEBUG)
DisableIncrementalLinking(CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO)
DisableIncrementalLinking(CMAKE_SHARED_LINKER_FLAGS_DEBUG)