GNOME Bugzilla – Bug 569778
Mark modules as not supporting non-srcdir builds
Last modified: 2020-11-24 10:15:42 UTC
As part of my attempt to build gnome-2.26 outside source tree with jhbuild, by setting 'buildroot' in .jhbuildrc, poppler-data appears to not support non-srcdir builds with a clearest reason: it builds nothing, just plain data installation. Adding 'supports-non-srcdir-builds="no"' attribute to its module description makes it build. I still try to finish building gnome-2.26 outside source tree. So, there may be more to come. (I've sent 2 patches for gtk-sharp and gnome-sharp to mono developers to make them build outside source tree so far.)
Created attachment 127522 [details] [review] Add the supports-non-srcdir-builds attrib
Created attachment 127532 [details] [review] nss and libvolume_id added nss and libvolume_id don't support non-source-dir builds, either. This may be not the final list yet.
Retitled the bug.
Thanks for doing this work, I'll be waiting for the final list.
Add fixable bugs as dependencies.
Theppitak: Great work; feel free to commit the needed changes to the moduleset; assuming all bugs will be fixed.
(In reply to comment #6) > Theppitak: Great work; feel free to commit the needed changes to the moduleset; > assuming all bugs will be fixed. Yes, and I have been accumulating pending fixes to modulesets while getting through the modules. I'll post it here before committing.
Created attachment 127767 [details] [review] summarized fixes so far Here is what I have got so far. Additional non-VPATH-build-safe modules found since last post are: - opal - ptlib - system-tools-backends (fix may be possible, but it's tarball, and I'm too lazy to bug external modules for now) - samba4 - libmapi 3 modules are fixed by twisting the autogen scripts: - talloc - tdb - tevent
The hack on talloc, tdb, tevent is very ugly; just mark them as not supporting non-src builds; they will hopefully improve when they will be properly released. And commit freely.
Adjusted and commited as you suggested. Will continue hunting..
Created attachment 127809 [details] [review] Patch for tdb, talloc, tevent (In reply to comment #9) > The hack on talloc, tdb, tevent is very ugly; just mark them as not supporting > non-src builds; they will hopefully improve when they will be properly > released. I've just realized that samba4 was patched by jhbuild. (My last extract was done before samba.configure-for-libs.patch was added.) And the patch can be adjusted to make it build. IMHO, the 3 modules already support non-source-dir builds, except for their autogen.sh, and a little makeargs required for talloc. So we had better make them build. > And commit freely. Unless there is any objection, I'll commit this patch soon. For further patches, I'll post them here just for the record before committing.
(In reply to comment #11) > Unless there is any objection, I'll commit this patch soon. Committed.
Theppitak; it looks like some automake version do not create $(builddir), you should use $(top_builddir) everywhere. See bug 570357.
Hmm.. Surprised. OK. I'll check my patches.
Everything that should be done in jhbuild has now been commited; is this ok for you if the bug is closed; or do you prefer it open to track the bug reports in modules ?
Please keep it opened. I'll close it when all bugs are resolved.
Created attachment 133921 [details] [review] patch for waf-patch I'm now starting a next round in gnome2.28 moduleset. waf fails to build: ---8<--- *** Checking out waf *** [1/1] bunzip2 -dc "/home/thep/vcs/gnome_git/waf-1.4.4.tar.bz2" | tar xf - *** Applying patch waf-install.patch *** [1/1] patch -p1 < "/home/thep/vcs/gnome_git/jhbuild/patches/waf-install.patch" patching file wscript patching file utils/autogen.sh *** Configuring waf *** [1/1] /home/thep/vcs/gnome_git/waf-1.4.4/utils/autogen.sh --prefix /home/gnome2 --libdir '/home/gnome2/lib64' --disable-static --disable-gtk-doc /home/thep/vcs/gnome_git/waf-1.4.4/utils/autogen.sh: line 50: ./configure: No such file or directory /home/thep/vcs/gnome_git/waf-1.4.4/utils/autogen.sh: line 51: ./waf: No such file or directory *** error during stage configure of waf: ########## Error running /home/thep/vcs/gnome_git/waf-1.4.4/utils/autogen.sh --prefix /home/gnome2 --libdir '/home/gnome2/lib64' --disable-static --disable-gtk-doc *** [1/1] [1] rerun stage configure [2] ignore error and continue to build [3] give up on module [4] start shell [5] reload configuration [6] go to stage force_checkout [7] go to stage force_clean [8] go to stage force_distclean choice: ---8<---
Created attachment 133990 [details] [review] add patch for pulseaudio The next fixable one is pulseaudio (missing build subdir $(top_builddir)/src/daemon): ---8<--- LC_ALL=C /home/gnome2/bin/intltool-merge -x -u -c ../po/.intltool-merge-cache /home/thep/vcs/gnome_git/pulseaudio-0.9.15/po /home/thep/vcs/gnome_git/pulseaudio-0.9.15/src/daemon/org.pulseaudio.policy.in daemon/org.pulseaudio.policy Generating and caching the translation database Merging translations into daemon/org.pulseaudio.policy. Cannot open daemon/org.pulseaudio.policy: No such file or directory make[3]: *** [daemon/org.pulseaudio.policy] Error 2 make[3]: Leaving directory `/home/thep/build/gnome_git/pulseaudio-0.9.15/src' make[2]: *** [all] Error 2 make[2]: Leaving directory `/home/thep/build/gnome_git/pulseaudio-0.9.15/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/thep/build/gnome_git/pulseaudio-0.9.15' make: *** [all] Error 2 ---8<---
Did you file bugs against waf and pulseaudio?
(In reply to comment #19) > Did you file bugs against waf and pulseaudio? Not yet. I want to make my build pass so I can take the recent comment from gnome-utils, and to test the whole gnome suite first.
Note, however, that for waf, it's a patcing against jhbuild's patch itself. So, I think we had better fix the jhbuild patch before filing a waf bug.
Right, I thought the waf patch had been integrated upstream, please go ahead and commit the update to patches/waf-install.patch.
(In reply to comment #22) > Right, I thought the waf patch had been integrated upstream, please go ahead > and commit the update to patches/waf-install.patch. Done. http://git.gnome.org/cgit/jhbuild/commit/?id=271d115678ccff4a4e3572ed5f8c6a63eb8217d9
(I am reassigning to general as this is a tracker bug, not a jhbuild bug).
See dependencies in bug 414139 for a list of known issues/modules (might not be up-to-date anymore).
bugzilla.gnome.org is being replaced by gitlab.gnome.org. We are closing all older tickets in GNOME Bugzilla. If this is still a valid request in a recent and currently supported version of GNOME, then please feel free to use https://gitlab.gnome.org/groups/GNOME/-/issues and/or (if this ticket is about a general Initiative) check the `9. Initiative` labels on https://gitlab.gnome.org/groups/GNOME/-/labels if they should be applied on codebase-specific tickets in GitLab. Thanks.