KDevelop 3 and KDE CVS Repository

cloudtemple at mksat.net cloudtemple at mksat.net
Thu Nov 20 08:25:50 GMT 2003


> I'm still not sure how KDevelop's support of CVS can (does?) fit in 
> with KDE online CVS.  I guess neither of us is using KDevelop's 
> CVS features.  I just do online CVS commands in the Shell, with a 
> pipe and a "tee -a" to a log file (for future reference).  Old UNIX 
> habits die hard.  But first, an outline of your original postings. 
 
Try it, it works. If it doesn't fill the bug report. 
 
> Basically, there are two problems to solve: the KDE CVS does not allow 
> "generated" files (KDevelop generates lots) and the KDE CVS directory 
> structure differs from KDevelop's project structure (e.g. in KDevelop, 
> your documentation goes in .../myapp/doc/en/index.docbook, but in 
> kdenonbeta it goes in .../kdenonbeta/doc/myapp/index.docbook, with no 
> "en"). 
 
That is normal build system behaviour to generate a lot of files. KDevelop has nothing 
to do with this, it doesn't generate files. However, neither build system nor KDevelop 
offers a clean and good way to clean up generated files. Once you have commited your 
files to cvs, you can use "make cvs-clean", but not earlier. 
 
KDevelop project templates are the templates for standalone builds. If you work 
on kdenonbeta, it is a good idea to checkout kdenonbeta (you may do it with -l switch 
as well) and then import it to KDevelop. After that the only thing you must do is to 
create a subproject containing your application and a corresponding subproject with 
your documentation. This could have solved almost all your problems with the build  
system. 
 
For example, to work on Kugar (the part of KOffice) I do 
cd /develop/kde 
cvs co -l koffice 
cvs co koffice/doc 
cvs co koffice/libs 
cvs co koffice/mimetypes 
cvs co koffice/kugar 
 
The same way is to checkout all KOffice like: 
cd /develop/kde 
cvs co -l koffice 
 
Then I open KDevelop and import /develop/kde/koffice dir or simply 
/develop/kde/koffice/kugar. 
 
Let's imagine I need to add an application to KOffice, say myapp. 
Then I'd do: 
cd /develop/kde 
cvs co -l koffice		(or only necessary dirs) 
open KDevelop 
import /develop/kde/koffice dir 
go to automake manager and add subproject called "myapp" 
go to doc subproject and add a "myapp" subproject there 
then simply click build everything or only "myapp subproject" 
 
When I'd need to commit stuff, I'd choose files to commit either with 
KDevelop file tree and cvs part ot cervisia. 
 
> My solution to the problems was (and still is) to set up a partial 
> "mirror" of the KDE CVS structure in my home directory, under 
> ~/KDE-CVS, and keep it quite separate from my KDevelop directories.  
> You have to set up something like this anyway if you want to work with 
> any remote repository. 
>  
> I then move (NOT copy) all the files I want to keep in KDE CVS into the 
> appropriate places in the mirror structure.  From there they can be 
> "added" "updated" and "committed", using the relevant CVS commands.  
> Files to move across are: 
>   - All editable files you have written yourself (e.g. .cpp and .h), - 
>   All graphics, sound and other files you have created yourself, - Your 
>   index.docbook (documentation file), 
>   - The .desktop and .lsm files generated by KDevelop and edited by 
>   you, - The GNU documentation files in the top directory (BUGS, etc.), 
>   - Icons you have created yourself, 
>   - All Makefile.am files, EXCEPT the top-level one in your project. 
 
You are doing superfluous work. Once you have checked something from the 
repository, you can import it to KDevelop and work as usual. This will allow you 
to use vcs and automake manager functionality without troubles you describe. 
 
> PS. I must've done something right.  KGoldrunner's in kdegames now :-) 
But the way you organize your work with KDevelop and repository is not efficient. 
I use my approach when working on KOffice and KDevelop and see no problem 
with using cvs, KDevelop and building in the same directory. 
 


-
to unsubscribe from this list send an email to kdevelop-request at kdevelop.org with the following body:
unsubscribe »your-email-address«



More information about the KDevelop mailing list