[CMake] cmake-gui's separation between configuration & generation

Andreas Pakulat apaku at gmx.de
Thu Aug 23 14:31:52 EDT 2012


Hi,

On Thu, Aug 23, 2012 at 8:20 PM, Robert Dailey <rcdailey.lists at gmail.com> wrote:
> On Thu, Aug 23, 2012 at 1:12 PM, Andreas Pakulat <apaku at gmx.de> wrote:
>> Hi,
>>
>> On Thu, Aug 23, 2012 at 5:48 PM, Robert Dailey <rcdailey.lists at gmail.com> wrote:
>>> On Thu, Aug 23, 2012 at 10:43 AM, John Drescher <drescherjm at gmail.com> wrote:
>>>>> Is the separation between configuration & generation really necessary
>>>>> for cmake-gui? I ask because several of my co-workers are confused
>>>>> between the differences in the two, even though I explain it.
>>>>>
>>>>> Honestly there isn't really a reason that I can think of to do a
>>>>> configure without a generate, unless you're testing the integrity of
>>>>> your CMake script changes maybe, but even then, if its broken
>>>>> generation won't take place.
>>>>>
>>>>> The command line program does not separate the two, so I simply think
>>>>> cmake-gui should eliminate the configure button, and simply have a
>>>>> generate button. Does this seem fair? Is there a reason why they are
>>>>> separated?
>>>>
>>>> I can think of one use case that I use that the separation is a good
>>>> thing. What about when you have options and variables that are
>>>> conditional depending on other CMake variables so that setting the
>>>> variables / options may take more than 1 configure.
>>>
>>> Well, think of this from the perspective of Linux users. They don't
>>> get to configure seperately, so only Windows users get special
>>> treatment here (and maybe Mac too, since it's using Qt).
>>
>> You need to check your facts a bit more thoroughly ;) cmake-gui exists
>> on all platforms that Qt exists on, specifically because Qt is
>> cross-platform. And Qt runs on Windows, Linux, MacOSX and a few more
>> Unices.
>
> I already knew all of this, what I was saying is that not everyone has
> Linux with a GUI, so they'd HAVE to use the CLI for CMake in that
> case. I'm only on Windows anyway, so my example is limited to that.

I think the majority of Linux users these days have a graphical
display at hand, just like MacOSX or Windows users. The cases where
CMake is run from the commandline is IMO the same on all platforms:
Either because the users like CLI better or because the machine indeed
has no display since its not needing one (read: Buildfarms).

Andreas


More information about the CMake mailing list