diff --git a/pkgs/development/interpreters/ruby/patches.nix b/pkgs/development/interpreters/ruby/patches.nix index c5ab0f5e5e20..10cbf1ecfe56 100644 --- a/pkgs/development/interpreters/ruby/patches.nix +++ b/pkgs/development/interpreters/ruby/patches.nix @@ -10,10 +10,29 @@ let find "$1" -type f -name "*.rb" | xargs sed -i "s@/usr/bin/env@$(type -p env)@g" find "$1" -type f -name "*.mk" | xargs sed -i "s@/usr/bin/env@$(type -p env)@g" ''; - + in { + buildr = { + # Many Buildfiles rely on RUBYLIB containing the current directory + # (as was the default in Ruby < 1.9.2). + extraWrapperFlags = "--prefix RUBYLIB : ."; + }; + + fakes3 = { + postInstall = '' + cd $out/${ruby.gemPath}/gems/* + patch -Np1 -i ${../../ruby-modules/fake-s3-list-bucket.patch} + ''; + }; + + ffi = { + postUnpack = "onetuh"; + buildFlags = ["--with-ffi-dir=${libffi}"]; + NIX_POST_EXTRACT_FILES_HOOK = patchUsrBinEnv; + }; + iconv = { buildInputs = [ libiconvOrEmpty ]; }; libv8 = { @@ -26,16 +45,16 @@ in # # Finally, we must set CC and AR explicitly to allow scons to find the # compiler and archiver - + preBuild = '' cat > $TMPDIR/g++ <