[CMake] [PATCH] kdevelop3 generator, 2nd version
Alexander Neundorf
a.neundorf-work at gmx.net
Tue Oct 12 13:18:23 EDT 2004
Hi,
I just updated cmake form cvs and found the kdevelop generator
included :-)
> > 1. Move logic to cmGlobalKDevelopGenerator
>
> >Hmm, how ?
>
>
> Right now in your local generator you read and write a file to build
> up a list of all files in the project.
>
> Basically, there does not need to be a local kdevlop generator at all,
> it can just use the unix makefile one. Then in the global generators
> Generate method you do something like this:
>
> unsigned int i;
> for(i = 0; i < m_LocalGenerators.size(); ++i)
> {
> // Get list of targets and sources from local generator i
> // add them to a file map like you do now in the local generator
> }
>
> // now write out the Project.filelist file and Project.kdevlop
> files
>
> IT should most likely do the same thing as the visual studio generators
> and write out all the sub-projects as well. And also honor the exclude
> from above option.
I will have a look at it.
> I guess at the end of the day it should do something like this:
> TopProject.kdevelop
> TopProject.kdevelop.filelist
> SubProject/SubProject.kdevelop
> SubProject/SubProject.kdevelop.filelist
I'd say
source/Project.kdevelop.filelist
source/Project_sub.kdevelop.filelist
build/Project.kdevelop
build/sub/Project_sub.kdevelop
Otherwise it won't work (see below).
> if SubProject was in a SUBDIR(EXCLUDE_FROM_ALL SubProject)
> then its files should not be in TopProject.filelist.
>
> Right now if you use the kdevlop generator on CMake you get these
files:
>
> $ find . -name "*kdev*"
> ./CMake.kdevelop
> ./CMake.kdevelop.filelist
> ./Source/CMake.kdevelop
> ./Source/CTest/Curl/CMake.kdevelop
> ./Source/CursesDialog/form/CMake.kdevelop
> ./Source/kwsys/CMake.kdevelop
> ./Utilities/CMake.kdevelop
> ./Utilities/cmexpat/CMake.kdevelop
>
> The top level project is ok, but don't think the others work,
> and they have the wrong names.
Yes, as it is now in cvs it doesn't work.
I tried here with kdevelop 3.0.0 and KDE 3.2.1.
KDevelop only shows files with relative paths and these paths may not go
upwards (../something/).
By giving the project files everywhere the same name all kdevelop
projects use the same foo.kdevelop.filelist file, which is not optimal
I'd say and more important it doesn't work.
So, this will only work if the foo.kdevelop.filelist file is generated in
the top source directory (as it did in my patch).
Bye
Alex
--
+++ GMX DSL Premiumtarife 3 Monate gratis* + WLAN-Router 0,- EUR* +++
Clevere DSL-Nutzer wechseln jetzt zu GMX: http://www.gmx.net/de/go/dsl
More information about the CMake
mailing list