
Run the `clang-format.bash` script to update all our C and C++ code to a new style defined by `.clang-format`, now with "east const" enforcement. Use `clang-format` version 18. * If you reached this commit for a line in `git blame`, re-run the blame operation starting at the parent of this commit to see older history for the content. * See the parent commit for instructions to rebase a change across this style transition commit. Issue: #26123
45 lines
1.3 KiB
C++
45 lines
1.3 KiB
C++
/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
|
file Copyright.txt or https://cmake.org/licensing for details. */
|
|
#pragma once
|
|
|
|
#include "cmConfigure.h" // IWYU pragma: keep
|
|
|
|
/** \brief Defines how to resolve packages **/
|
|
enum class PackageResolveMode
|
|
{
|
|
/** \brief Behavior is defined by preset or cache variable (e.g.
|
|
CMAKE_VS_NUGET_PACKAGE_RESTORE). This is the default. **/
|
|
Default,
|
|
|
|
/** \brief Ignore behavior defined by preset or cache variable and forces
|
|
packages to be resolved prior to build. **/
|
|
Force,
|
|
|
|
/** \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 preset or cache variable and don't
|
|
resolve any packages **/
|
|
Disable
|
|
};
|
|
|
|
struct cmBuildOptions
|
|
{
|
|
public:
|
|
cmBuildOptions() noexcept = default;
|
|
explicit cmBuildOptions(bool clean, bool fast,
|
|
PackageResolveMode resolveMode) noexcept
|
|
: Clean(clean)
|
|
, Fast(fast)
|
|
, ResolveMode(resolveMode)
|
|
{
|
|
}
|
|
explicit cmBuildOptions(cmBuildOptions const&) noexcept = default;
|
|
cmBuildOptions& operator=(cmBuildOptions const&) noexcept = default;
|
|
|
|
bool Clean = false;
|
|
bool Fast = false;
|
|
PackageResolveMode ResolveMode = PackageResolveMode::Default;
|
|
};
|