diff --git a/pkgs/os-specific/linux/ldm/default.nix b/pkgs/os-specific/linux/ldm/default.nix
index c5e94ed81e9a..5332fc0bf3d4 100644
--- a/pkgs/os-specific/linux/ldm/default.nix
+++ b/pkgs/os-specific/linux/ldm/default.nix
@@ -19,12 +19,13 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ udev utillinux ];
 
-  preBuild = ''
+  postPatch = ''
+    sed -i '1i#include <sys/stat.h>' ldm.c
     substituteInPlace ldm.c \
       --replace "/mnt/" "${mountPath}"
   '';
 
-  buildPhase = "make ldm";
+  buildFlags = "ldm";
 
   installPhase = ''
     mkdir -p $out/bin