diff options
author | Brad King <brad.king@kitware.com> | 2019-05-28 15:49:43 (GMT) |
---|---|---|
committer | Kitware Robot <kwrobot@kitware.com> | 2019-05-28 15:50:28 (GMT) |
commit | da0937c04fe8cb167a55a1e37cf275d24a262fa7 (patch) | |
tree | 3b00c937b45e6b4c0d30c13e56c2247c9105e10e | |
parent | 56fec2fe8f7014abb5677fd4fca03fa208c498e8 (diff) | |
parent | 9e5457d3b4f5c46028c29d731f4057e3fa76415a (diff) | |
download | CMake-da0937c04fe8cb167a55a1e37cf275d24a262fa7.zip CMake-da0937c04fe8cb167a55a1e37cf275d24a262fa7.tar.gz CMake-da0937c04fe8cb167a55a1e37cf275d24a262fa7.tar.bz2 |
Merge topic 'swift-response'
9e5457d3b4 Ninja,Swift: correct response file handling
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3367
-rw-r--r-- | Modules/CMakeSwiftInformation.cmake | 2 | ||||
-rw-r--r-- | Source/cmNinjaNormalTargetGenerator.cxx | 6 |
2 files changed, 7 insertions, 1 deletions
diff --git a/Modules/CMakeSwiftInformation.cmake b/Modules/CMakeSwiftInformation.cmake index 2bba178..1477e8a 100644 --- a/Modules/CMakeSwiftInformation.cmake +++ b/Modules/CMakeSwiftInformation.cmake @@ -18,10 +18,12 @@ if(CMAKE_Swift_COMPILER_ID) endif() set(CMAKE_INCLUDE_FLAG_Swift "-I ") + set(CMAKE_Swift_DEFINE_FLAG -D) set(CMAKE_Swift_COMPILE_OPTIONS_TARGET "-target ") set(CMAKE_Swift_COMPILER_ARG1 -frontend) set(CMAKE_Swift_FRAMEWORK_SEARCH_FLAG "-F ") +set(CMAKE_Swift_RESPONSE_FILE_LINK_FLAG @) # NOTE(compnerd) use the short form for convenience and ease of search. They # are treated equivalent to their long form names as well as custom Swift diff --git a/Source/cmNinjaNormalTargetGenerator.cxx b/Source/cmNinjaNormalTargetGenerator.cxx index 1e4d2ed..77af45e 100644 --- a/Source/cmNinjaNormalTargetGenerator.cxx +++ b/Source/cmNinjaNormalTargetGenerator.cxx @@ -321,7 +321,11 @@ void cmNinjaNormalTargetGenerator::WriteLinkRule(bool useResponseFile) rspcontent = "$in_newline"; } rspcontent += " $LINK_PATH $LINK_LIBRARIES"; - vars.Objects = responseFlag.c_str(); + if (this->TargetLinkLanguage == "Swift") { + vars.SwiftSources = responseFlag.c_str(); + } else { + vars.Objects = responseFlag.c_str(); + } vars.LinkLibraries = ""; } |