/* 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 cmValue; enum class cmGetDirectoryPropertyResult { Success, DirectoryNotFound, }; // Resolve a DIRECTORY scope name to its makefile. Returns nullptr if // no such directory has been processed. An empty dirName returns // &callerMf (i.e. the current directory's makefile). cmMakefile* cmResolveDirectoryMakefile(cmMakefile& callerMf, std::string const& dirName); cmGetDirectoryPropertyResult cmGetDirectoryProperty( std::string const& dirName, std::string const& propertyName, cmMakefile& callerMf, cmValue& propertyValue); // Overload for callers that have already resolved the target directory. cmGetDirectoryPropertyResult cmGetDirectoryProperty( cmMakefile& mf, std::string const& propertyName, cmValue& propertyValue);