diff options
author | Cristian Adam <cristian.adam@gmail.com> | 2021-08-07 15:07:55 (GMT) |
---|---|---|
committer | Cristian Adam <cristian.adam@gmail.com> | 2021-09-13 15:12:11 (GMT) |
commit | bbcdac4e5d53de12013c6af6395b28e4816f7823 (patch) | |
tree | 1d18f8ca2efc885fac477e2ce832bb161fdddd1d /Tests/RunCMake/PrecompileHeaders | |
parent | cc94429c61fcdff73ff78430692ff12ed1fff29b (diff) | |
download | CMake-bbcdac4e5d53de12013c6af6395b28e4816f7823.zip CMake-bbcdac4e5d53de12013c6af6395b28e4816f7823.tar.gz CMake-bbcdac4e5d53de12013c6af6395b28e4816f7823.tar.bz2 |
PCH: Fix all-language precompile header support in Xcode
Fixes: #22384
Diffstat (limited to 'Tests/RunCMake/PrecompileHeaders')
5 files changed, 35 insertions, 0 deletions
diff --git a/Tests/RunCMake/PrecompileHeaders/PchIncludedAllLanguages.cmake b/Tests/RunCMake/PrecompileHeaders/PchIncludedAllLanguages.cmake new file mode 100644 index 0000000..a455410 --- /dev/null +++ b/Tests/RunCMake/PrecompileHeaders/PchIncludedAllLanguages.cmake @@ -0,0 +1,16 @@ +cmake_minimum_required(VERSION 3.15) +project(PchIncludedAllLanguages C CXX) + +if(CMAKE_CXX_COMPILE_OPTIONS_USE_PCH) + add_definitions(-DHAVE_PCH_SUPPORT) +endif() + +add_executable(main + main.cpp + pch-included.c + pch-included.cpp +) +target_precompile_headers(main PRIVATE pch.h) + +enable_testing() +add_test(NAME main COMMAND main) diff --git a/Tests/RunCMake/PrecompileHeaders/RunCMakeTest.cmake b/Tests/RunCMake/PrecompileHeaders/RunCMakeTest.cmake index 8cc59d2..e723e03 100644 --- a/Tests/RunCMake/PrecompileHeaders/RunCMakeTest.cmake +++ b/Tests/RunCMake/PrecompileHeaders/RunCMakeTest.cmake @@ -28,3 +28,4 @@ if(RunCMake_GENERATOR MATCHES "Make|Ninja") endif() endif() run_test(PchReuseFromObjLib) +run_test(PchIncludedAllLanguages) diff --git a/Tests/RunCMake/PrecompileHeaders/pch-included.c b/Tests/RunCMake/PrecompileHeaders/pch-included.c new file mode 100644 index 0000000..96fce69 --- /dev/null +++ b/Tests/RunCMake/PrecompileHeaders/pch-included.c @@ -0,0 +1,8 @@ +#ifndef HAVE_PCH_SUPPORT +# include "pch.h" +#endif + +int testC(void) +{ + return PCH_INCLUDED; +} diff --git a/Tests/RunCMake/PrecompileHeaders/pch-included.cpp b/Tests/RunCMake/PrecompileHeaders/pch-included.cpp new file mode 100644 index 0000000..bf4d95d --- /dev/null +++ b/Tests/RunCMake/PrecompileHeaders/pch-included.cpp @@ -0,0 +1,8 @@ +#ifndef HAVE_PCH_SUPPORT +# include "pch.h" +#endif + +int testCpp() +{ + return PCH_INCLUDED; +} diff --git a/Tests/RunCMake/PrecompileHeaders/pch.h b/Tests/RunCMake/PrecompileHeaders/pch.h index 81b6d9e..20672d1 100644 --- a/Tests/RunCMake/PrecompileHeaders/pch.h +++ b/Tests/RunCMake/PrecompileHeaders/pch.h @@ -1,3 +1,5 @@ #pragma once #define PCH_INCLUDED 1 + +int testC(void); |