summaryrefslogtreecommitdiffstats
path: root/Source/cmInstallGenerator.cxx
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2006-03-03 23:44:32 (GMT)
committerBrad King <brad.king@kitware.com>2006-03-03 23:44:32 (GMT)
commita2e136fd17b693765a4961220433bdf207930583 (patch)
treeb785101e7a9fe7bed52a05e3d483216b500a4d70 /Source/cmInstallGenerator.cxx
parent5792dc8da8a567ece9fd231e9844a5b1cd30ddc2 (diff)
downloadCMake-a2e136fd17b693765a4961220433bdf207930583.zip
CMake-a2e136fd17b693765a4961220433bdf207930583.tar.gz
CMake-a2e136fd17b693765a4961220433bdf207930583.tar.bz2
ENH: Added PERMISSIONS and RENAME options to the INSTALL command's FILES and PROGRAMS mode, and corresponding support to FILE(INSTALL). Default permissions for shared libraries on non-Windows/non-OSX platforms no longer has the execute bit set.
Diffstat (limited to 'Source/cmInstallGenerator.cxx')
-rw-r--r--Source/cmInstallGenerator.cxx12
1 files changed, 11 insertions, 1 deletions
diff --git a/Source/cmInstallGenerator.cxx b/Source/cmInstallGenerator.cxx
index a7e1d6f..0cb3a51 100644
--- a/Source/cmInstallGenerator.cxx
+++ b/Source/cmInstallGenerator.cxx
@@ -52,7 +52,9 @@ void cmInstallGenerator::AddInstallRule(std::ostream& os,
int type,
const char* file,
bool optional /* = false */,
- const char* properties /* = 0 */)
+ const char* properties /* = 0 */,
+ const char* permissions /* = 0 */,
+ const char* rename /* = 0 */)
{
// Use the FILE command to install the file.
std::string stype;
@@ -75,5 +77,13 @@ void cmInstallGenerator::AddInstallRule(std::ostream& os,
{
os << " PROPERTIES" << properties;
}
+ if(permissions && *permissions)
+ {
+ os << " PERMISSIONS" << permissions;
+ }
+ if(rename && *rename)
+ {
+ os << " RENAME \"" << rename << "\"";
+ }
os << " FILES \"" << file << "\")\n";
}