mirror of
https://gitlab.kitware.com/cmake/cmake.git
synced 2026-09-25 04:09:36 +03:00
presets: Identify unknown configure preset references
This commit is contained in:
@@ -170,11 +170,14 @@ void INVALID_INCLUDE(Json::Value const* value, cmJSONState* state)
|
||||
state->AddErrorAtValue("Invalid \"include\" field", value);
|
||||
}
|
||||
|
||||
void INVALID_CONFIGURE_PRESET(std::string const& presetName,
|
||||
cmJSONState* state)
|
||||
void CONFIGURE_PRESET_NOT_FOUND(std::string const& presetName,
|
||||
std::string const& kind,
|
||||
std::string const& configurePreset,
|
||||
cmJSONState* state)
|
||||
{
|
||||
state->AddError(
|
||||
cmStrCat(R"(Invalid "configurePreset": ")", presetName, '"'));
|
||||
state->AddError(cmStrCat(
|
||||
CapitalizePresetKind(kind), " preset \"", presetName,
|
||||
"\" references unknown configure preset \"", configurePreset, '"'));
|
||||
}
|
||||
|
||||
void INSTALL_PREFIX_UNSUPPORTED(Json::Value const* value, cmJSONState* state)
|
||||
|
||||
@@ -66,8 +66,10 @@ void INCLUDE_UNSUPPORTED(Json::Value const*, cmJSONState* state);
|
||||
|
||||
void INVALID_INCLUDE(Json::Value const* value, cmJSONState* state);
|
||||
|
||||
void INVALID_CONFIGURE_PRESET(std::string const& presetName,
|
||||
cmJSONState* state);
|
||||
void CONFIGURE_PRESET_NOT_FOUND(std::string const& presetName,
|
||||
std::string const& kind,
|
||||
std::string const& configurePreset,
|
||||
cmJSONState* state);
|
||||
|
||||
void INSTALL_PREFIX_UNSUPPORTED(Json::Value const* value, cmJSONState* state);
|
||||
|
||||
|
||||
@@ -1278,8 +1278,9 @@ bool cmCMakePresetsGraph::ReadProjectPresetsInternal(
|
||||
auto const configurePreset =
|
||||
this->ConfigurePresets.find(it.second.Unexpanded.ConfigurePreset);
|
||||
if (configurePreset == this->ConfigurePresets.end()) {
|
||||
cmCMakePresetsErrors::INVALID_CONFIGURE_PRESET(it.first,
|
||||
&this->parseState);
|
||||
cmCMakePresetsErrors::CONFIGURE_PRESET_NOT_FOUND(
|
||||
it.first, BuildPreset::kind(), it.second.Unexpanded.ConfigurePreset,
|
||||
&this->parseState);
|
||||
return false;
|
||||
}
|
||||
if (!it.second.Unexpanded.OriginFile->ReachableFiles.count(
|
||||
@@ -1308,8 +1309,9 @@ bool cmCMakePresetsGraph::ReadProjectPresetsInternal(
|
||||
auto const configurePreset =
|
||||
this->ConfigurePresets.find(it.second.Unexpanded.ConfigurePreset);
|
||||
if (configurePreset == this->ConfigurePresets.end()) {
|
||||
cmCMakePresetsErrors::INVALID_CONFIGURE_PRESET(it.first,
|
||||
&this->parseState);
|
||||
cmCMakePresetsErrors::CONFIGURE_PRESET_NOT_FOUND(
|
||||
it.first, TestPreset::kind(), it.second.Unexpanded.ConfigurePreset,
|
||||
&this->parseState);
|
||||
return false;
|
||||
}
|
||||
if (!it.second.Unexpanded.OriginFile->ReachableFiles.count(
|
||||
@@ -1338,8 +1340,9 @@ bool cmCMakePresetsGraph::ReadProjectPresetsInternal(
|
||||
auto const configurePreset =
|
||||
this->ConfigurePresets.find(it.second.Unexpanded.ConfigurePreset);
|
||||
if (configurePreset == this->ConfigurePresets.end()) {
|
||||
cmCMakePresetsErrors::INVALID_CONFIGURE_PRESET(it.first,
|
||||
&this->parseState);
|
||||
cmCMakePresetsErrors::CONFIGURE_PRESET_NOT_FOUND(
|
||||
it.first, PackagePreset::kind(),
|
||||
it.second.Unexpanded.ConfigurePreset, &this->parseState);
|
||||
return false;
|
||||
}
|
||||
if (!it.second.Unexpanded.OriginFile->ReachableFiles.count(
|
||||
|
||||
+1
-1
@@ -1,3 +1,3 @@
|
||||
CMake Error: Could not read presets from [^
|
||||
]*/Tests/RunCMake/CMakePresetsBuild/InvalidConfigurePreset:
|
||||
Invalid "configurePreset": "badConfigurePreset"$
|
||||
Build preset "badConfigurePreset" references unknown configure preset "dne"$
|
||||
|
||||
+1
-1
@@ -1,3 +1,3 @@
|
||||
CMake Error: Could not read presets from [^
|
||||
]*/Tests/RunCMake/CMakePresetsBuild/InvalidConfigurePreset:
|
||||
Invalid "configurePreset": "badConfigurePreset"$
|
||||
Build preset "badConfigurePreset" references unknown configure preset "dne"$
|
||||
|
||||
+1
@@ -0,0 +1 @@
|
||||
1
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
^CPack Error: Could not read presets from [^
|
||||
]*/Tests/RunCMake/CMakePresetsPackage/InvalidConfigurePreset:
|
||||
Package preset "package-release" references unknown configure preset "does-not-exist"$
|
||||
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"version": 6,
|
||||
"configurePresets": [
|
||||
{
|
||||
"name": "default",
|
||||
"generator": "@RunCMake_GENERATOR@",
|
||||
"binaryDir": "${sourceDir}/build"
|
||||
}
|
||||
],
|
||||
"packagePresets": [
|
||||
{
|
||||
"name": "package-release",
|
||||
"configurePreset": "does-not-exist"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -115,3 +115,7 @@ unset(CMakePresets_FILE_ARG)
|
||||
run_cmake_command(PresetsNoArg-package ${CMAKE_CPACK_COMMAND} "--preset")
|
||||
run_cmake_command(PresetsNoArgEq-package ${CMAKE_CPACK_COMMAND} "--preset=")
|
||||
run_cmake_command(PresetsFileNoArg-package ${CMAKE_CPACK_COMMAND} "--presets-file")
|
||||
|
||||
set(CMakePresetsPackage_NO_CONFIGURE 1)
|
||||
set(CMakePresetsPackage_NO_BUILD 1)
|
||||
run_cmake_package_presets(InvalidConfigurePreset "" "" "package-release")
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
CMake Error: Could not read presets from [^
|
||||
]*/Tests/RunCMake/CMakePresetsTest/InvalidConfigurePreset:
|
||||
Invalid "configurePreset": "badConfigurePreset"$
|
||||
Test preset "badConfigurePreset" references unknown configure preset "dne"$
|
||||
|
||||
+1
-1
@@ -1,3 +1,3 @@
|
||||
CMake Error: Could not read presets from [^
|
||||
]*/Tests/RunCMake/CMakePresetsTest/InvalidConfigurePreset:
|
||||
Invalid "configurePreset": "badConfigurePreset"$
|
||||
Test preset "badConfigurePreset" references unknown configure preset "dne"$
|
||||
|
||||
Reference in New Issue
Block a user