Advertisement
evanjs

realtime - default.nix

Dec 17th, 2019
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.97 KB | None | 0 0
  1. { pkgs
  2. , buildEnv
  3. , stdenv
  4. , protobuf
  5. , sensor_tester ? false
  6. , rev ? "unknown"
  7. }:
  8.  
  9. stdenv.mkDerivation rec {
  10. pname = "realtime";
  11. version = "${rev}";
  12.  
  13. hardeningDisable = [ "all" ];
  14.  
  15. makeFlags = [] ++ (if sensor_tester == true then
  16. [
  17. "sensor_tester=1"
  18. "SOFT_VER=999.999.999"
  19. "HARD_VER=999.999.999"
  20. ] else []);
  21.  
  22. buildInputs = with pkgs; [
  23. patchelf
  24. zstd
  25. protobuf
  26. ] ++ (if sensor_tester == true then [ libwebsockets libuv openssl rapidjson ] else [ ]);
  27.  
  28. nativeBuildInputs = with pkgs; [
  29. makeWrapper
  30. ];
  31.  
  32. installPhase = ''
  33. mkdir -p $out/bin
  34. mkdir -p $out/lib
  35. ls ..
  36. cp -r ../runtime $out/
  37. ''
  38. +
  39. (if sensor_tester == true then
  40. ''
  41. cp "${pkgs.libwebsockets}/lib/*.so*" $out/runtime/x86_64/debug/lib
  42. ''
  43. else "");
  44.  
  45. postFixup =
  46. ''
  47. find $out/runtime -type f -exec patchelf --set-interpreter /lib64/ld-linux-x86-64.so.2 {} \;
  48. '';
  49.  
  50. src = ./development;
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement