Date: Thu, 14 Aug 2014 11:41:12 -0400 From: Naram Qashat <cyberbotx@cyberbotx.com> To: freebsd-ports@FreeBSD.org Subject: devel/doxygen woes Message-ID: <8e2579e9b8a76340d02cf44904b63c3d@cyberbotx.com>
next in thread | raw e-mail | index | archive | help
So I've been getting a lot of issues being directed at me due to the recent devel/doxygen update to 1.8.7. While I'm not sure why these issues only cropped up after that update and not before, I would like to try addressing a few things. doxygen has a bit of an issue in that it uses itself to build its own documentation. As a result of this, the HTMLDOCS and PDFDOCS options will only pull in what is needed to allow doxygen to be built in such a way to be able to build its own documentation. Because of this, if those options are left out, then doxygen will be left in a state where it can no longer build HTML docs fully (because of the lack of graphviz) and cannot build PDF docs (because of the lack of a LaTeX distribution). Because of this, consumers of doxygen, whether they be other FreeBSD ports or just users of doxygen in general, would need to have graphviz and LaTeX installed to get all of doxygen's features. I recently had someone that wanted to build doxygen without the LaTeX dependency, though. So I think ideally, the dependencies for graphviz and LaTeX should becomes separate options, and the HTMLDOCS and PDFDOCS options should only be allowed if graphviz and LaTeX, respectively, are enabled. If I add in those options, then I believe that the options for including graphviz and LaTeX should probably be made default. For something like this, though, I would need to know how many ports would need either option enabled. If the options don't need to be defaulted, then they shouldn't need it. graphviz might not be a bad one to have defaulted, but LaTeX might. If anyone does have an opinion on this, I'd like to hear it. All in all, it basically boils down to needing to find a way to include graphviz and LaTeX in a way that doesn't cause too many problems but also allows doxygen to still have the option of building its own documentation. In a semi-related point, part of the patching being done to the port involves removing doxygen's included MD5 implementation in order to use the system's MD5 implementation instead. I've heard differing opinions on this situation. Some people say that I should just let doxygen use its own MD5 implementation. But other people say that ports should always try to use the system's implementations as opposed to embedded ones. Which is better to use in this situation? I believe that doxygen's implementation of MD5 is statically linked, but patching it as I am now, it will call from the MD5 library of the system instead. Thanks, Naram Qashat
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?8e2579e9b8a76340d02cf44904b63c3d>