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