about summary refs log tree commit diff
path: root/pkgs/applications/virtualization
diff options
context:
space:
mode:
authorJoachim Fasting <joachifm@fastmail.fm>2017-05-24 00:43:22 +0200
committerJoachim Fasting <joachifm@fastmail.fm>2017-05-24 01:07:26 +0200
commit49ecd62c087473f0e60aa8c89a0dd1d196427b2e (patch)
tree59c5f7e9b1913a36f91dd72edac3b45b4097c825 /pkgs/applications/virtualization
parente0b623a56d7d3914cedaafaeaf9cff2d722c6615 (diff)
downloadnixlib-49ecd62c087473f0e60aa8c89a0dd1d196427b2e.tar
nixlib-49ecd62c087473f0e60aa8c89a0dd1d196427b2e.tar.gz
nixlib-49ecd62c087473f0e60aa8c89a0dd1d196427b2e.tar.bz2
nixlib-49ecd62c087473f0e60aa8c89a0dd1d196427b2e.tar.lz
nixlib-49ecd62c087473f0e60aa8c89a0dd1d196427b2e.tar.xz
nixlib-49ecd62c087473f0e60aa8c89a0dd1d196427b2e.tar.zst
nixlib-49ecd62c087473f0e60aa8c89a0dd1d196427b2e.zip
lkl: split outputs
Breaking out lib allows users to link against lkl without pulling the
kitchen sink into their closure.
Diffstat (limited to 'pkgs/applications/virtualization')
-rw-r--r--pkgs/applications/virtualization/lkl/default.nix12
1 files changed, 7 insertions, 5 deletions
diff --git a/pkgs/applications/virtualization/lkl/default.nix b/pkgs/applications/virtualization/lkl/default.nix
index 2f563ab635e3..e40d054520f7 100644
--- a/pkgs/applications/virtualization/lkl/default.nix
+++ b/pkgs/applications/virtualization/lkl/default.nix
@@ -4,6 +4,8 @@ stdenv.mkDerivation rec {
   name = "lkl-2017-03-24";
   rev  = "a063e1631db5e2b9b04f184c5e6d185c1cd645cb";
 
+  outputs = [ "dev" "lib" "out" ];
+
   nativeBuildInputs = [ bc python ];
 
   buildInputs = [ fuse libarchive ];
@@ -19,15 +21,15 @@ stdenv.mkDerivation rec {
   prePatch = "patchShebangs arch/lkl/scripts";
 
   installPhase = ''
-    mkdir -p $out/{bin,lib}
+    mkdir -p $out/bin $lib/lib $dev
 
-    # This tool assumes a different directory structure so let's point it at the right location
     cp tools/lkl/bin/lkl-hijack.sh $out/bin
-    substituteInPlace $out/bin/lkl-hijack.sh --replace '/../' '/../lib'
+    sed -i $out/bin/lkl-hijack.sh \
+        -e "s,LD_LIBRARY_PATH=.*,LD_LIBRARY_PATH=$lib/lib,"
 
     cp tools/lkl/{cptofs,cpfromfs,fs2tar,lklfuse} $out/bin
-    cp -r tools/lkl/include $out
-    cp tools/lkl/liblkl*.{a,so} $out/lib
+    cp -r tools/lkl/include $dev/
+    cp tools/lkl/liblkl*.{a,so} $lib/lib
   '';
 
   # We turn off format and fortify because of these errors (fortify implies -O2, which breaks the jitter entropy code):