GNOME Bugzilla – Bug 776673
Recompile resources when builddir is not same as srcdir
Last modified: 2017-01-16 10:12:30 UTC
Created attachment 342691 [details] [review] Fix resource compilation Using systems like jhbuild buildir is not the same as srcdir This patch allows to modify ~/jhbuild/checkout/gnome-music and recompile and run with: $ jhbuild buildone gnome-music $ jhbuild run gnome-music
I don't use jhbuild. You have to go over this for me in detail, what does this change do and how does it affect the build exactly?
gresource is recompiled if you touch any ui file or gnome-music.gresource.xml To detect ui files it uses https://git.gnome.org/browse/gnome-music/tree/data/Makefile.am#n1 This works if you to ./autogen.sh (configure is done automatically) inside checkout dir as it looks for: $(builddir)/gnome-music.gresource.xml) Is just that jhbuild compile on different path. jhbuild checkout normally on: (srcdir) ~/jhbuild/checkout/gnome-music and compile on: (builddir) ~/.cache/jhbuild/builds/gnome-music If you touch something on ui files it is not recompiled since it cannot find gnome-music.gresource.xml. it looks for it on ~/.cache/jhbuild/builds/gnome-music instead of ~/jhbuild/checkout/gnome-music You can test it doing (with and without patch): $ git clone https://git.gnome.org/browse/gnome-music $ mkdir gnome-music-build $ cd gnome-music-build $ ../gnome-music/autogen.sh $ make Touch any ui file and it will not detect the need for recompilation. This is a safe change as it will keep working if buildir is same as srcdir (your case) but will work on jhbuild too.
Thank for the patch & explanation. Looks good to me.