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.
> > + (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.
> > + ("which" ,which))) ; required for tests
>
> This should be a native input since it's only needed at build time.
OK.
> 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.
> 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.
Pj.