GNOME Bugzilla – Bug 790570
Build fails on Fedora 27 with jhbuild
Last modified: 2018-01-24 00:55:38 UTC
Build fails here: Making all in src make[2]: Entering directory '/home/kmaraas/.cache/jhbuild/build/gnome-system-monitor/src' git.mk: Generating /home/kmaraas/src/gnome/gnome-system-monitor/src/.gitignore Making all in legacy make[3]: Entering directory '/home/kmaraas/.cache/jhbuild/build/gnome-system-monitor/src/legacy' git.mk: Generating /home/kmaraas/src/gnome/gnome-system-monitor/src/legacy/.gitignore make[3]: Leaving directory '/home/kmaraas/.cache/jhbuild/build/gnome-system-monitor/src/legacy' make[3]: Entering directory '/home/kmaraas/.cache/jhbuild/build/gnome-system-monitor/src' make[3]: *** No rule to make target 'org.gnome.gnome-system-monitor.gschema.xml', needed by 'org.gnome.gnome-system-monitor.gschema.valid'. Stop. make[3]: *** Waiting for unfinished jobs.... CXXLD gnome-system-monitor make[3]: Leaving directory '/home/kmaraas/.cache/jhbuild/build/gnome-system-monitor/src' make[2]: *** [Makefile:694: all-recursive] Error 1 make[2]: Leaving directory '/home/kmaraas/.cache/jhbuild/build/gnome-system-monitor/src' make[1]: *** [Makefile:597: all-recursive] Error 1 make[1]: Leaving directory '/home/kmaraas/.cache/jhbuild/build/gnome-system-monitor' make: *** [Makefile:462: all] Error 2 *** Error during phase build of gnome-system-monitor: ########## Error running make -j2 *** [36/98]
Indeed, probably related to the gettext migration being somehow incorrect in the gsettings schema creation. I need to figure out a fix, ideas, suggestions are welcome, in anyone has some hints.
I found three problems when building gnome-system-monitor on FreeBSD. Two of them should also affect Fedora with the same error message as the bug description. 1. msgfmt fails with 'cannot locate ITS rules' because polkit.its is not installed on the system. It can be resolved by updating polkit to the latest git snapshot because no released version of polkit includes this file. 2. There is no need to merge translations into gschema files because programs use them can find translations with 'gettext-domain' defined in files. Renaming src/org.gnome.gnome-system-monitor.gschema.xml.in.in to src/org.gnome.gnome-system-monitor.gschema.xml.in fixes the 'no rule to make target' issue. 3. There is no rules defined in Makefile.am to merge desktop files, so this is another 'no rule to make target' issue for gnome-system-monitor.desktop and gnome-system-monitor-kde.desktop. The first one can only be fixed by the distribution. I will upload patches to resolve the other two issues.
Created attachment 367149 [details] [review] Fix gschema validation error caused by missing file We cannot and should not merge translations into gschema files.
Created attachment 367150 [details] [review] Fix desktop files generation by adding rules to merge translations
Thanks for your contribution again Ting-Wei Lan, it is appreciated. Attachment 367149 [details] pushed as 0793914 - Fix gschema validation error caused by missing file Attachment 367150 [details] pushed as 9b16f47 - Fix desktop files generation by adding rules to merge translations