[CMake] Evaluating CMake for My Project, some questions

Alexander Neundorf a.neundorf-work at gmx.net
Fri Feb 28 15:53:18 EST 2014


On Wednesday, February 26, 2014 22:16:34 Peter.Wright at microchip.com wrote:
> I'm trying to see if CMake would be right for a project I'm working on. 
> We're in need of a configuration tool but there are a few things that I'm
> not sure if CMake can do for us.
> 
> 1. The first deals with the GUI for configuration.  I'm wanting a fully
> nestable tree for the various sections.  The 'Group' check box gives one
> level of nesting, but it doesn't seem to go farther than that first level,
> is it possible to get a deeper tree?  I'm talking about haven't lots and
> lots of options.  Kconfig looks to handle the sort of things we need in
> that area, but it's not the best solution since it requires a few too many
> things in the way things are set up just right.

the current tree is simply based on common prefixes of the variables.
This could be extended to more levels, if somebody puts work into it.

 
> 2. Which brings up the second part, there is the 'Advanced' check box.  That
> will hide some options from the tree, and that's what I'm looking for, but
> is there any finer granularity possible than just on and off?

Currently there is no way to do this.
 
> 3. Is there a way of getting more advanced option selection?  There's binary
> check boxes, arbitrary strings and directories.  Is there a way to put
> limits on integer selections, or drop down boxes of different options?

You can use set_property(CACHE ... STRINGS "option1;option2;...optinonN")
to provide a combobox with a fixed set of options in cmake-gui.

 
> 4. How hard is it to add in a new IDE generator?  CMake is missing netbeans,
> at least I can't find a way of selecting it, how hard would it be to add in
> Netbeans to CMake generation?  The recommendations are to go

This depends on the IDE and what kind of files need to be generated.
Once added, it has to be maintained, which is usually quite some work.

Alex



More information about the CMake mailing list