cmTarget: Re-arrange data layout.
Size with GNU libstdc++-5.1 goes from 840 bytes to 808 bytes.
This commit is contained in:
parent
647488570b
commit
41fef23b9b
@ -642,12 +642,6 @@ public:
|
|||||||
private:
|
private:
|
||||||
bool HandleLocationPropertyPolicy(cmMakefile* context) const;
|
bool HandleLocationPropertyPolicy(cmMakefile* context) const;
|
||||||
|
|
||||||
// The set of include directories that are marked as system include
|
|
||||||
// directories.
|
|
||||||
std::set<std::string> SystemIncludeDirectories;
|
|
||||||
|
|
||||||
std::vector<std::pair<TLLSignature, cmListFileContext> > TLLCommands;
|
|
||||||
|
|
||||||
#if defined(_WIN32) && !defined(__CYGWIN__)
|
#if defined(_WIN32) && !defined(__CYGWIN__)
|
||||||
/**
|
/**
|
||||||
* A list of direct dependencies. Use in conjunction with DependencyMap.
|
* A list of direct dependencies. Use in conjunction with DependencyMap.
|
||||||
@ -742,40 +736,48 @@ private:
|
|||||||
void GetSourceFiles(std::vector<std::string> &files,
|
void GetSourceFiles(std::vector<std::string> &files,
|
||||||
const std::string& config) const;
|
const std::string& config) const;
|
||||||
private:
|
private:
|
||||||
std::string Name;
|
mutable cmPropertyMap Properties;
|
||||||
std::vector<cmCustomCommand> PreBuildCommands;
|
std::set<std::string> SystemIncludeDirectories;
|
||||||
std::vector<cmCustomCommand> PreLinkCommands;
|
|
||||||
std::vector<cmCustomCommand> PostBuildCommands;
|
|
||||||
TargetType TargetTypeValue;
|
|
||||||
LinkLibraryVectorType PrevLinkedLibraries;
|
|
||||||
#if defined(_WIN32) && !defined(__CYGWIN__)
|
|
||||||
LinkLibraryVectorType LinkLibrariesForVS6;
|
|
||||||
bool LinkLibrariesForVS6Analyzed;
|
|
||||||
#endif
|
|
||||||
std::vector<std::string> LinkDirectories;
|
|
||||||
std::set<std::string> LinkDirectoriesEmmitted;
|
std::set<std::string> LinkDirectoriesEmmitted;
|
||||||
bool HaveInstallRule;
|
std::set<std::string> Utilities;
|
||||||
|
mutable std::set<std::string> LinkImplicitNullProperties;
|
||||||
|
std::map<std::string, cmListFileBacktrace> UtilityBacktraces;
|
||||||
|
mutable std::map<std::string, bool> DebugCompatiblePropertiesDone;
|
||||||
|
mutable std::map<std::string, std::string> MaxLanguageStandards;
|
||||||
|
cmPolicies::PolicyMap PolicyMap;
|
||||||
|
std::string Name;
|
||||||
std::string InstallPath;
|
std::string InstallPath;
|
||||||
std::string RuntimeInstallPath;
|
std::string RuntimeInstallPath;
|
||||||
mutable std::string ExportMacro;
|
mutable std::string ExportMacro;
|
||||||
std::set<std::string> Utilities;
|
std::vector<std::string> LinkDirectories;
|
||||||
std::map<std::string, cmListFileBacktrace> UtilityBacktraces;
|
std::vector<cmCustomCommand> PreBuildCommands;
|
||||||
bool RecordDependencies;
|
std::vector<cmCustomCommand> PreLinkCommands;
|
||||||
mutable cmPropertyMap Properties;
|
std::vector<cmCustomCommand> PostBuildCommands;
|
||||||
|
std::vector<std::pair<TLLSignature, cmListFileContext> > TLLCommands;
|
||||||
|
LinkLibraryVectorType PrevLinkedLibraries;
|
||||||
LinkLibraryVectorType OriginalLinkLibraries;
|
LinkLibraryVectorType OriginalLinkLibraries;
|
||||||
|
#if defined(_WIN32) && !defined(__CYGWIN__)
|
||||||
|
LinkLibraryVectorType LinkLibrariesForVS6;
|
||||||
|
#endif
|
||||||
|
cmMakefile* Makefile;
|
||||||
|
cmTargetInternalPointer Internal;
|
||||||
|
TargetType TargetTypeValue;
|
||||||
|
bool HaveInstallRule;
|
||||||
|
bool RecordDependencies;
|
||||||
bool DLLPlatform;
|
bool DLLPlatform;
|
||||||
bool IsAndroid;
|
bool IsAndroid;
|
||||||
bool IsApple;
|
bool IsApple;
|
||||||
bool IsImportedTarget;
|
bool IsImportedTarget;
|
||||||
|
bool BuildInterfaceIncludesAppended;
|
||||||
mutable bool DebugIncludesDone;
|
mutable bool DebugIncludesDone;
|
||||||
mutable std::map<std::string, bool> DebugCompatiblePropertiesDone;
|
|
||||||
mutable bool DebugCompileOptionsDone;
|
mutable bool DebugCompileOptionsDone;
|
||||||
mutable bool DebugCompileDefinitionsDone;
|
mutable bool DebugCompileDefinitionsDone;
|
||||||
mutable bool DebugSourcesDone;
|
mutable bool DebugSourcesDone;
|
||||||
mutable bool DebugCompileFeaturesDone;
|
mutable bool DebugCompileFeaturesDone;
|
||||||
mutable std::set<std::string> LinkImplicitNullProperties;
|
mutable bool LinkImplementationLanguageIsContextDependent;
|
||||||
mutable std::map<std::string, std::string> MaxLanguageStandards;
|
#if defined(_WIN32) && !defined(__CYGWIN__)
|
||||||
bool BuildInterfaceIncludesAppended;
|
bool LinkLibrariesForVS6Analyzed;
|
||||||
|
#endif
|
||||||
|
|
||||||
// Cache target output paths for each configuration.
|
// Cache target output paths for each configuration.
|
||||||
struct OutputInfo;
|
struct OutputInfo;
|
||||||
@ -825,16 +827,10 @@ private:
|
|||||||
|
|
||||||
void ProcessSourceExpression(std::string const& expr);
|
void ProcessSourceExpression(std::string const& expr);
|
||||||
|
|
||||||
// The cmMakefile instance that owns this target. This should
|
|
||||||
// always be set.
|
|
||||||
cmMakefile* Makefile;
|
|
||||||
cmPolicies::PolicyMap PolicyMap;
|
|
||||||
|
|
||||||
// Internal representation details.
|
// Internal representation details.
|
||||||
friend class cmTargetInternals;
|
friend class cmTargetInternals;
|
||||||
friend class cmGeneratorTarget;
|
friend class cmGeneratorTarget;
|
||||||
friend class cmTargetTraceDependencies;
|
friend class cmTargetTraceDependencies;
|
||||||
cmTargetInternalPointer Internal;
|
|
||||||
|
|
||||||
void ComputeVersionedName(std::string& vName,
|
void ComputeVersionedName(std::string& vName,
|
||||||
std::string const& prefix,
|
std::string const& prefix,
|
||||||
@ -842,8 +838,6 @@ private:
|
|||||||
std::string const& suffix,
|
std::string const& suffix,
|
||||||
std::string const& name,
|
std::string const& name,
|
||||||
const char* version) const;
|
const char* version) const;
|
||||||
|
|
||||||
mutable bool LinkImplementationLanguageIsContextDependent;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#ifdef CMAKE_BUILD_WITH_CMAKE
|
#ifdef CMAKE_BUILD_WITH_CMAKE
|
||||||
|
Loading…
x
Reference in New Issue
Block a user