MantisBT - CMake
View Issue Details
0013162CMakeCMakepublic2012-04-24 01:222016-06-10 14:31
Dave Abrahams 
Kitware Robot 
MacOS X10.7
CMake 2.8.7 
CMake 2.8.12 
0013162: create_symlink command portability
This command could be made to work on many-many Windows systems these days. Bonus: if symlinking not available, copy files instead.
No tags attached.
related to 0012376closed Kitware Robot Add symlink support 
has duplicate 0012986closed Brad King Portable directory symlinking with -E 
Issue History
2012-04-24 01:22Dave AbrahamsNew Issue
2012-04-24 08:45Brad KingRelationship addedrelated to 0012376
2012-04-24 08:48Brad KingRelationship addedhas duplicate 0012986
2012-04-24 08:51Brad KingNote Added: 0029320
2012-04-25 10:04Eric NOULARDNote Added: 0029341
2012-08-11 21:35David ColeStatusnew => backlog
2012-08-11 21:35David ColeNote Added: 0030412
2012-08-14 11:22David ColeStatusbacklog => new
2012-08-14 11:22David ColeTarget Version => CMake 2.8.10
2012-10-18 11:16David ColeTarget VersionCMake 2.8.10 => CMake 2.8.11
2012-10-18 11:17David ColeNote Added: 0031268
2013-05-17 09:33Robert MaynardTarget VersionCMake 2.8.11 => CMake 2.8.12
2016-06-10 14:28Kitware RobotNote Added: 0042031
2016-06-10 14:28Kitware RobotStatusnew => resolved
2016-06-10 14:28Kitware RobotResolutionopen => moved
2016-06-10 14:28Kitware RobotAssigned To => Kitware Robot
2016-06-10 14:31Kitware RobotStatusresolved => closed

Brad King   
2012-04-24 08:51   
Comment 0012986:0028671 is relevant here too. An implementation would need to detect if the symlink can be created without user/manual intervention and if not do something else. IMO silently copying instead of linking is not a general solution. It is only "right" in particular use cases.
2012-04-25 10:04   
Then may be we "just" need two -E commands:

create_symlink_or_copy old new
   this one would create a symlink or make a copy as a fallback
   this one should have the same fail cases as "copy".

create_symlink old new
   this one would create a symlink if possible (without user intervention)
   or fail if
      - user intervention is needed
      - symlink is not supported.

Probably that some built-in CMAKE_CAN_SYMLINK variable could be defined
in order to make it possible to programmatically check whether if symlink
is supported on the current platform.

May be a useful link: [^]
David Cole   
2012-08-11 21:35   
Sending old, never assigned issues to the backlog.

(The age of the bug, plus the fact that it's never been assigned to anyone means that nobody is actively working on it...)

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: [^]

It's easy to re-activate a bug here if you can find a CMake developer who has the bandwidth to take it on, and ferry a fix through to our 'next' branch for dashboard testing.
David Cole   
2012-10-18 11:17   
These bugs were deferred from target version 2.8.10 to 2.8.11 based on the responses to this email thread on the CMake developer's mailing list: [^]
Kitware Robot   
2016-06-10 14:28   
Resolving issue as `moved`.

This issue tracker is no longer used. Further discussion of this issue may take place in the current CMake Issues page linked in the banner at the top of this page.