Circular dependency in kde-build-metadata
Michael Pyne
mpyne at kde.org
Wed May 13 02:10:22 UTC 2015
On Mon, May 4, 2015 13:51:52 Daniel Vrátil wrote:
> Hi,
>
> commit a5f6c247d99db3a3f565f5fa8d1346420e5a892c ("frameworksintegration
> tests want oxygen-fonts") in kde-build-metadata has introduced a circular
> dependency between frameworkintegration and oxygen, leading to
>
> $ kdesrc-build --refresh-build kf5 plasma5
> * Downloading projects.kde.org project database...
> Updating kde-build-metadata (to branch master)
> Somehow there is a dependency cycle involving
> frameworks/frameworkintegration!
> :( at /home/dvratil/devel/KDE/kdesrc-build/modules/ksb/DependencyResolver.pm
>
> line 390.
> ...
>
> I reverted the commit locally and kdesrc-build is happy now, but I don't
> know how to fix it properly since there is no record about oxygen-fonts in
> the metadata, only oxygen depending on frameworkintegration so I don't know
> where that is really coming from (maybe kde/workspace/oxygen is matched as
> a wildcard, matching kde/workspace/oxygen-fonts too? I don't know...)
I'm seeing this really late, but my educated guess is indeed that a wildcarded
rule is interfering here.
In fact the one that's *probably* tripping is that all kde/* modules depend on
kf5umbrella, which is a virtual dependency on all frameworks/* modules,
including frameworks/frameworkintegration. This would cause
kde/workspace/oxygen-fonts to automatically depend on
frameworks/frameworkintegration, and the manual rule in reverse is then a
cyclic dependency.
It should be possible to add a "negative" dependency to manually break the
dependency of kf5umbrella on frameworks/frameworkintegration. If it works I'll
go ahead and commit.
Regards,
- Michael Pyne
More information about the Kde-frameworks-devel
mailing list