From owner-freebsd-ports@FreeBSD.ORG Thu Aug 14 15:41:15 2014 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7AE9D3BB for ; Thu, 14 Aug 2014 15:41:15 +0000 (UTC) Received: from qmta13.westchester.pa.mail.comcast.net (qmta13.westchester.pa.mail.comcast.net [IPv6:2001:558:fe14:44:76:96:59:243]) by mx1.freebsd.org (Postfix) with ESMTP id 2DCE82709 for ; Thu, 14 Aug 2014 15:41:15 +0000 (UTC) Received: from omta03.westchester.pa.mail.comcast.net ([76.96.62.27]) by qmta13.westchester.pa.mail.comcast.net with comcast id eeUk1o0050bG4ec5DfhDcj; Thu, 14 Aug 2014 15:41:13 +0000 Received: from www.cyberbotx.com ([107.5.48.95]) by omta03.westchester.pa.mail.comcast.net with comcast id efhC1o01s23DSHF3PfhD0P; Thu, 14 Aug 2014 15:41:13 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit Date: Thu, 14 Aug 2014 11:41:12 -0400 From: Naram Qashat To: freebsd-ports@FreeBSD.org Subject: devel/doxygen woes Message-ID: <8e2579e9b8a76340d02cf44904b63c3d@cyberbotx.com> X-Sender: cyberbotx@cyberbotx.com User-Agent: Roundcube Webmail/1.0.2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=comcast.net; s=q20140121; t=1408030873; bh=X2UbLSOAtR79Dei24fYyY3kHHHQ+Gg5Pwmk5G6fyXtU=; h=Received:Received:MIME-Version:Content-Type:Date:From:To:Subject: Message-ID; b=hAv5Qbk8KbEWnpab9wxdL8QuBj2/hu3GeLUED180G0hMHLqfhvHNvyay3t5G6osfF vQDEv25aAI6CnCuKf1WtonE2M2CSUipQ1tuFCST4iewHovhcDh2IMMw11mzi8UGuRm 7gYMFcd7C8lz8O1SmE90CJPGEys5zSMHZT+oHekDuZZCAeYZHBDs+IQhuuB9AKnFFJ bReOzkhXb68WykpV7IwkEEplHey6RPtp4Q1kehTbXCBdtFCbzKaJejhNdanabd2AG6 Q3BYFnlWphIEk4MYTAhEx+CL4wOnLPmluVsx8PDpC8Z+YaYK7f5Mhf8XKNzv0MZ4gf 4f3vYZrIi26xQ== X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Aug 2014 15:41:15 -0000 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