forked from mirrors/nixpkgs
buildRubyGem: fix missing libobjc in darwin
This was preventing any ruby gem with a c extension to build. mkmf would fail with a misleading error: /nix/store/dmkcai8fnv21qxiasx628nim3mq4r4wg-ruby-2.2.3-p0/lib/ruby/2.2.0/mkmf.rb:456:in `try_do': The compiler failed to generate an executable file. (RuntimeError) You have to install development tools first.
This commit is contained in:
parent
9a55295c49
commit
e9eda43928
|
@ -18,7 +18,8 @@
|
|||
# Normal gem packages can be used outside of bundler; a binstub is created in
|
||||
# $out/bin.
|
||||
|
||||
{ lib, ruby, rubygems, bundler, fetchurl, fetchgit, makeWrapper, git, buildRubyGem
|
||||
{ lib, ruby, rubygems, bundler, fetchurl, fetchgit, makeWrapper, git,
|
||||
buildRubyGem, darwin
|
||||
} @ defs:
|
||||
|
||||
lib.makeOverridable (
|
||||
|
@ -85,6 +86,7 @@ stdenv.mkDerivation (attrs // {
|
|||
buildInputs = [
|
||||
ruby rubygems makeWrapper
|
||||
] ++ lib.optionals (type == "git") [ git bundler ]
|
||||
++ lib.optional stdenv.isDarwin darwin.libobjc
|
||||
++ buildInputs;
|
||||
|
||||
name = attrs.name or (namePrefix + gemName);
|
||||
|
|
|
@ -79,7 +79,6 @@ in
|
|||
"--with-exslt-lib=${libxslt}/lib"
|
||||
"--with-exslt-include=${libxslt}/include"
|
||||
] ++ lib.optional stdenv.isDarwin "--with-iconv-dir=${libiconv}";
|
||||
buildInputs = lib.optional stdenv.isDarwin darwin.libobjc;
|
||||
};
|
||||
|
||||
patron = attrs: {
|
||||
|
@ -143,10 +142,6 @@ in
|
|||
'';
|
||||
};
|
||||
|
||||
unf_ext = attrs: {
|
||||
buildInputs = lib.optional stdenv.isDarwin darwin.libobjc;
|
||||
};
|
||||
|
||||
xapian-ruby = attrs: {
|
||||
# use the system xapian
|
||||
dontBuild = false;
|
||||
|
|
Loading…
Reference in a new issue