Friday, June 5, 2009

Circular Deps

The most time-consuming component of tracking Fedora package builds is circular dependencies... More the number of packages in the set, more the time it takes. Yesterday was spent in chasing a libsoup->libproxy->webkitgtk toolkit dependency.

This is how it starts:

Build --> gvfs-1.2.3-2

Dep failure. libsoup. Ok.

Build --> libsoup-2_26_0_9-1_fc11

Dep failure. libproxy. No problem.

Build --> libproxy-0_2_3-8_fc11

Error WebKit-Gtk-devel not found. Hmm... Strange I see it right there in koji, with the proper tag, why doesn't it find it?

Turns out the package was renamed to webkitgtk in F-11. So it won't pick the older package. Alright, lets build that.

Build --> webkitgtk-1_1_4-1_fc11

Ok, webkitgtk again needs some version of libsoup that I don't have in koji yet.

Well, but libsoup needs libproxy again. Going through libsoup commit logs, tells me that libsoup shifted from GConf2 to libproxy in the past. So lets build libsoup's version that builds with GConf2.

Build --> libsoup-2_25_4-1_fc11

No, that would have been too simple won't it. The version of GConf2 that I have in koji has some 'pkgconfig' errors. So I look at GConf2 commit logs. Somewhere upthere, there is a version that fixes this issue.

Build --> GConf2-2_24_0-3_fc11

Finally! Something got built... And now to pop the rest of the stack and pray :-)

Its time I start looking into how to fix the problem with shadowing.

No comments:

Post a Comment