GNOME Bugzilla – Bug 342846
Support for GIT modules in subdirectories of their repository (e.g. see XCB)
Last modified: 2007-01-09 20:17:29 UTC
Currently I dont think jhbuild supports building projects that use a single GIT repository to organise multiple autotool modules within subdirectories. (Such as the XCB project, please see http://gitweb.freedesktop.org/?p=xcb;a=summary) The problem is in part due to the fact that it doesn't seem possible to clone arbitrary subdirectories of a GIT repository and so concatonating the branch "module" with the git repositories "href" doesn't provide enough control for the XCB case. locally I have found it works to add an extra attribute understood by git branches called "subdir". The subdir can then be concatenated with the checkoutdir to create the "srcdir" which is then used as usual to locate the modules autogen.sh I shall attach a patch showing the changes that worked for me...
Created attachment 66149 [details] [review] Adds support for a "subdir" attribute for GIT branches
Relevant mailing list posts: http://lists.freedesktop.org/archives/xcb/2006-June/001688.html http://lists.freedesktop.org/archives/xcb/2006-June/001692.html
I've talked it over with the XCB developers, and if they restructure, it's not going to happen soon, and may not include the restructuring required to use jhbuild on it as-is. The submitted patch seems pretty small, and, with an additional patch for mesa, will get us to the point of jhbuilding the entire xorg environment. The alternative to this patch for me would be to add my "checkoutonly" module type, and have autotools modules be able to be non-checkout and point to somewhere relative to another module's checkoutdir (which would mean only one copy of the repository on the build machine).
Created attachment 69850 [details] [review] jhbuild subdir support for git New patch that fixes behaviour on already-checked-out repositories.
If you are sure about this, and if James doesn't respond, I suggest you go ahead and commit it.
The xorg need for this patch did go away with the xcb restructuring that ended up happening. I would probably still commit this patch if I had a gnome commit bit, but it's not a priority to us now like the mesa one is.
I just commited it anyway since such support would also have been useful for other modules in the past (with gtk-theme-torturer from Manu Cornet at least). (as a side note, Eric, you may have missed it but I applied the MESA patch yesterday)