mirror of
https://github.com/reactos/CMake.git
synced 2024-11-24 03:59:58 +00:00
file: Drop error cases added by CMake 3.12.0-rc1 to avoid regressions
Refactoring in commit v3.12.0-rc1~418^2~3 (Refactor HandleGlobCommand, 2018-02-13) introduced error diagnostics for argument combinations that were previously accepted. Restore acceptance to avoid regressing projects that used those combinations even if they do not make sense. Fixes: #18097
This commit is contained in:
parent
ef5e2e8a62
commit
142a625729
@ -777,7 +777,7 @@ bool cmFileCommand::HandleGlobCommand(std::vector<std::string> const& args,
|
||||
this->Makefile->GetCMakeInstance()->GetWorkingMode();
|
||||
while (i != args.end()) {
|
||||
if (*i == "LIST_DIRECTORIES") {
|
||||
++i;
|
||||
++i; // skip LIST_DIRECTORIES
|
||||
if (i != args.end()) {
|
||||
if (cmSystemTools::IsOn(i->c_str())) {
|
||||
g.SetListDirs(true);
|
||||
@ -789,27 +789,21 @@ bool cmFileCommand::HandleGlobCommand(std::vector<std::string> const& args,
|
||||
this->SetError("LIST_DIRECTORIES missing bool value.");
|
||||
return false;
|
||||
}
|
||||
++i;
|
||||
} else {
|
||||
this->SetError("LIST_DIRECTORIES missing bool value.");
|
||||
return false;
|
||||
}
|
||||
++i;
|
||||
if (i == args.end()) {
|
||||
this->SetError("GLOB requires a glob expression after the bool.");
|
||||
return false;
|
||||
}
|
||||
} else if (*i == "FOLLOW_SYMLINKS") {
|
||||
if (!recurse) {
|
||||
this->SetError("FOLLOW_SYMLINKS is not a valid parameter for GLOB.");
|
||||
return false;
|
||||
}
|
||||
explicitFollowSymlinks = true;
|
||||
g.RecurseThroughSymlinksOn();
|
||||
++i;
|
||||
if (i == args.end()) {
|
||||
this->SetError(
|
||||
"GLOB_RECURSE requires a glob expression after FOLLOW_SYMLINKS.");
|
||||
return false;
|
||||
++i; // skip FOLLOW_SYMLINKS
|
||||
if (recurse) {
|
||||
explicitFollowSymlinks = true;
|
||||
g.RecurseThroughSymlinksOn();
|
||||
if (i == args.end()) {
|
||||
this->SetError(
|
||||
"GLOB_RECURSE requires a glob expression after FOLLOW_SYMLINKS.");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
} else if (*i == "RELATIVE") {
|
||||
++i; // skip RELATIVE
|
||||
|
@ -1 +0,0 @@
|
||||
1
|
@ -1,4 +0,0 @@
|
||||
^CMake Error at GLOB-error-FOLLOW_SYMLINKS\.cmake:[0-9]+ \(file\):
|
||||
file FOLLOW_SYMLINKS is not a valid parameter for GLOB\.
|
||||
Call Stack \(most recent call first\):
|
||||
CMakeLists\.txt:[0-9]+ \(include\)$
|
@ -1 +0,0 @@
|
||||
1
|
@ -1,4 +0,0 @@
|
||||
^CMake Error at GLOB-noexp-LIST_DIRECTORIES\.cmake:[0-9]+ \(file\):
|
||||
file GLOB requires a glob expression after the bool\.
|
||||
Call Stack \(most recent call first\):
|
||||
CMakeLists\.txt:[0-9]+ \(include\)$
|
@ -39,12 +39,12 @@ run_cmake(GLOB_RECURSE-noexp-FOLLOW_SYMLINKS)
|
||||
|
||||
# tests are valid both for GLOB and GLOB_RECURSE
|
||||
run_cmake(GLOB-sort-dedup)
|
||||
run_cmake(GLOB-error-FOLLOW_SYMLINKS)
|
||||
run_cmake(GLOB-error-LIST_DIRECTORIES-not-boolean)
|
||||
run_cmake(GLOB-error-LIST_DIRECTORIES-no-arg)
|
||||
run_cmake(GLOB-error-RELATIVE-no-arg)
|
||||
run_cmake(GLOB-error-CONFIGURE_DEPENDS-modified)
|
||||
run_cmake(GLOB-noexp-CONFIGURE_DEPENDS)
|
||||
run_cmake(GLOB-noexp-FOLLOW_SYMLINKS)
|
||||
run_cmake(GLOB-noexp-LIST_DIRECTORIES)
|
||||
run_cmake(GLOB-noexp-RELATIVE)
|
||||
run_cmake_command(GLOB-error-CONFIGURE_DEPENDS-SCRIPT_MODE ${CMAKE_COMMAND} -P
|
||||
|
Loading…
Reference in New Issue
Block a user