diff options
Diffstat (limited to 'pkgs/development/libraries/libffi/default.nix')
-rw-r--r-- | pkgs/development/libraries/libffi/default.nix | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/pkgs/development/libraries/libffi/default.nix b/pkgs/development/libraries/libffi/default.nix index 5c981e664cb4..962f716c120a 100644 --- a/pkgs/development/libraries/libffi/default.nix +++ b/pkgs/development/libraries/libffi/default.nix @@ -8,7 +8,9 @@ stdenv.mkDerivation rec { sha256 = "0dya49bnhianl0r65m65xndz6ls2jn1xngyn72gd28ls3n7bnvnh"; }; - patches = if stdenv.isCygwin then [ ./3.2.1-cygwin.patch ] else null; + patches = stdenv.lib.optional stdenv.isCygwin ./3.2.1-cygwin.patch; + + outputs = [ "dev" "out" "doc" ]; buildInputs = stdenv.lib.optional doCheck dejagnu; @@ -21,9 +23,13 @@ stdenv.mkDerivation rec { dontStrip = stdenv ? cross; # Don't run the native `strip' when cross-compiling. - # Install headers in the right place. - postInstall = '' - ln -s${if (stdenv.isFreeBSD || stdenv.isOpenBSD || stdenv.isDarwin) then "" else "r"}v "$out/lib/"libffi*/include "$out/include" + # Install headers and libs in the right places. + postFixup = '' + mkdir -p "$dev/" + mv "$out/lib/${name}/include" "$dev/include" + rmdir "$out/lib/${name}" + substituteInPlace "$dev/lib/pkgconfig/libffi.pc" \ + --replace 'includedir=''${libdir}/libffi-3.2.1' "includedir=$dev" ''; meta = with stdenv.lib; { |