about summary refs log tree commit diff
path: root/pkgs/os-specific/linux/systemd
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2014-08-30 23:30:31 +0200
committerVladimír Čunát <vcunat@gmail.com>2014-08-30 23:30:31 +0200
commit381dcb1d98b804a01a663fd3ec2bca78f5afd516 (patch)
tree5d53941544c6977d2f537397858d49601b773913 /pkgs/os-specific/linux/systemd
parentd25cc03f214c35b4e84fe8bd411ea77d085f1243 (diff)
downloadnixlib-381dcb1d98b804a01a663fd3ec2bca78f5afd516.tar
nixlib-381dcb1d98b804a01a663fd3ec2bca78f5afd516.tar.gz
nixlib-381dcb1d98b804a01a663fd3ec2bca78f5afd516.tar.bz2
nixlib-381dcb1d98b804a01a663fd3ec2bca78f5afd516.tar.lz
nixlib-381dcb1d98b804a01a663fd3ec2bca78f5afd516.tar.xz
nixlib-381dcb1d98b804a01a663fd3ec2bca78f5afd516.tar.zst
nixlib-381dcb1d98b804a01a663fd3ec2bca78f5afd516.zip
various packages fixed
Diffstat (limited to 'pkgs/os-specific/linux/systemd')
-rw-r--r--pkgs/os-specific/linux/systemd/default.nix15
1 files changed, 11 insertions, 4 deletions
diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix
index 34fcf4fe595c..1c6a065a9478 100644
--- a/pkgs/os-specific/linux/systemd/default.nix
+++ b/pkgs/os-specific/linux/systemd/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, intltool, gperf, libcap, dbus, kmod
-, xz, pam, acl, cryptsetup, libuuid, m4, utillinux
+, zlib, xz, pam, acl, cryptsetup, libuuid, m4, utillinux, libffi
 , glib, kbd, libxslt, coreutils, libgcrypt, sysvtools, docbook_xsl
 , kexectools, libmicrohttpd, linuxHeaders
 , pythonPackages ? null, pythonSupport ? false
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   buildInputs =
     [ pkgconfig intltool gperf libcap kmod xz pam acl
       /* cryptsetup */ libuuid m4 glib libxslt libgcrypt docbook_xsl
-      libmicrohttpd linuxHeaders
+      libmicrohttpd linuxHeaders libffi
       autoreconfHook
     ] ++ stdenv.lib.optionals pythonSupport [pythonPackages.python pythonPackages.lxml];
 
@@ -146,10 +146,17 @@ stdenv.mkDerivation rec {
       done
     ''; # */
 
-  postPhases = "postPostFixup";
+  # some libs fail to link to liblzma and/or libffi
+  postFixup = let extraLibs = stdenv.lib.makeLibraryPath [ xz.out libffi.out zlib.out ];
+    in ''
+      for f in "$out"/lib/*.so.0.*; do
+        patchelf --set-rpath `patchelf --print-rpath "$f"`':${extraLibs}' "$f"
+      done
+    '';
 
+  # propagate the libudev output
+  postPhases = "postPostFixup";
   postPostFixup = ''
-    ls -l "$dev"/nix-support/
     echo -n " $libudev" >> "$dev"/nix-support/propagated-*build-inputs
   '';