GNOME Bugzilla – Bug 592355
Doc generation doesn't work using "make -j3" when no DOC_MAIN_SGML_FILE exists
Last modified: 2010-01-03 12:08:26 UTC
Let's say you don't have a DOC_MAIN_SGML_FILE in your source tree and wants to use the default one. Building your project using "make" works fine but using "make -j3" doesn't. You'll get this kind of error: *** No rule to make target `wocky-docs.sgml', needed by `html-build.stamp' This is because if this file doesn't exist, it's generated during the gtkdoc-mkdb call in the XML section. But gtk-doc.make doesn't reflect this dependency and so the build fails when running in parallel. I fixed this problem by changing the rules in the XML section like that: #### xml #### $(DOC_MAIN_SGML_FILE): tmpl.stamp $(HFILE_GLOB) $(CFILE_GLOB) $(DOC_MODULE)-sections.txt $(srcdir)/tmpl/*.sgml $(expand_content_files) @echo 'gtk-doc: Building XML' @-chmod -R u+w $(srcdir) cd $(srcdir) && \ gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $(MKDB_OPTIONS) sgml-build.stamp: $(DOC_MAIN_SGML_FILE) touch sgml-build.stamp
Seen downstream at http://bugs.gentoo.org/show_bug.cgi?id=293247 This will happen whenever a developer dists their tarball without ENABLE_GTK_DOC set.
*** This bug has been marked as a duplicate of bug 543489 ***