[cmake-developers] [CMake 0013359]: Feature Request: performing the "Configure" step but not Generation with cmake command line tool (as in cmake-gui and ccmake)

Mantis Bug Tracker mantis at public.kitware.com
Thu Jun 28 07:11:13 EDT 2012


The following issue has been SUBMITTED. 
====================================================================== 
http://www.cmake.org/Bug/view.php?id=13359 
====================================================================== 
Reported By:                tetractius
Assigned To:                
====================================================================== 
Project:                    CMake
Issue ID:                   13359
Category:                   CMake
Reproducibility:            always
Severity:                   major
Priority:                   urgent
Status:                     new
====================================================================== 
Date Submitted:             2012-06-28 07:11 EDT
Last Modified:              2012-06-28 07:11 EDT
====================================================================== 
Summary:                    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)
====================================================================== 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2012-06-28 07:11 tetractius     New Issue                                    
======================================================================




More information about the cmake-developers mailing list