summaryrefslogtreecommitdiffstats
path: root/Source
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2022-02-16 14:40:57 (GMT)
committerKitware Robot <kwrobot@kitware.com>2022-02-16 14:41:03 (GMT)
commit731bdec8b9a752772e35ca9563cfcd91d53f4e49 (patch)
treeb2f795e2e14640a6f98ccec777268e0e26b4bc8e /Source
parent1c62bf6a6d415e7515463b406160029e31a10ead (diff)
parentd92469e57210d6b4e9a2733d3477ae44a6cf9735 (diff)
downloadCMake-731bdec8b9a752772e35ca9563cfcd91d53f4e49.zip
CMake-731bdec8b9a752772e35ca9563cfcd91d53f4e49.tar.gz
CMake-731bdec8b9a752772e35ca9563cfcd91d53f4e49.tar.bz2
Merge topic 'vs-package-restore-docs'
d92469e572 Help: Clarify how package resolve mode is intended to be used f320a31087 cmake --build: prioritize --resolve-package-references over preset Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !6984
Diffstat (limited to 'Source')
-rw-r--r--Source/cmBuildOptions.h18
-rw-r--r--Source/cmGlobalVisualStudio10Generator.cxx2
-rw-r--r--Source/cmake.cxx3
-rw-r--r--Source/cmakemain.cxx2
4 files changed, 13 insertions, 12 deletions
diff --git a/Source/cmBuildOptions.h b/Source/cmBuildOptions.h
index 58baeef..aa3184e 100644
--- a/Source/cmBuildOptions.h
+++ b/Source/cmBuildOptions.h
@@ -7,20 +7,20 @@
/** \brief Defines how to resolve packages **/
enum class PackageResolveMode
{
- /** \brief Defines behavior based on cache variable (e.g.
+ /** \brief Behavior is defined by preset or cache variable (e.g.
CMAKE_VS_NUGET_PACKAGE_RESTORE). This is the default. **/
- FromCacheVariable,
+ Default,
- /** \brief Ignore behavior defined by cache variable and forces packages to
- be resolved prior to build. **/
+ /** \brief Ignore behavior defined by preset or cache variable and forces
+ packages to be resolved prior to build. **/
Force,
- /** \brief Ignore behavior defined by cache variable and forces packages to
- be resolved, but skip the actual build. **/
+ /** \brief Ignore behavior defined by preset or cache variable and forces
+ packages to be resolved, but skip the actual build. **/
OnlyResolve,
- /** \brief Ignore behavior defined by cache variable and dont resolve any
- packages **/
+ /** \brief Ignore behavior defined by preset or cache variable and don't
+ resolve any packages **/
Disable
};
@@ -40,5 +40,5 @@ public:
bool Clean = false;
bool Fast = false;
- PackageResolveMode ResolveMode = PackageResolveMode::FromCacheVariable;
+ PackageResolveMode ResolveMode = PackageResolveMode::Default;
};
diff --git a/Source/cmGlobalVisualStudio10Generator.cxx b/Source/cmGlobalVisualStudio10Generator.cxx
index 3301e8c..28d6295 100644
--- a/Source/cmGlobalVisualStudio10Generator.cxx
+++ b/Source/cmGlobalVisualStudio10Generator.cxx
@@ -1222,7 +1222,7 @@ cmGlobalVisualStudio10Generator::GenerateBuildCommand(
"Studio 2017 and later. You have to manually restore the "
"packages using NuGet before building the project.");
restorePackages = false;
- } else if (restoreMode == PackageResolveMode::FromCacheVariable) {
+ } else if (restoreMode == PackageResolveMode::Default) {
// Decide if a restore is performed, based on a cache variable.
if (cmValue cached =
this->CMakeInstance->GetState()->GetCacheEntryValue(
diff --git a/Source/cmake.cxx b/Source/cmake.cxx
index 85ac9ca..907b2d0 100644
--- a/Source/cmake.cxx
+++ b/Source/cmake.cxx
@@ -3356,7 +3356,8 @@ int cmake::Build(int jobs, std::string dir, std::vector<std::string> targets,
buildOptions.Clean = *expandedPreset->CleanFirst;
}
- if (expandedPreset->ResolvePackageReferences) {
+ if (buildOptions.ResolveMode == PackageResolveMode::Default &&
+ expandedPreset->ResolvePackageReferences) {
buildOptions.ResolveMode = *expandedPreset->ResolvePackageReferences;
}
diff --git a/Source/cmakemain.cxx b/Source/cmakemain.cxx
index f3d5536..0554c3e 100644
--- a/Source/cmakemain.cxx
+++ b/Source/cmakemain.cxx
@@ -447,7 +447,7 @@ int do_build(int ac, char const* const* av)
bool cleanFirst = false;
bool foundClean = false;
bool foundNonClean = false;
- PackageResolveMode resolveMode = PackageResolveMode::FromCacheVariable;
+ PackageResolveMode resolveMode = PackageResolveMode::Default;
bool verbose = cmSystemTools::HasEnv("VERBOSE");
std::string presetName;
bool listPresets = false;