Which package will provide the common KDE library version number ?

Stephen Kelly steveire at gmail.com
Sun Feb 19 19:10:05 UTC 2012


Alexander Neundorf wrote:

> On Saturday 18 February 2012, Kevin Ottens wrote:
>> On Saturday 18 February 2012 18:13:00 Alexander Neundorf wrote:
>> > On Saturday 18 February 2012, Kevin Ottens wrote:
>> > > So the other possibility would be to have the version number in the
>> > > main CMakeLists.txt of each framework
>> > 
>> > This is the clean and obvious way to do it.
>> > Each library defines its own version number.
>> > 
>> > But...
>> > 
>> > > which raises potential consistency issues...
>> > 
>> > Exactly.
>> > 
>> > > Solution would then be that the scripts used to generate the
>> > > release tarballs verify the version is properly set everywhere.
>> > 
>> > ...or scripts which regularly update the version numbers in git.
>> 
>> Let's pursue that solution then. Anyone willing to take a look at how
>> hard it would be to implement and have at least a proof of concept?
> 
> Just to make it clear: I think this is the wrong approach.
> 
> Just to avoid creating a tier0 KF5 entity, we create a script which does,
> when executed, what this KF5 entity naturaly would be.
> 
> 
> Or, maybe we should discuss another question first: what makes a library a
> KDE frameworks library ? What properties do KDE frameworks libraries have
> ?
> 
> 
> Can KDE frameworks libraries of different versions be mixed together ?

I would say that's unsupported (by us). The ones that work together are 
released together. 

We're not going to test all possible (and numerous) version combinations. We 
don't need to make it impossible, but we don't need to ensure that it always 
works either. 

If someone else decides that they want some random version combination to 
work (for a reason I can't think of), they can maintain that combination.

> E.g. can I build a tier2 library against different versions of tier1
> libraries, or does this in general only work if they have the same version
> ? If so, they wouldn't necessarily share the same KDE frameworks version
> number...
> 

> Can I install different libraries from the KDE frameworks set of libraries
> to different locations and use them together ?

I don't see why not. As long as CMAKE_PREFIX_PATH has the correct content.

> 
> If the answer to these questions is yes, then KDE frameworks is really
> just a set of loosely coupled libraries, which of course can have
> different versions.

Yes, but the KDE applications and workspaces will use one version of all the 
frameworks that they use.

> 
> If the answer is no, i.e. if these libraries should still be seen as one
> coherent package, 

I would say that from the perspective of a developer creating a KDE 
application, it is one coherent package.

>From the perspective of a Qt application developer who wants (for example) 
to be able to create zip files (using karchive) or some extra itemmodels 
classes, the libraries are distinct.

> then there should be a package they all depend on, 

I don't follow the logic from 'they can be seen as one package' to 'they 
must share a common dependency'.

> the
> KF5 package, as small as it may be. A library containing only a function
> which returns the version, or something like this.
> Depending on this small (header only ?) 

It would have to be compiled in probably, so it can't be header only I 
think.

> library would be the burden
> necessary to get the stamp "you are a KDE framework library".
> 

Thanks,

Steve.





More information about the Kde-frameworks-devel mailing list