summaryrefslogtreecommitdiffstats
path: root/Source/cmTarget.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2006-02-16 20:19:00 (GMT)
committerBrad King <brad.king@kitware.com>2006-02-16 20:19:00 (GMT)
commit537e2b4ed57d5a84f140f9b9bde427e7b604b330 (patch)
tree8f7869ce7e441cdb2b45d46a235d74ca97cde6f9 /Source/cmTarget.h
parent13661cdd23790dd6d8c118ba7b95b278966e7dae (diff)
downloadCMake-537e2b4ed57d5a84f140f9b9bde427e7b604b330.zip
CMake-537e2b4ed57d5a84f140f9b9bde427e7b604b330.tar.gz
CMake-537e2b4ed57d5a84f140f9b9bde427e7b604b330.tar.bz2
ENH: Implemented RPATH specification support. It is documented by the command SET_TARGET_PROPERTIES.
Diffstat (limited to 'Source/cmTarget.h')
-rw-r--r--Source/cmTarget.h16
1 files changed, 14 insertions, 2 deletions
diff --git a/Source/cmTarget.h b/Source/cmTarget.h
index 790ab39..0f6749c 100644
--- a/Source/cmTarget.h
+++ b/Source/cmTarget.h
@@ -63,7 +63,7 @@ public:
void SetInAll(bool f) { this->SetProperty("IN_ALL", (f) ?"TRUE" : "FALSE"); }
///! Set the cmMakefile that owns this target
- void SetMakefile(cmMakefile *mf) { m_Makefile = mf; };
+ void SetMakefile(cmMakefile *mf);
cmMakefile *GetMakefile() { return m_Makefile;};
/**
@@ -209,6 +209,15 @@ public:
executable target. */
void GetExecutableCleanNames(std::string& name, std::string& realName,
const char* config);
+
+ /**
+ * Compute whether this target must be relinked before installing.
+ */
+ bool NeedRelinkBeforeInstall();
+
+ bool HaveBuildTreeRPATH();
+ bool HaveInstallTreeRPATH();
+
private:
/**
* A list of direct dependencies. Use in conjunction with DependencyMap.
@@ -281,7 +290,10 @@ private:
// update the value of the LOCATION var
void UpdateLocation();
-
+
+ // Use a makefile variable to set a default for the given property.
+ // If the variable is not defined use the given default instead.
+ void SetPropertyDefault(const char* property, const char* default_value);
private:
std::string m_Name;
std::vector<cmCustomCommand> m_PreBuildCommands;