Ludovic Courtès <[email protected]> writes: > Ben Woodcroft <[email protected]> skribis: > >> But would it be possible to include the scripting language bindings, >> something along these lines? >> >> + (arguments >> + `(#:configure-flags '("--enable-ruby-binding" >> + "--enable-python-binding" >> + "--enable-perl-binding") > > There’s the usual space/popularity tradeoff to take into account: adding > them all makes the package’s closure much larger, so it’s important to > add only the useful bindings by default. > > Ideally, the .so for these bindings could be moved to separate outputs > (like we did for the “tk” output of Python), but it’s not always easy to > do.
In this case it seems to be very easy to separate the bindings into different outputs as the flags take an optional path. However, the test for the Perl bindings does not pass: /gnu/store/czs63sm4l0s4a56ab38dqvkx19yzylbq-perl-5.16.1/bin/perl: symbol lookup error: /tmp/nix-build-jellyfish-2.2.4.drv-0/jellyfish-2.2.4/.libs/libjellyfish-2.0.so.2: undefined symbol: pthread_create FAIL tests/swig_perl.sh (exit status: 127) Maybe the library needs another linker flag? I’ll play with this later and see if I can make it work. If not I’ll leave the Perl bindings (and the “perl” output) away for now. It’s a bit unfortunate that this library would gain so many transitive inputs just for these bindings (all of these three languages require a lot of inputs). It would be nice if we could somehow mark certain inputs to be used only for certain outputs, but that’s probably a silly wish. ~~ Ricardo
