mirror of
https://github.com/Kitware/CMake.git
synced 2025-10-16 14:08:35 +08:00
Ninja Multi-Config: Don't try to calculate dependencies for "all"
This commit is contained in:
@@ -1202,7 +1202,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);
|
||||
if (config != "all") {
|
||||
this->AppendTargetOutputs(target, outputs, config);
|
||||
}
|
||||
// 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