MantisBT - CMake
View Issue Details
0015627CMakeCMakepublic2015-06-23 17:482016-01-04 11:51
Guy Harris 
Brad King 
normalminorN/A
closedfixed 
MacOS X10.11
CMake 3.2.3 
CMake 3.3CMake 3.3 
0015627: CMake shouldn't default to installing command-line tools in /usr/bin
/usr/bin is for Apple-supplied command-line tools, not third-party tools, just as /System/Library is for Applie-supplied software and /Library is for third-party software.

Until El Capitan, you could get away with installing command-line tools in /usr/bin, although you needed to run with root privileges to do so, and if you upgrade to the next major release, /usr/bin gets reconstructed and you lose all the third-party tools installed there.

In El Capitan, even root processes can't modify /usr/bin unless they're granted special entitlements (which Apple's unlikely to grant to third-party tools) or you're running with rootless mode turned off (which it isn't, by default, and you have to go through some effort to turn it off).

You should default to installing in /usr/local/bin instead.
1. Start CMake.

2. Select "Install For Command Line Use" from the Tools menu.

3. Note the default target directory of /usr/bin.
No tags attached.
related to 0015628closed  CMake needs to request root privileges in order to install command-line tools 
related to 0015629closed  A way to install the command-line tool links from the command line would be useful 
Issue History
2015-06-23 17:48Guy HarrisNew Issue
2015-06-24 08:50Brad KingRelationship addedrelated to 0015628
2015-06-24 08:50Brad KingRelationship addedrelated to 0015629
2015-06-24 08:51Brad KingNote Added: 0038968
2015-06-24 08:51Brad KingAssigned To => Brad King
2015-06-24 08:51Brad KingStatusnew => assigned
2015-06-24 08:51Brad KingTarget Version => CMake 3.3
2015-06-24 09:12Brad KingNote Added: 0038970
2015-06-24 09:12Brad KingNote Added: 0038971
2015-06-24 09:12Brad KingStatusassigned => resolved
2015-06-24 09:12Brad KingResolutionopen => fixed
2015-06-24 09:12Brad KingFixed in Version => CMake 3.3
2016-01-04 11:51Robert MaynardNote Added: 0040078
2016-01-04 11:51Robert MaynardStatusresolved => closed

Notes
(0038968)
Brad King   
2015-06-24 08:51   
The feature mentioned in 0015629:0038965 in 3.3.0-rc2 still defaults to /usr/bin. I'll look at updating it to /usr/local/bin for the next release candidate.
(0038970)
Brad King   
2015-06-24 09:12   
I've changed the default to /usr/local/bin:

 cmake-gui: Change --install to use /usr/local/bin by default
 http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d2cf92ec [^]

So far this feature has only appeared in a release candidate so we do not need to worry about compatibility with old behavior.
(0038971)
Brad King   
2015-06-24 09:12   
I've queued this change for inclusion in the 'release' branch for 3.3.0-rc3.
(0040078)
Robert Maynard   
2016-01-04 11:51   
Closing resolved issues that have not been updated in more than 4 months.