MantisBT - CMake
View Issue Details
0003812CMakeCMakepublic2006-09-25 17:202016-06-10 14:30
Artur Kedzierski 
Brad King 
lowfeaturealways
closedmoved 
 
 
0003812: Allow passing a default for build directory
Passing something like CMAKE_BUILD_DIR(./build)
would allow a in-source but out-of-source compilation. It would allow a user to enjoy an out-of-source compilation without changing anything.

For example, for package Foo extracted in
"/tmp/Foo-1.0/" the CMAKE_BUILD_DIR(./build)
would create "/tmp/Foo-1.0/build" and create all the CMake related files in there.
No tags attached.
patch command-line-tool.patch (6,828) 1969-12-31 19:00
https://public.kitware.com/Bug/file/706/command-line-tool.patch
Issue History
2007-10-12 11:15Bill HoffmanStatusnew => assigned
2012-08-13 10:36Brad KingStatusassigned => backlog
2012-08-13 10:36Brad KingNote Added: 0030502
2016-06-10 14:27Kitware RobotNote Added: 0041321
2016-06-10 14:27Kitware RobotStatusbacklog => resolved
2016-06-10 14:27Kitware RobotResolutionreopened => moved
2016-06-10 14:30Kitware RobotStatusresolved => closed

Notes
(0005098)
Bill Hoffman   
2006-10-03 12:53   
But, you can do that like this:

mkdir build
cd build
cmake ..

I am not sure I understand the feature request?


(0005234)
Artur Kedzierski   
2006-10-05 09:36   
Sorry about the delay in getting back on this. I forgot my password and the phpBugTracker kept email me wrong password.

This bug relates to email thread on CMake mailing list:
http://www.mail-archive.com/cmake@cmake.org/msg03258.html [^]
At the end of the thread Brad King thought it was an interesting idea and asked me to file a feature request.

Please let me know if you need any additional information.
(0005238)
Bill Hoffman   
2006-10-05 09:57   
http://www.mail-archive.com/cmake@cmake.org/msg03281.html [^]
(0005502)
Brad King   
2006-10-23 15:53   
I've briefly investigated what it takes to implement this. Here is the interface I propose. When an in-source build is attempted CMake will look for a file called InSource.cmake in the top level directory. If present CMake will load this file in an isolated script environment. The file can contain code like

  SET(CMAKE_IN_SOURCE_BINARY_DIR build)

or

  MESSAGE(FATAL_ERROR "In-source build is not allowed by this project.")

In the first case the value specified in the variable will be used. In the second case the error will be displayed for the user to see. In both cases no files will be written to the source tree. This interface allows quite a bit of flexibility for what projects want to do with in-source builds.

(0005503)
Brad King   
2006-10-23 15:55   
Unfortunately it is non-trivial to implement this right now. The init code for projects in the cmake command line tool, the ccmake curses dialog, and the CMakeSetup windows dialog is a big mess right now. A sweeping cleanup will need to be done first. This bug will have to wait until such a cleanup is done.

(0005504)
Brad King   
2006-10-23 15:57   
For future reference I've attached a patch that (mostly) implements the feature for the command line tool.
(0030502)
Brad King   
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.
(0041321)
Kitware Robot   
2016-06-10 14:27   
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.