From fa7d26d067586edc3877d1eb62ad8856bd5250f0 Mon Sep 17 00:00:00 2001 From: Alexandre Esteves Date: Sat, 17 Jan 2026 01:10:38 +0000 Subject: [PATCH] haskellPackages: include pthread libraries when using the external interpreter on Windows Fixes errors: - user specified .o/.so/.DLL could not be loaded (addDLL: pthread or dependencies not loaded. (Win32 error 126)) - iserv-proxy-interpreter.exe:Couldnotload`libwinpthread-1.dll'.Reason:addDLL:libwinpthread-1.dllordependenciesnotloaded.(Win32error126) --- .../haskell-modules/generic-builder.nix | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/pkgs/development/haskell-modules/generic-builder.nix b/pkgs/development/haskell-modules/generic-builder.nix index ca959ea7b1b6..ea8be69c3d57 100644 --- a/pkgs/development/haskell-modules/generic-builder.nix +++ b/pkgs/development/haskell-modules/generic-builder.nix @@ -13,6 +13,7 @@ haskellLib, iserv-proxy, nodejs, + windows, writeShellScriptBin, }: @@ -358,11 +359,17 @@ let ++ optional (allPkgconfigDepends != [ ]) "--with-pkg-config=${pkg-config.targetPrefix}pkg-config" ++ optionals enableExternalInterpreter ( - map (opt: "--ghc-option=${opt}") [ - "-fexternal-interpreter" - "-pgmi" - crossSupport.iservWrapper - ] + map (opt: "--ghc-option=${opt}") ( + [ + "-fexternal-interpreter" + "-pgmi" + crossSupport.iservWrapper + ] + ++ lib.optionals stdenv.hostPlatform.isWindows [ + "-L${windows.pthreads}/bin" + "-L${windows.pthreads}/lib" + ] + ) ); makeGhcOptions = opts: lib.concatStringsSep " " (map (opt: "--ghc-option=${opt}") opts);