View Issue Details [ Jump to Notes ] | [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
0013359 | CMake | CMake | public | 2012-06-28 07:11 | 2016-06-10 14:31 | ||||
Reporter | tetractius | ||||||||
Assigned To | Kitware Robot | ||||||||
Priority | urgent | Severity | major | Reproducibility | always | ||||
Status | closed | Resolution | moved | ||||||
Platform | All | OS | All | OS Version | All | ||||
Product Version | CMake 2.8.8 | ||||||||
Target Version | Fixed in Version | ||||||||
Summary | 0013359: Feature Request: performing the "Configure" step but not Generation with cmake command line tool (as in cmake-gui and ccmake) | ||||||||
Description | Feature Request: possibility to perform only the "Configure" step but not Generation with cmake command line tool (as is possible in cmake-gui and ccmake). I'm dealing with a very huge project (around 150 targets). Each target is defined in its own CMakeLists.txt inside the hierarchy and defines some variable for exposing some functionality related to the target its self (i.e. include path needed for using a library). But we have some cross dependencies. Because of that we have to perform a 2 step generation for creating the right cache. From the developer perspective, if a change to a cache variable is required, sometime is easier to change the value in the CMakeLists.txt, remove the cache and rerun the configure/generate step, than surfing in the huge CMakeCache.txt or cmake-gui The problem when I use cmake command line is that in the "first" step (with previous CMakeCache.txt deleted) I will obtain: - the intermediate CMakeCache.txt to be used for the second step (this is exactly what I want) - the first intermediate (incomplete) version of building configuration (Makefile, vcproj). Doing this, when I run the compilation it will recompile the whole project (even files that don't need to be recompiled) because of huge changes in the building configurations. Instead, if for the first step I run only the configure step (by cmake-gui or by cmake sending an error), no build configuration are generated in the first step, and the resultant build conf of the complete second step (no artificial errors) rebuild only what is possibly really needed to be recompiled. So shortly: for automation purpose would be nice to have a cmake tool command line parameter (i.e. --build_cache_only) for configuring only the cache but not writing makefiles/vcproj exactly as cmake-gui/ccmake can do. Our current way is to "SEND_ERROR" during first generation only causing that only the intermediate cache is generated (but not build configuration files written) | ||||||||
Steps To Reproduce | A sample of the cmake command line parameter that would be nice to have might be : cmake --build_cache_only or simply: cmake --configure (consistent with the cmake-gui) | ||||||||
Tags | No tags attached. | ||||||||
Attached Files | ![]() | ||||||||
Relationships | |
Relationships |
Notes | |
(0029856) Eric NOULARD (developer) 2012-06-28 07:19 |
This is linked to the discussion on the ML: http://www.cmake.org/pipermail/cmake/2012-June/050831.html [^] Where I suggested (as a workaround) the following command line: echo "c q" | ccmake .. |
(0029857) tetractius (reporter) 2012-06-28 07:25 |
Hi Eric. Thanks for the quick reply. I went trough your suggestion. It works, but is still not easily suitable for automation purpose. Indeed sometimes happens that we have some syntax errors in CMakeLists.txt and in that case our continuous integration system would hangs indefinitely, while we would like to have the error log in those cases |
(0029859) David Cole (manager) 2012-06-28 11:23 |
I like "--configure" or possibly "--configure-only" as the new command line switch if we implement this |
(0030452) David Cole (manager) 2012-08-11 21:42 |
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: http://www.cmake.org/mailman/listinfo/cmake [^] 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. |
(0033683) tetractius (reporter) 2013-08-08 10:06 edited on: 2013-08-08 10:19 |
I am currently using the attached patch. Could this be reviewed and integrated? It simply adds the "--configure-only" command parameter for creating a CMakeCache.txt without proceed to the generation of project files. If this process is successful a normal generation that follow is however faster. |
(0036409) Bartosz (reporter) 2014-07-18 03:23 edited on: 2014-07-18 03:24 |
Is any change to push this patch to cmake repository? I have similar project as Eric (huge project, with a lot of cross dependencies) and we need CMakeCache.txt to be filled. Currently we are using SEND_ERROR message, but it causing a lot of problems (CI etc.). We prefer to use regular cmake version, that's why we didn't apply this patch (for me it is working perfectly). Could you please review this patch? I will apply necessary changes. |
(0042073) Kitware Robot (administrator) 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. |
Notes |
Issue History | |||
Date Modified | Username | Field | Change |
2012-06-28 07:11 | tetractius | New Issue | |
2012-06-28 07:19 | Eric NOULARD | Note Added: 0029856 | |
2012-06-28 07:25 | tetractius | Note Added: 0029857 | |
2012-06-28 11:23 | David Cole | Note Added: 0029859 | |
2012-08-11 21:42 | David Cole | Status | new => backlog |
2012-08-11 21:42 | David Cole | Note Added: 0030452 | |
2013-08-08 10:05 | tetractius | File Added: 0013359.patch | |
2013-08-08 10:06 | tetractius | Note Added: 0033683 | |
2013-08-08 10:09 | tetractius | Note Edited: 0033683 | |
2013-08-08 10:18 | tetractius | Note Edited: 0033683 | |
2013-08-08 10:18 | tetractius | Note Edited: 0033683 | |
2013-08-08 10:18 | tetractius | Note Edited: 0033683 | |
2013-08-08 10:19 | tetractius | Note Edited: 0033683 | |
2014-07-18 03:23 | Bartosz | Note Added: 0036409 | |
2014-07-18 03:24 | Bartosz | Note Edited: 0036409 | |
2016-06-10 14:28 | Kitware Robot | Note Added: 0042073 | |
2016-06-10 14:28 | Kitware Robot | Status | backlog => resolved |
2016-06-10 14:28 | Kitware Robot | Resolution | open => moved |
2016-06-10 14:28 | Kitware Robot | Assigned To | => Kitware Robot |
2016-06-10 14:31 | Kitware Robot | Status | resolved => closed |
Issue History |
Copyright © 2000 - 2018 MantisBT Team |