From kde-buildsystem Sun Sep 26 18:29:49 2010 From: Andreas Pakulat Date: Sun, 26 Sep 2010 18:29:49 +0000 To: kde-buildsystem Subject: Re: cmake for python projects (was: KDE/kdegames) Message-Id: <20100926182949.GA25556 () barmbek> X-MARC-Message: https://marc.info/?l=kde-buildsystem&m=128552584403756 On 26.09.10 20:06:29, Wolfgang Rohdewald wrote: > On Sonntag 26 September 2010, Alexander Neundorf wrote: > > On Sunday 26 September 2010, Wolfgang Rohdewald wrote: > > > There should be clear guidelines defined for python > > > projects somewhere in the wiki IMHO. I am not a cmake > > > export nor a packager and would really prefer to stay > > > out of this discussion. Anyway I would volunteer to > > > write up a new small chapter "CMake and Python projects" > > > at http://techbase.kde.org/Development/CMake > > > if nobody else does. > > > > This would be really *great*. > > I can help with any cmake issues, but I'm no python expert. > > Just start it, I'll give comments :-) > > Before starting, I do have a fundamental question about cmake > and python: > > Who uses cmake? Only the distribution packagers? > Or also developers? > Or even end users? > > I can see only one switch in kajongg/CMakeLists.txt: > IF(INSTALL_KAJONGG) > > if that is set, both make (aka compiling) and make install > (aka installing) do something in the build directory. > If it is not set, both do nothing. > > but if cmake cannot distinguish between dependencies for > compiling and for installing, I do not see how all of > the three user groups can get satisfying results. > > I do not think developers are a problem. If kajongg cannot > import needed modules at execution time, they will get > an error message and know what to do. Kajongg will even > tell them what they need to install in a nice KDialog > (although that is rather unpythonic, citing Sebastian > Kügler on kde-core-devel) > > If an end user uses cmake for installation, I would expect > the same from her. > > So only packagers are of concern. And they do not care > about dependencies if they do not need them for compiling, > they might even patch them out for simplifying and > speeding up their build system (as stated by Sune Vuorela > and Johannes Obermeyer, distribution packagers > for Debian and Suse). > > So kajongg/CMakeLists.txt and kdegames/CMakeLists.txt > should not enforce runtime dependencies and probably > not even check for them at all. > > Am I right so far? And if yes, how do packagers ensure > correct install dependencies for their packages? By > testing kajongg or by believing what the authors tell > them informally? Or should there be a required file > like "kajongg/RuntimeDepencencies" for python projects? This has all been discussed recently on the kde-buildsystem list, basically runtime dependencies should _not_ be checked via cmake and instead should be listed in a README.packagers file (if I recall the name correctly). Thats how packagers will know the dependencies. And the app in question should of course notify the user in some way if a runtime dep is missing. Andreas -- You have a reputation for being thoroughly reliable and trustworthy. A pity that it's totally undeserved. _______________________________________________ Kde-buildsystem mailing list Kde-buildsystem@kde.org https://mail.kde.org/mailman/listinfo/kde-buildsystem