diff options
Diffstat (limited to 'pkgs/development/interpreters/ruby/patches.nix')
-rw-r--r-- | pkgs/development/interpreters/ruby/patches.nix | 105 |
1 files changed, 56 insertions, 49 deletions
diff --git a/pkgs/development/interpreters/ruby/patches.nix b/pkgs/development/interpreters/ruby/patches.nix index 7c80cdfe0653..10cbf1ecfe56 100644 --- a/pkgs/development/interpreters/ruby/patches.nix +++ b/pkgs/development/interpreters/ruby/patches.nix @@ -1,5 +1,6 @@ { fetchurl, writeScript, ruby, ncurses, sqlite, libxml2, libxslt, libffi -, zlib, libuuid, gems, jdk, python, stdenv, libiconvOrEmpty }: +, zlib, libuuid, gems, jdk, python, stdenv, libiconvOrEmpty, imagemagick +, pkgconfig }: let @@ -9,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 = { @@ -25,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++ <<EOF #! ${stdenv.shell} $(export) - + g++ \$(echo \$@ | sed 's/-Werror//g') EOF chmod +x $TMPDIR/g++ - + export CXX=$TMPDIR/g++ export AR=$(type -p ar) ''; @@ -47,22 +67,18 @@ in done ''; }; - - sqlite3 = { propagatedBuildInputs = [ sqlite ]; }; - - rails = { gemFlags = "--no-ri --no-rdoc"; }; - + ncurses = { propagatedBuildInputs = [ ncurses ]; }; + ncursesw = { propagatedBuildInputs = [ ncurses ]; }; + nix = { postInstall = '' cd $out/${ruby.gemPath}/gems/nix* patch -Np1 -i ${./fix-gem-nix-versions.patch} ''; }; - - ncursesw = { propagatedBuildInputs = [ ncurses ]; }; - + nokogiri = { buildFlags = [ "--with-xml2-dir=${libxml2} --with-xml2-include=${libxml2}/include/libxml2" @@ -70,27 +86,22 @@ in ]; }; - ffi = { - postUnpack = "onetuh"; - buildFlags = ["--with-ffi-dir=${libffi}"]; - NIX_POST_EXTRACT_FILES_HOOK = patchUsrBinEnv; + pry = { gemFlags = "--no-ri --no-rdoc"; }; + + rails = { gemFlags = "--no-ri --no-rdoc"; }; + + rjb = { + buildInputs = [ jdk ]; + JAVA_HOME = jdk; }; - xrefresh_server = - let - patch = fetchurl { - url = "http://mawercer.de/~nix/xrefresh.diff.gz"; - sha256 = "1f7bnmn1pgkmkml0ms15m5lx880hq2sxy7vsddb3sbzm7n1yyicq"; - }; - in { - propagatedBuildInputs = [ gems.rb_inotify ]; + rmagick = { + buildInputs = [ imagemagick pkgconfig ]; - # monitor implementation for Linux - postInstall = '' - cd $out/${ruby.gemPath}/gems/* - zcat ${patch} | patch -p 1 - ''; # */ - }; + NIX_CFLAGS_COMPILE = "-I${imagemagick}/include/ImageMagick-6"; + }; + + sqlite3 = { propagatedBuildInputs = [ sqlite ]; }; xapian_full = { buildInputs = [ gems.rake zlib libuuid ]; @@ -105,23 +116,19 @@ in buildInputs = [ zlib libuuid ]; }; - rjb = { - buildInputs = [ jdk ]; - JAVA_HOME = jdk; - }; - - buildr = { - # Many Buildfiles rely on RUBYLIB containing the current directory - # (as was the default in Ruby < 1.9.2). - extraWrapperFlags = "--prefix RUBYLIB : ."; - }; - - pry = { gemFlags = "--no-ri --no-rdoc"; }; + xrefresh_server = + let + patch = fetchurl { + url = "http://mawercer.de/~nix/xrefresh.diff.gz"; + sha256 = "1f7bnmn1pgkmkml0ms15m5lx880hq2sxy7vsddb3sbzm7n1yyicq"; + }; + in { + propagatedBuildInputs = [ gems.rb_inotify ]; - fakes3 = { - postInstall = '' - cd $out/${ruby.gemPath}/gems/* - patch -Np1 -i ${../../ruby-modules/fake-s3-list-bucket.patch} - ''; - }; + # monitor implementation for Linux + postInstall = '' + cd $out/${ruby.gemPath}/gems/* + zcat ${patch} | patch -p 1 + ''; # */ + }; } |