Re: Enabling builddir != srcdir by default in jhbuild



A big +1 to this idea.

As a nitpick, change the buildroot to '~/jhbuild/build'
because we use by default '~/jhbuild/checkout' and
'~/jhbuild/install', or convince jhbuild devs to change
default to '~/gnome/*'.

Cheers,
Carlos Soriano

----- Original Message -----
| Hi all;
| 
| as you may know, automated build services – for instance Continuous,
| OBS, or the autotools distcheck – use a build directory that is not
| the same as the source directory. Our own jhbuild allows this, even if
| it's disabled by default. This means that developers may work on a
| feature or a fix in jhbuild, and build the project successfully – only
| to introduce a build failure that either gets caught by the Continuous
| system, or gets caught by the maintainer only during `make distcheck`
| at release time.
| 
| We've had many build failures that are usually the result of a broken
| `builddir == srcdir` assumption; they usually break distcheck,
| delaying releases; they also break Continuous, or builds from
| distribution packagers. Various projects mandate a builddir != srcdir
| default in their own build system, but it's not really mandatory.
| 
| Jhbuild supports building projects in a separate root, which would
| allow maintainers to catch build breakages; you just need to add:
| 
|     buildroot = '~/gnome/build'
| 
| to your ~/.config/jhbuildrc. Jhbuild also allows projects to specify
| that they cannot build if the build directory is not the source
| directory, thus providing an escape hatch.
| 
| My proposal is to enable this behaviour in the default jhbuildrc, so
| that all GNOME projects automatically build in a separate root. This
| change should have no, or minimal impact on the subset of the
| moduleset that is covered by Continuous; it may require fixing the
| build of various modules in the gnome-apps or gnome-world modulesets.
| The major upsides would be that:
| 
|  * automated builds of our software are possible without hacks
|  * distchecking projects does not fail at the very last minute before
| release but during development
|  * we bring the development environment and the continuous deployment
| environment closer
| 
| What do maintainers think?
| 
| Ciao,
|  Emmanuele.
| 
| --
| https://www.bassi.io
| [ ] ebassi [ gmail com]
| _______________________________________________
| desktop-devel-list mailing list
| desktop-devel-list gnome org
| https://mail.gnome.org/mailman/listinfo/desktop-devel-list


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]