From mboxrd@z Thu Jan 1 00:00:00 1970 From: Roel Janssen Subject: Re: [PATCH] Add vcflib. Date: Wed, 20 Apr 2016 14:39:19 +0200 Message-ID: <87h9ew3154.fsf@gnu.org> References: <878u1aa62m.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:54070) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1asrQ4-0004Xe-Cy for guix-devel@gnu.org; Wed, 20 Apr 2016 08:39:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1asrQ1-0000Ve-3Q for guix-devel@gnu.org; Wed, 20 Apr 2016 08:39:48 -0400 In-reply-to: List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: guix-devel@gnu.org Dear reviewers, Can I make the review process easier by posting the patches in separate threads? Thanks! Kind regards, Roel Janssen Ricardo Wurmus writes: > Roel Janssen writes: > >> Dear Guix, >> >> In an effort to package freebayes, I would first like to add vcflib and >> its dependencies. Therefore, I have attached eight patches. >> >> I've attempted to decouple the dependencies from vcflib, which worked >> for intervaltree and htslib. The following dependencies are actually >> tightly coupled in the build process: >> - tabixpp >> - smithwaterman >> - multichoose >> - fsom >> - filevercmp >> - fastahack > > Thank you for your efforts! > >> To decouple these, we would need to include header files in the package >> output that aren't part of the public interface. In addition to that, >> we would need to patch the build system to not look for .o, but >> instead add the right directives to the linker. > > I see what you mean. This is ugly, but there isn’t much you can do > about this. I’ve encountered many packages that do the same (some of > which also involve tabix), and in the case of “libvcflib.a” it really > does seem very hard to untangle dependencies further. > > “filevercmp” and “fsom” don’t install libraries at all and apparently > are supposed to be included in other code. > >> I don't think that is the desirable approach, because that would cause >> these packages to provide header files that should only be used >> internally. Therefore, I use the source of these packages in vcflib, >> and unpack them in the vcflib project root, to avoid confusion on >> interfaces and fiddling with the build system. > > This seems acceptable to me. I haven’t yet looked at your patches, but > the justification you give is valid; I looked at the Makefiles of vcflib > and included projects and I think this is okay. > > ~~ Ricardo