summary refs log tree commit diff
path: root/pkgs/development/libraries/libssh2
diff options
context:
space:
mode:
authorMatthias C. M. Troffaes <matthias.troffaes@gmail.com>2015-11-06 15:02:12 +0000
committerMatthias C. M. Troffaes <matthias.troffaes@gmail.com>2015-11-12 15:12:09 +0000
commitd583c165683122fb5fd04e3463c8ca7b23edd98b (patch)
tree70430db2dabb8869bed1d4aec2130bee013e8a72 /pkgs/development/libraries/libssh2
parent95396d9dbbe9c52968bacf3821eccaead6081ec8 (diff)
downloadnixpkgs-d583c165683122fb5fd04e3463c8ca7b23edd98b.tar
nixpkgs-d583c165683122fb5fd04e3463c8ca7b23edd98b.tar.gz
nixpkgs-d583c165683122fb5fd04e3463c8ca7b23edd98b.tar.bz2
nixpkgs-d583c165683122fb5fd04e3463c8ca7b23edd98b.tar.lz
nixpkgs-d583c165683122fb5fd04e3463c8ca7b23edd98b.tar.xz
nixpkgs-d583c165683122fb5fd04e3463c8ca7b23edd98b.tar.zst
nixpkgs-d583c165683122fb5fd04e3463c8ca7b23edd98b.zip
libssh2: fix shared library build under mingw
Diffstat (limited to 'pkgs/development/libraries/libssh2')
-rw-r--r--pkgs/development/libraries/libssh2/default.nix17
1 files changed, 16 insertions, 1 deletions
diff --git a/pkgs/development/libraries/libssh2/default.nix b/pkgs/development/libraries/libssh2/default.nix
index 2bd7950751b..5e12ea734c1 100644
--- a/pkgs/development/libraries/libssh2/default.nix
+++ b/pkgs/development/libraries/libssh2/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurlBoot, openssl, zlib}:
+{stdenv, fetchurlBoot, openssl, zlib, windows}:
 
 stdenv.mkDerivation rec {
   name = "libssh2-1.6.0";
@@ -10,6 +10,21 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ openssl zlib ];
 
+  crossAttrs = {
+    # link against cross-built libraries
+    configureFlags = [
+      "--with-openssl"
+      "--with-libssl-prefix=${openssl.crossDrv}"
+      "--with-libz"
+      "--with-libz-prefix=${zlib.crossDrv}"
+    ];
+  } // stdenv.lib.optionalAttrs (stdenv.cross.libc == "msvcrt") {
+    # mingw needs import library of ws2_32 to build the shared library
+    preConfigure = ''
+      export LDFLAGS="-L${windows.mingw_w64}/lib $LDFLAGS"
+    '';
+  };
+
   meta = {
     description = "A client-side C library implementing the SSH2 protocol";
     homepage = http://www.libssh2.org;