GNOME Bugzilla – Bug 652686
jhbuild sysdeps: Install system dependencies
Last modified: 2011-06-17 19:36:57 UTC
This is one step in the goal of making "partial" jhbuilds work; which for someone who just wants to patch one module, it can save enormous amounts of time and dramatically increase build reliability. The basic idea is that we use pkg-config identifiers as what I think of as a "Linux distribution damage mitigation layer". They *really* shouldn't be forked (and if they are, there are other bigger problems). At least Fedora has a pretty easy way to find a package given a pkg-config identifier; each RPM has a generated Provides like: Provides: pkgconfig(gtk+-2.0) Stub out some code to run yum to acquire them. The tricky part of this code is teaching jhbuild that a package can have two identifiers. For example we want to be able to do: <depends pkgid="foo"> And have jhbuild know to search for packages that provide pkgid="foo".
Created attachment 190010 [details] [review] jhbuild sysdeps: Install system dependencies
Created attachment 190045 [details] [review] jhbuild sysdeps: Install system dependencies This is one step in the goal of making "partial" jhbuilds work; which for someone who just wants to patch one module, it can save enormous amounts of time and dramatically increase build reliability. The basic idea is that we use pkg-config identifiers as what I think of as a "Linux distribution damage mitigation layer". They *really* shouldn't be forked (and if they are, there are other bigger problems). At least Fedora has a pretty easy way to find a package given a pkg-config identifier; each RPM has a generated Provides like: Provides: pkgconfig(gtk+-2.0) Stub out some code to run yum to acquire them. Next, we teach moduleset how to find modules by either "id" or "pkgid".
Thanks Colin, could this be discussed in bug 564373? I had a relevant comment in there: > I am not fond of <dep pkgconfig="lcms2" />, I would prefer to have lcms2 as a > real <autotools> module, that would be buildable with jhbuild, but at the same > time its <branch/> tag would mention a package name; this would also get it > next to a version number, that will have to be considered later on anyway. And of course I'd prefer PackageKit over yum, as hopefully this means an abstraction layer that we won't have to develop again in jhbuild. *** This bug has been marked as a duplicate of bug 564373 ***
(In reply to comment #3) > Thanks Colin, could this be discussed in bug 564373? Yep. I'll reattach the patch there.