diff options
author | David Cole <david.cole@kitware.com> | 2007-10-10 15:06:15 (GMT) |
---|---|---|
committer | David Cole <david.cole@kitware.com> | 2007-10-10 15:06:15 (GMT) |
commit | 8e4c7b99e1b73c641308c0177673dac33fe57df1 (patch) | |
tree | ad00c757835a3ac785fd1b3e78ca3b75c2f1a354 /Source/cmTarget.h | |
parent | aa9ba5c3efcd32ea631435318f63dc476ac39798 (diff) | |
download | CMake-8e4c7b99e1b73c641308c0177673dac33fe57df1.zip CMake-8e4c7b99e1b73c641308c0177673dac33fe57df1.tar.gz CMake-8e4c7b99e1b73c641308c0177673dac33fe57df1.tar.bz2 |
ENH: Finish up the Framework creation code restructuring. Frameworks build and install now. More work needed on the packaging step. See Tests/Framework for example use.
Diffstat (limited to 'Source/cmTarget.h')
-rw-r--r-- | Source/cmTarget.h | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/Source/cmTarget.h b/Source/cmTarget.h index be0ed65..44e0a05 100644 --- a/Source/cmTarget.h +++ b/Source/cmTarget.h @@ -84,6 +84,23 @@ public: void AddSourceFile(cmSourceFile* sf) { this->SourceFiles.push_back(sf); } /** + * Flags for a given source file as used in this target. Typically assigned + * via SET_TARGET_PROPERTIES when the property is a list of source files. + */ + struct SourceFileFlags + { + bool PrivateHeader; // source is in "PRIVATE_HEADER" target property + bool PublicHeader; // source is in "PUBLIC_HEADER" target property + bool Resource; // source is in "RESOURCE" target property *or* + // source has MACOSX_PACKAGE_LOCATION=="Resources" + }; + + /** + * Get the flags for a given source file as used in this target + */ + struct SourceFileFlags GetTargetSourceFileFlags(const cmSourceFile* sf); + + /** * Add sources to the target. */ void AddSources(std::vector<std::string> const& srcs); @@ -109,6 +126,7 @@ public: void ClearDependencyInformation(cmMakefile& mf, const char* target); // Check to see if a library is a framework and treat it different on Mac + bool NameResolvesToFramework(const std::string& libname); bool AddFramework(const std::string& lib, LinkLibraryType llt); void AddLinkLibrary(cmMakefile& mf, const char *target, const char* lib, @@ -360,6 +378,9 @@ private: void SetPropertyDefault(const char* property, const char* default_value); // Get the full path to the target output directory. + const char* GetAndCreateOutputDir(bool implib, bool create); + + // Get the full path to the target output directory. const char* GetOutputDir(bool implib); const char* ImportedGetLocation(const char* config); |