summary refs log tree commit diff
path: root/pkgs/development/libraries/libxml2/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/libraries/libxml2/default.nix')
-rw-r--r--pkgs/development/libraries/libxml2/default.nix17
1 files changed, 5 insertions, 12 deletions
diff --git a/pkgs/development/libraries/libxml2/default.nix b/pkgs/development/libraries/libxml2/default.nix
index b28f241d56e..aa78d0d33c0 100644
--- a/pkgs/development/libraries/libxml2/default.nix
+++ b/pkgs/development/libraries/libxml2/default.nix
@@ -1,9 +1,10 @@
 { stdenv, lib, fetchurl
-, zlib, xz, python2, findXMLCatalogs, libiconv
+, zlib, xz, python2, findXMLCatalogs
 , buildPlatform, hostPlatform
 , pythonSupport ? buildPlatform == hostPlatform
 , icuSupport ? false, icu ? null
-, enableStatic ? false
+, enableShared ? hostPlatform.libc != "msvcrt"
+, enableStatic ? !enableShared,
 }:
 
 let
@@ -35,22 +36,14 @@ in stdenv.mkDerivation rec {
        lib.optional pythonSupport "--with-python=${python}"
     ++ lib.optional icuSupport    "--with-icu"
     ++ [ "--exec_prefix=$dev" ]
-    ++ lib.optional enableStatic "--enable-static";
+    ++ lib.optional enableStatic "--enable-static"
+    ++ lib.optional (!enableShared) "--disable-shared";
 
   enableParallelBuilding = true;
 
   doCheck = (stdenv.hostPlatform == stdenv.buildPlatform) && !stdenv.isDarwin &&
     hostPlatform.libc != "musl";
 
-  crossAttrs = lib.optionalAttrs (hostPlatform.libc == "msvcrt") {
-    # creating the DLL is broken ATM
-    dontDisableStatic = true;
-    configureFlags = configureFlags ++ [ "--disable-shared" ];
-
-    # libiconv is a header dependency - propagating is enough
-    propagatedBuildInputs =  [ findXMLCatalogs libiconv ];
-  };
-
   preInstall = lib.optionalString pythonSupport
     ''substituteInPlace python/libxml2mod.la --replace "${python}" "$py"'';
   installFlags = lib.optionalString pythonSupport