View Issue Details [ Jump to Notes ] | [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
0002691 | CMake | CMake | public | 2006-01-06 09:31 | 2015-06-01 08:38 | ||||
Reporter | Brad King | ||||||||
Assigned To | Brad King | ||||||||
Priority | low | Severity | feature | Reproducibility | always | ||||
Status | closed | Resolution | fixed | ||||||
Platform | OS | OS Version | |||||||
Product Version | |||||||||
Target Version | Fixed in Version | ||||||||
Summary | 0002691: New install specification framework or command | ||||||||
Description | Many users have had problems getting specific install behavior. This feature request can be used to list desired install features. So far we have: - Specify absolute install location, not relative to CMAKE_INSTALL_PREFIX. - Change the name of a file as it is installed. - Bug 0001201 - Bug 0001481 - Bug 0001694 - Bug 0001695 - Bug 0002513 - Bug 0002527 Currently the INSTALL_* commands just record information which the generators put in cmake_install.cmake files that are then executed for the real installation. This design may need adjustment to fully accommodate all these features. | ||||||||
Tags | No tags attached. | ||||||||
Attached Files | |||||||||
Relationships | ||||||
|
Relationships |
Notes | |
(0003760) Brad King (manager) 2006-02-19 15:28 |
I've created a new cmInstallGenerator class hierarchy to generate install rules. Instances are created by the INSTALL command. The following changes introduce the framework and close bug#1481 and bug#1695: /cvsroot/CMake/CMake/bootstrap,v <-- bootstrap new revision: 1.76; previous revision: 1.75 /cvsroot/CMake/CMake/Source/CMakeLists.txt,v <-- CMakeLists.txt new revision: 1.270; previous revision: 1.269 /cvsroot/CMake/CMake/Source/cmInstallCommand.cxx,v <-- cmInstallCommand.cxx new revision: 1.2; previous revision: 1.1 /cvsroot/CMake/CMake/Source/cmInstallCommand.h,v <-- cmInstallCommand.h new revision: 1.2; previous revision: 1.1 /cvsroot/CMake/CMake/Source/cmInstallGenerator.cxx,v <-- cmInstallGenerator.cxx initial revision: 1.1 /cvsroot/CMake/CMake/Source/cmInstallGenerator.h,v <-- cmInstallGenerator.h initial revision: 1.1 /cvsroot/CMake/CMake/Source/cmInstallScriptGenerator.cxx,v <-- cmInstallScriptGenerator.cxx initial revision: 1.1 /cvsroot/CMake/CMake/Source/cmInstallScriptGenerator.h,v <-- cmInstallScriptGenerator.h initial revision: 1.1 /cvsroot/CMake/CMake/Source/cmInstallTargetGenerator.cxx,v <-- cmInstallTargetGenerator.cxx initial revision: 1.1 /cvsroot/CMake/CMake/Source/cmInstallTargetGenerator.h,v <-- cmInstallTargetGenerator.h initial revision: 1.1 /cvsroot/CMake/CMake/Source/cmInstallTargetsCommand.h,v <-- cmInstallTargetsCommand.h new revision: 1.11; previous revision: 1.10 /cvsroot/CMake/CMake/Source/cmLocalGenerator.cxx,v <-- cmLocalGenerator.cxx new revision: 1.104; previous revision: 1.103 /cvsroot/CMake/CMake/Source/cmLocalGenerator.h,v <-- cmLocalGenerator.h new revision: 1.44; previous revision: 1.43 /cvsroot/CMake/CMake/Source/cmMakefile.cxx,v <-- cmMakefile.cxx new revision: 1.322; previous revision: 1.321 /cvsroot/CMake/CMake/Source/cmMakefile.h,v <-- cmMakefile.h new revision: 1.175; previous revision: 1.174 /cvsroot/CMake/CMake/Source/cmSetTargetPropertiesCommand.h,v <-- cmSetTargetPropertiesCommand.h new revision: 1.16; previous revision: 1.15 /cvsroot/CMake/CMake/Tests/SimpleInstall/CMakeLists.txt,v <-- CMakeLists.txt new revision: 1.34; previous revision: 1.33 |
(0003761) Brad King (manager) 2006-02-19 15:47 |
Having introduced the framework and done some rpath fixes the new set of open issues is: - Specify absolute install location for FILES and PROGRAMS (TARGETS is fixed). - Change the name of FILES (and PROGRAMS?) as they are installed (this may not make sense for TARGETS due to things like soname, and may not be as useful). - Bug#1201 (set ownership/permissions, may also allow installation of PROGRAMS using the same interface as FILES). - Bug#1694 (install an entire directory). - Bug#2513 (set install_name on Mac OSX). |
(0003762) Brad King (manager) 2006-02-19 18:48 |
The following changes add support in the new framework for installing FILES and PROGRAMS. This addresses the request for absolute path install destinations. /cvsroot/CMake/CMake/bootstrap,v <-- bootstrap new revision: 1.77; previous revision: 1.76 /cvsroot/CMake/CMake/Source/CMakeLists.txt,v <-- CMakeLists.txt new revision: 1.271; previous revision: 1.270 /cvsroot/CMake/CMake/Source/cmInstallCommand.cxx,v <-- cmInstallCommand.cxx new revision: 1.4; previous revision: 1.3 /cvsroot/CMake/CMake/Source/cmInstallCommand.h,v <-- cmInstallCommand.h new revision: 1.3; previous revision: 1.2 /cvsroot/CMake/CMake/Source/cmInstallFilesCommand.h,v <-- cmInstallFilesCommand.h new revision: 1.15; previous revision: 1.14 /cvsroot/CMake/CMake/Source/cmInstallFilesGenerator.cxx,v <-- cmInstallFilesGenerator.cxx initial revision: 1.1 /cvsroot/CMake/CMake/Source/cmInstallFilesGenerator.h,v <-- cmInstallFilesGenerator.h initial revision: 1.1 /cvsroot/CMake/CMake/Source/cmInstallProgramsCommand.h,v <-- cmInstallProgramsCommand.h new revision: 1.12; previous revision: 1.11 /cvsroot/CMake/CMake/Source/cmLocalGenerator.cxx,v <-- cmLocalGenerator.cxx new revision: 1.105; previous revision: 1.104 /cvsroot/CMake/CMake/Tests/SimpleInstall/CMakeLists.txt,v <-- CMakeLists.txt new revision: 1.36; previous revision: 1.35 |
(0003833) Brad King (manager) 2006-03-03 18:48 |
The following changes add RENAME and PERMISSIONS options to the INSTALL command's FILES and PROGRAMS mode. /cvsroot/CMake/CMake/Source/cmFileCommand.cxx,v <-- cmFileCommand.cxx new revision: 1.40; previous revision: 1.39 /cvsroot/CMake/CMake/Source/cmInstallCommand.cxx,v <-- cmInstallCommand.cxx new revision: 1.5; previous revision: 1.4 /cvsroot/CMake/CMake/Source/cmInstallCommand.h,v <-- cmInstallCommand.h new revision: 1.4; previous revision: 1.3 /cvsroot/CMake/CMake/Source/cmInstallFilesGenerator.cxx,v <-- cmInstallFilesGenerator.cxx new revision: 1.2; previous revision: 1.1 /cvsroot/CMake/CMake/Source/cmInstallFilesGenerator.h,v <-- cmInstallFilesGenerator.h new revision: 1.2; previous revision: 1.1 /cvsroot/CMake/CMake/Source/cmInstallGenerator.cxx,v <-- cmInstallGenerator.cxx new revision: 1.4; previous revision: 1.3 /cvsroot/CMake/CMake/Source/cmInstallGenerator.h,v <-- cmInstallGenerator.h new revision: 1.3; previous revision: 1.2 /cvsroot/CMake/CMake/Source/cmLocalGenerator.cxx,v <-- cmLocalGenerator.cxx new revision: 1.110; previous revision: 1.109 /cvsroot/CMake/CMake/Tests/SimpleInstall/CMakeLists.txt,v <-- CMakeLists.txt new revision: 1.41; previous revision: 1.40 /cvsroot/CMake/CMake/Tests/SimpleInstall/inst.cxx,v <-- inst.cxx new revision: 1.5; previous revision: 1.4 /cvsroot/CMake/CMake/Tests/SimpleInstall/inst2.cxx,v <-- inst2.cxx initial revision: 1.1 |
(0003834) Brad King (manager) 2006-03-03 18:50 |
Having implemented some features the new set of open issues is: - Bug 0001201 (set permissions using umask). - Bug 0001694 (install an entire directory). We should probably also allow setting of the install destination directory's permissions. |
(0003835) Brad King (manager) 2006-03-03 19:30 |
The following changes add the PERMISSIONS option to the TARGETS mode of the INSTALL command. /cvsroot/CMake/CMake/Source/cmInstallCommand.cxx,v <-- cmInstallCommand.cxx new revision: 1.6; previous revision: 1.5 /cvsroot/CMake/CMake/Source/cmInstallCommand.h,v <-- cmInstallCommand.h new revision: 1.5; previous revision: 1.4 /cvsroot/CMake/CMake/Source/cmInstallTargetGenerator.cxx,v <-- cmInstallTargetGenerator.cxx new revision: 1.8; previous revision: 1.7 /cvsroot/CMake/CMake/Source/cmInstallTargetGenerator.h,v <-- cmInstallTargetGenerator.h new revision: 1.4; previous revision: 1.3 /cvsroot/CMake/CMake/Tests/SimpleInstall/CMakeLists.txt,v <-- CMakeLists.txt new revision: 1.42; previous revision: 1.41 |
(0003857) Brad King (manager) 2006-03-08 00:27 |
More feature requests: - Set owner and group for installed files/dirs - Remove files/dirs during installation. |
(0003999) Brad King (manager) 2006-04-18 10:31 |
These changes create more sensible default permissions: /cvsroot/CMake/CMake/Source/cmFileCommand.cxx,v <-- cmFileCommand.cxx new revision: 1.56; previous revision: 1.55 /cvsroot/CMake/CMake/Source/cmInstallCommand.h,v <-- cmInstallCommand.h new revision: 1.9; previous revision: 1.8 |
(0004711) Brad King (manager) 2006-08-21 16:56 |
Bug 0001694 has been closed by implementing an INSTALL(DIRECTORY) command. |
(0004742) Brad King (manager) 2006-08-25 09:36 |
Installation after the first time can be greatly improved in speed: http://bugs.kde.org/show_bug.cgi?id=132074 [^] For 132074 we could store two md5 sums for each installed file. One is associated with the file in the build tree that was copied. The other is associated with the file in the install tree. When the md5 sum timestamp for either one is out of date during installation it is recomputed. When the file is installed the installed file's md5sum is updated by copying the sum from the build tree version. This will allow very fast diffs with minimal re-reads of the files when installing only unchanged files. This could be generalized into a file comparison/copy object that maintains the md5sums in memory for an arbitrary set of files. It could then support save/load state. MD5 sum links: RFC1321-based (RSA-free) MD5 library http://sourceforge.net/projects/libmd5-rfc [^] In GDCM (CMakeLists.txt): http://svn.sourceforge.net/viewvc/gdcm/Utilities/md5/ [^] |
(0004748) Brad King (manager) 2006-08-25 10:06 |
Bug 0003602 requests owner/group setting. |
(0004800) Brad King (manager) 2006-08-29 15:10 |
Bug 0003572 requests empty directory installation and has now been closed. |
(0004805) Brad King (manager) 2006-08-29 15:30 |
Bug 0003349 requests faster re-installation of unchanged files. |
(0030517) Brad King (manager) 2012-08-13 10:36 |
Sending issues I'm not actively working on to the backlog to await someone with time for them. If an issue you care about is sent to the backlog when you feel it should have been addressed in a different manner, please bring it up on the CMake mailing list for discussion. Sign up for the mailing list here, if you're not already on it: http://www.cmake.org/mailman/listinfo/cmake [^] It's easy to re-activate a bug here if you can find a CMake developer or contributor who has the bandwidth to take it on. |
(0037704) Brad King (manager) 2015-01-15 14:50 |
Resolving this issue because the install() command has been stable for years. Any remaining issues can be dealt with individually. |
(0038838) Robert Maynard (manager) 2015-06-01 08:38 |
Closing resolved issues that have not been updated in more than 4 months. |
Notes |
Issue History | |||
Date Modified | Username | Field | Change |
2012-08-13 10:36 | Brad King | Status | assigned => backlog |
2012-08-13 10:36 | Brad King | Note Added: 0030517 | |
2015-01-15 14:50 | Brad King | Note Added: 0037704 | |
2015-01-15 14:50 | Brad King | Status | backlog => resolved |
2015-01-15 14:50 | Brad King | Resolution | open => fixed |
2015-01-15 14:51 | Brad King | Relationship added | related to 0003602 |
2015-06-01 08:38 | Robert Maynard | Note Added: 0038838 | |
2015-06-01 08:38 | Robert Maynard | Status | resolved => closed |
Issue History |
Copyright © 2000 - 2018 MantisBT Team |