zlib: on mingw, add another DLL link

Also clean up the expression a little.
It fixes at least libpng's DLL.
wip/yesman
Vladimír Čunát 8 years ago
parent 80509ab287
commit 321ecde8a1
  1. 15
      pkgs/development/libraries/zlib/default.nix

@ -52,14 +52,21 @@ stdenv.mkDerivation rec {
crossAttrs = {
dontStrip = static;
dontSetConfigureCross = true;
} // stdenv.lib.optionalAttrs (stdenv.cross.libc == "msvcrt") {
configurePhase=''
installFlags="BINARY_PATH=$out/bin INCLUDE_PATH=$out/include LIBRARY_PATH=$out/lib"
'';
installFlags = [
"BINARY_PATH=$(out)/bin"
"INCLUDE_PATH=$(dev)/include"
"LIBRARY_PATH=$(out)/lib"
];
makeFlags = [
"-f" "win32/Makefile.gcc"
"PREFIX=${stdenv.cross.config}-"
] ++ (if static then [] else [ "SHARED_MODE=1" ]);
] ++ stdenv.lib.optional (!static) "SHARED_MODE=1";
# Non-typical naming confuses libtool which then refuses to use zlib's DLL
# in some cases, e.g. when compiling libpng.
postInstall = postInstall + "ln -s zlib1.dll $out/bin/libz.dll";
} // stdenv.lib.optionalAttrs (stdenv.cross.libc == "libSystem") {
makeFlags = [ "RANLIB=${stdenv.cross.config}-ranlib" ];
};

Loading…
Cancel
Save