GNOME Bugzilla – Bug 595197
gnome-doc-utils.make uses non-portable shell constructs
Last modified: 2020-03-03 18:34:10 UTC
Created attachment 143174 [details] [review] Fix gnome-doc-utils.make parallel build failure The clean-doc-dir rule in gnome-doc-utils.make removes subdirectories with rmdir. Before rmdir can succeed, all files in the directory need to be deleted first. However, the clean-doc-dir rule deletes only a subset of the files itself, and relies on the clean-doc-lc rule to delete the .xml2po.mo files. Since the clean-doc-lc rule is completely independent, they will be executed concurrently by parallel make. If the rmdir runs before the clean-doc-lc rule removed the .xml2po.mo file, the build fails. For me, this always happens when trying to distcheck the gtkmm-documentation module on my desktop. Three patches follow: The first fixes the parallel build breakage by making the clean-doc-dir rule depend on clean-doc-lc. The second patch replaces a number of non-portable shell constructs by more portable alternatives. I also updated the .gitignore files while I was at it, and the changes can be found in the third patch.
Created attachment 143175 [details] [review] Avoid non-portable shell exit code negation
Created attachment 143176 [details] [review] Update .gitignore files OK to push?
The first patch was approved by the release team and has been pushed to master. Retitling because the other two patches are unrelated to the original bug.
gnome-doc-utils has been superseded by yelp-xsl, yelp-tools, and itstool. gnome-doc-utils will not see any further development, hence closing as WONTFIX. See https://gitlab.gnome.org/Infrastructure/Infrastructure/issues/255