Summary: | building devel/doxygen fails with HTMLDOCS enabled | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | Ports & Packages | Reporter: | TsurutaniNaoki | ||||||
Component: | Individual Port(s) | Assignee: | Alexey Dokuchaev <danfe> | ||||||
Status: | Closed FIXED | ||||||||
Severity: | Affects Many People | CC: | cyberbotx, marino | ||||||
Priority: | Normal | ||||||||
Version: | Latest | ||||||||
Hardware: | Any | ||||||||
OS: | Any | ||||||||
Attachments: |
|
Description
TsurutaniNaoki
2014-08-24 02:27:11 UTC
Created attachment 146201 [details]
doxygen-1.8.7_1,1.patch
Actually, I'd prefer the attached patch. I don't know why the last committer removed the ALL_TARGET definition from my previous patch, but it is required to be there in order for the HTMLDOCS_ALL_TARGET to not completely clobber it. I don't want to have to re-add MAKE_JOBS_UNSAFE because of this, I've had it being added/removed way too many times as is, and the port does build fine with parallel building, as long as this is set correctly.
I get this: > -HTMLDOCS_ALL_TARGET= docs > +HTMLDOCS_ALL_TARGET= all docs I don't get this: > +MAKE_JOBS_UNSAFE= yes Can you explain why you marked this jobs unsafe? The previous commit specifically intended to fix that. I failed to build it with my patch without MAKE_JOBS_UNSAFE=yes. Let's let danfe have the first crack that this then. The patch I attached to this bug is intended to really fix it without adding MAKE_JOBS_UNSAFE to the port again. The problem is because ALL_TARGET was removed from the Makefile. It needs to be there because of HTMLDOCS_ALL_TARGET. I still have a problem with Naram's patch if MAKE_JOBS_UNSAFE=yes is not set. (In reply to John Marino from comment #2) > I get this: > > -HTMLDOCS_ALL_TARGET= docs > > +HTMLDOCS_ALL_TARGET= all docs > > I don't get this: > > +MAKE_JOBS_UNSAFE= yes > > Can you explain why you marked this jobs unsafe? The previous commit > specifically intended to fix that. Right, unsafeness is caused by two-fold ALL_TARGET (and those two subtargets are not independent, e.g. docs obviously requires bin/doxygen being already done, but since they start in parallel, yet it takes more time to build doxygen binary, the whole thing not work). As this happens in HTMLDOCS case (which I didn't test thoroughly), it was not detected earlier. Let me see if I can fix it correctly. Created attachment 146245 [details]
Patch for Makefile.in that adds a missing dependency
Would you guys test newly added patch for Makefile.in? It ensures that "docs" (and thus "pdf") targets depend on the "all" target, thus forcing correct build order in -jX case without putting multiple targets in HTMLDOCS_ALL_TARGET and PDFDOCS_ALL_TARGET.
looks fine to me. A commit references this bug: Author: danfe Date: Mon Aug 25 16:57:28 UTC 2014 New revision: 366097 URL: http://svnweb.freebsd.org/changeset/ports/366097 Log: Unbreak the build with HTMLDOCS or PDFDOCS options enabled. PR: 192958 Submitted by: Tsurutani Naoki Approved by: maintainer Changes: head/devel/doxygen/files/patch-Makefile.in Committed as r366097 after receiving maintainer's approval. http://svnweb.freebsd.org/ports?view=revision&revision=366097 |