mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-08 06:40:48 -06:00
Merge topic 'ninja-multi-per-config-sources'
b8937a992bMerge branch 'release' into ninja-multi-per-config-sourcesd13bd6ec3dNinja Multi-Config: Don't try to calculate dependencies for "all" Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Brad King <brad.king@kitware.com> Merge-request: !5430
This commit is contained in:
@@ -1253,7 +1253,9 @@ void cmGlobalNinjaGenerator::AddTargetAlias(const std::string& alias,
|
||||
std::string outputPath = this->NinjaOutputPath(alias);
|
||||
std::string buildAlias = this->BuildAlias(outputPath, config);
|
||||
cmNinjaDeps outputs;
|
||||
this->AppendTargetOutputs(target, outputs, config, DependOnTargetArtifact);
|
||||
if (config != "all") {
|
||||
this->AppendTargetOutputs(target, outputs, config, DependOnTargetArtifact);
|
||||
}
|
||||
// Mark the target's outputs as ambiguous to ensure that no other target
|
||||
// uses the output as an alias.
|
||||
for (std::string const& output : outputs) {
|
||||
|
||||
8
Tests/RunCMake/NinjaMultiConfig/PerConfigSources.cmake
Normal file
8
Tests/RunCMake/NinjaMultiConfig/PerConfigSources.cmake
Normal file
@@ -0,0 +1,8 @@
|
||||
enable_language(C)
|
||||
file(GENERATE OUTPUT "${CMAKE_BINARY_DIR}/main_$<CONFIG>.c" CONTENT
|
||||
[[int main(void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
]])
|
||||
add_executable(exe "${CMAKE_BINARY_DIR}/main_$<CONFIG>.c")
|
||||
@@ -246,6 +246,10 @@ unset(RunCMake_TEST_BINARY_DIR)
|
||||
|
||||
run_cmake(CustomCommandDepfile)
|
||||
|
||||
set(RunCMake_TEST_OPTIONS "-DCMAKE_CROSS_CONFIGS=all")
|
||||
run_cmake(PerConfigSources)
|
||||
unset(RunCMake_TEST_OPTIONS)
|
||||
|
||||
set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/PostfixAndLocation-build)
|
||||
set(RunCMake_TEST_OPTIONS "-DCMAKE_CONFIGURATION_TYPES=Debug\\;Release;-DCMAKE_CROSS_CONFIGS=all")
|
||||
run_cmake_configure(PostfixAndLocation)
|
||||
|
||||
Reference in New Issue
Block a user