summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/VS10Project/UnityBuildPCH-build-check.cmake
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2021-10-19 15:28:40 (GMT)
committerBrad King <brad.king@kitware.com>2021-10-19 15:50:07 (GMT)
commit71f15be957b1a4fc37edbfd70809c759e92227a2 (patch)
treeed1e0be02e4f8b4bc8c576494ee43166ab2bddb5 /Tests/RunCMake/VS10Project/UnityBuildPCH-build-check.cmake
parent7fcc35c676b46fc30cb67425bfc72c7de040d6bf (diff)
downloadCMake-71f15be957b1a4fc37edbfd70809c759e92227a2.zip
CMake-71f15be957b1a4fc37edbfd70809c759e92227a2.tar.gz
CMake-71f15be957b1a4fc37edbfd70809c759e92227a2.tar.bz2
VS: Fix compilation of single source with PCH in Unity Build
Sources that are part of a unity build are normally not compiled individually. However, the VS IDE allows a single source to be compiled. This can also be achieved on the command line: msbuild my.vcxproj ... -t:ClCompile -p:SelectedFiles=<src> where `<src>` is the path in the vcxproj `ClCompile` entry. In a target with precompiled headers, the source needs PCH settings to support individual compilation even if the normal unity build does not.
Diffstat (limited to 'Tests/RunCMake/VS10Project/UnityBuildPCH-build-check.cmake')
-rw-r--r--Tests/RunCMake/VS10Project/UnityBuildPCH-build-check.cmake10
1 files changed, 10 insertions, 0 deletions
diff --git a/Tests/RunCMake/VS10Project/UnityBuildPCH-build-check.cmake b/Tests/RunCMake/VS10Project/UnityBuildPCH-build-check.cmake
new file mode 100644
index 0000000..9043bb7
--- /dev/null
+++ b/Tests/RunCMake/VS10Project/UnityBuildPCH-build-check.cmake
@@ -0,0 +1,10 @@
+set(obj "${RunCMake_TEST_BINARY_DIR}/UnityBuildPCH.dir/Debug/UnityBuildPCH.obj")
+if(NOT EXISTS "${obj}")
+ set(RunCMake_TEST_FAILED "Expected object file does not exist:\n ${obj}")
+ return()
+endif()
+set(lib "${RunCMake_TEST_BINARY_DIR}/Debug/UnityBuildPCH.lib")
+if(EXISTS "${lib}")
+ set(RunCMake_TEST_FAILED "Unexpected library file exists:\n ${lib}")
+ return()
+endif()