/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying file LICENSE.rst or https://cmake.org/licensing for details. */ #pragma once #include class cmMakefile; class cmTarget; class cmValue; enum class cmGetTargetPropertyResult { Success, TargetNotFound, }; cmGetTargetPropertyResult cmGetTargetProperty(std::string const& targetName, std::string const& propertyName, cmMakefile& mf, cmValue& propertyValue); // Overload for callers that have already resolved the target. The // targetName is still required for ALIASED_TARGET / ALIAS_GLOBAL, // which dispatch on whether the *lookup* name is an alias (not whether // the resolved target is one). cmGetTargetPropertyResult cmGetTargetProperty(std::string const& targetName, cmTarget const* target, std::string const& propertyName, cmMakefile& mf, cmValue& propertyValue);