After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 675787 - support building modules twice (cyclic dependencies)
support building modules twice (cyclic dependencies)
Status: RESOLVED OBSOLETE
Product: jhbuild
Classification: Infrastructure
Component: general
unspecified
Other All
: Normal enhancement
: ---
Assigned To: Jhbuild maintainers
Jhbuild QA
Depends on:
Blocks:
 
 
Reported: 2012-05-10 01:14 UTC by Craig Keogh
Modified: 2021-05-17 15:53 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Craig Keogh 2012-05-10 01:14:05 UTC
gvfs depends on glib. But if gvfs is installed when building glib, you gain the extra feature of glib-gvfs extention point.

Modulesets files should allow a method to build a module twice.

The gvfs/glib example above, 'jhbuild list' would then be like:
glib
gvfs
glib
Comment 1 Colin Walters 2012-05-10 01:26:07 UTC
I don't think this is actually needed for the glib/gvfs example - the whole idea of the extension point is you can drop it in *after* you already have glib and it works?

That's why we're running gio-querymodules.

I'm not saying there aren't cyclic dependencies; there are (vala is a big one).  But I don't think glib/gvfs is.
Comment 2 Colin Walters 2012-05-10 01:59:21 UTC
Just FYI, the way I solved cyclic dependencies in ostbuild ( https://live.gnome.org/OSTree/Ostbuild ) is amazingly simple - I don't have build dependencies, just a list of things to build in order.  See for example:

http://git.gnome.org/browse/gnome-ostree/tree/gnomeos-3.6.json

which is roughly equivalent to the jhbuild moduleset.

For e.g. vala, I have an old import of the .c files into a git snapshot that's used to bootstrap the current vala (which should overwrite the bootstrapped one).
Comment 3 Craig Keogh 2012-05-10 02:56:25 UTC
(In reply to comment #2)
> Just FYI, the way I solved cyclic dependencies in ostbuild (
> https://live.gnome.org/OSTree/Ostbuild ) is amazingly simple - I don't have
> build dependencies, just a list of things to build in order.

Clever solution! But I don't think that's suitable here because the use-case: build gedit and only gedit dependencies.

(In reply to comment #1)
> I don't think this is actually needed for the glib/gvfs example

A bad example. But may be applicable for 
1. libproxy -> WebKit; or
2. gnome-js-common -> seed;
3. nautilus -> tracker
Comment 4 GNOME Infrastructure Team 2021-05-17 15:53:12 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to GNOME's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/jhbuild/-/issues/131.