From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Thompson, David" Subject: Re: [PATCH] gnu: Add ruby-libxml and bioruby. Date: Tue, 15 Sep 2015 10:39:56 -0400 Message-ID: References: <55f80bd4.pVH9EKb+UmuOGLkt%pjotr.public12@thebird.nl> <20150915131935.GA2778@thebird.nl> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:57264) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZbrOs-0008PY-AX for guix-devel@gnu.org; Tue, 15 Sep 2015 10:40:06 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZbrOn-0003w7-I2 for guix-devel@gnu.org; Tue, 15 Sep 2015 10:40:01 -0400 Received: from mail-yk0-f177.google.com ([209.85.160.177]:33699) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZbrOn-0003vC-FA for guix-devel@gnu.org; Tue, 15 Sep 2015 10:39:57 -0400 Received: by ykft14 with SMTP id t14so35566538ykf.0 for ; Tue, 15 Sep 2015 07:39:57 -0700 (PDT) In-Reply-To: <20150915131935.GA2778@thebird.nl> 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-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Pjotr Prins Cc: guix-devel On Tue, Sep 15, 2015 at 9:19 AM, Pjotr Prins wrote: > On Tue, Sep 15, 2015 at 08:58:28AM -0400, Thompson, David wrote: >> > + (native-inputs `(("ruby-libxml" ,ruby-libxml))) >> >> This should be a propagated input. > > oops. I can be such a noob. No worries. :) >> > + (inputs >> > + `(("coreutils" ,coreutils) ; required for /bin/echo in tests >> >> Coreutils is an implict input to the Ruby build system. > > well, echo is not found by which, so coreutils is missing. That is odd. Coreutils is most definitely there. I added this to a build phase of another Ruby package and rebuilt it: (pk 'ECHO (which "echo")) And the file name for echo was indeed displayed. >> Usually gems with native extensions just redundantly build themselves >> in the source directory before running tests, which I guess is not the >> case here. >> >> It looks like you need to at least add ruby-rake-compiler to >> native-inputs and run 'rake compile' before running the tests. > > I tried that. Ah, damn. Well let's not worry about it too much, then. >> I tried to do this outside the build container from a git checkout >> and several tests failed. Give it a shot in the build recipe and >> see how it goes. If the problems are very difficult to solve, we >> can leave the tests disabled with a note about the failures and >> problems to solve. > > No dice. > >> Unfortunately, it seems there's no way to avoid compiling native >> extensions twice when we do run tests since it needs to be compiled in >> the source tree for tests, and then again when running 'gem install'. >> The Ruby way of building things leaves much to be desired. > > Aye. Tests assume an already installed extension. The good news is > that bioruby tests include ruby-libxml tests. So, at least, the > integration works. OK, cool. That sounds good enough, then. One more thing that I forgot: Use the 'modify-phases' syntax instead of 'alist-cons-before' for the build phases. Thanks! - Dave