| /* Distributed under the OSI-approved BSD 3-Clause License. See accompanying | |
| file LICENSE.rst or https://cmake.org/licensing for details. */ | |
| #pragma once | |
| #include <string> | |
| 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); |