[cmake-developers] cmake issues and KDE

Brad King brad.king at kitware.com
Tue Aug 8 12:55:07 EDT 2006


Alexander Neundorf wrote:
> I have no idea why somebody (Thomas ?) created a wiki page for this, there is 
> bugs.kde.org with a "product" buildsystem and there's the cmake bug tracker.

The problem with the Wiki page is that it makes the reported issues look
like fundamental CMake problems rather than bugs in the current
implementation.  These issues should be moved to a bug tracker as bug
reports or feature requests.  If someone wants a wiki page to reference
the bug reports then great...at least it will be clear they are bugs.

>>>> ** make install does not start an install until compiling finishes
>>>>
>>>> *The make install thing is there. Just set the appropriate variable
>>>> (CMAKE_SKIP_INSTALL_ALL_DEPENDENCY).
>> I love this one.  Severl users thought it was horrible that cmake did
>> NOT do this in the past.  Now that it does it that is horrible for other
>> users :)
> 
> What you read in the wiki is the opinion of one developer. I talked with David 
> about setting CMAKE_SKIP_INSTALL_ALL_DEPENDENCY to TRUE, and he said that 
> this would really be a bad idea.
> 
> Shouldn't "make install/fast" just do that, build the current dir and install 
> it ? 

It will be even faster than this.  The only building that can occur is
relinking during the preinstall stage.  Then it will head straight for
installation.

>>>> ** editing CMakeFiles.txt forces an entire rebuild*
>>>>
>>>> Not sure about this one. I do know that you can mess-up cmake file so
>>>> that it will always change something.
>>> We are sort of stuck with this one, they want local generate back.
>> We could try some kind of save/load state of CMakeLists.txt file
>> processing in each directory but it could get messy.  Let's just forget
>> this one for now.
> 
> I'll ask for details. If this happens now, then something has been broken in 
> our files (like rewriting config.h everytime).

Thanks.  If it is really causing a total rebuild and not just a global
re-run of CMake then there is definately something wrong in KDE CMake code.

>>>> ** make install should not install files that have not changed
>>>>
>>>> *I thought we did this, but looks like we do not. Should be really easy
>>>> to add.
>>> We did, I think the entry is incorrect.  Alex, can you fix that?
>> Yes.  It reports that it is installing it but the file is not actually
>> copied if it has not changed.  Perhaps we should change the message in
>> the case that the file is unchanged:
>>
>> -- Installing /usr/include/myproj/myproj_changed.h
>> -- File /usr/include/myproj/myproj_unchanged.h is unchanged
> 
> When cmake installed everything, people complained.
> Now it installs only the changed files, packaging people complain that it 
> doesn't install everything.
> And people complain that it installs everything while it doesn't.

The current situation is:

- CMake reports all files but installs only unchanged files.
- Setting CMAKE_INSTALL_ALWAYS in the environment when running "make
install" will cause it to install unchanged files too.

I wonder where we should document this.

-Brad



More information about the cmake-developers mailing list