mirror of
https://github.com/Kitware/CMake.git
synced 2026-05-01 20:00:51 -05:00
Merge branch 'backport-configure_file-canonical-deps' into release-3.13
Merge-request: !2635
This commit is contained in:
@@ -20,11 +20,8 @@ bool cmConfigureFileCommand::InitialPass(std::vector<std::string> const& args,
|
||||
}
|
||||
|
||||
std::string const& inFile = args[0];
|
||||
if (!cmSystemTools::FileIsFullPath(inFile)) {
|
||||
this->InputFile = this->Makefile->GetCurrentSourceDirectory();
|
||||
this->InputFile += "/";
|
||||
}
|
||||
this->InputFile += inFile;
|
||||
this->InputFile = cmSystemTools::CollapseFullPath(
|
||||
inFile, this->Makefile->GetCurrentSourceDirectory());
|
||||
|
||||
// If the input location is a directory, error out.
|
||||
if (cmSystemTools::FileIsDirectory(this->InputFile)) {
|
||||
@@ -39,11 +36,8 @@ bool cmConfigureFileCommand::InitialPass(std::vector<std::string> const& args,
|
||||
}
|
||||
|
||||
std::string const& outFile = args[1];
|
||||
if (!cmSystemTools::FileIsFullPath(outFile)) {
|
||||
this->OutputFile = this->Makefile->GetCurrentBinaryDirectory();
|
||||
this->OutputFile += "/";
|
||||
}
|
||||
this->OutputFile += outFile;
|
||||
this->OutputFile = cmSystemTools::CollapseFullPath(
|
||||
outFile, this->Makefile->GetCurrentBinaryDirectory());
|
||||
|
||||
// If the output location is already a directory put the file in it.
|
||||
if (cmSystemTools::FileIsDirectory(this->OutputFile)) {
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
cmake_minimum_required(VERSION 3.12)
|
||||
project(Test LANGUAGES C)
|
||||
|
||||
configure_file(PreventConfigureFileDupBuildRule.cmake PreventTargetAliasesDupBuildRule.cmake @ONLY)
|
||||
add_subdirectory(SubDirConfigureFileDup)
|
||||
@@ -286,3 +286,10 @@ function (run_PreventTargetAliasesDupBuildRule)
|
||||
run_ninja("${RunCMake_TEST_BINARY_DIR}" -w dupbuild=err)
|
||||
endfunction ()
|
||||
run_PreventTargetAliasesDupBuildRule()
|
||||
|
||||
function (run_PreventConfigureFileDupBuildRule)
|
||||
set(RunCMake_TEST_BINARY_DIR ${RunCMake_BINARY_DIR}/PreventConfigureFileDupBuildRule-build)
|
||||
run_cmake(PreventConfigureFileDupBuildRule)
|
||||
run_ninja("${RunCMake_TEST_BINARY_DIR}" -w dupbuild=err)
|
||||
endfunction()
|
||||
run_PreventConfigureFileDupBuildRule()
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
configure_file(../PreventConfigureFileDupBuildRule.cmake PreventTargetAliasesDupBuildRule.cmake @ONLY)
|
||||
@@ -1,7 +1,7 @@
|
||||
CMake Error at DirInput.cmake:[0-9]+ \(configure_file\):
|
||||
configure_file input location
|
||||
|
||||
.*/Tests/RunCMake/configure_file/.
|
||||
.*/Tests/RunCMake/configure_file
|
||||
|
||||
is a directory but a file was expected.
|
||||
Call Stack \(most recent call first\):
|
||||
|
||||
Reference in New Issue
Block a user