summary refs log tree commit diff
path: root/pkgs/development/libraries/zlib
diff options
context:
space:
mode:
authorJohn Ericson <John.Ericson@Obsidian.Systems>2017-06-23 17:45:27 -0400
committerJohn Ericson <John.Ericson@Obsidian.Systems>2017-06-30 10:09:31 -0400
commit95c8277701fb746ad4d91841de494ee869886991 (patch)
tree120ec8dad2d1a6d1c678f3d51778328f5ad2a110 /pkgs/development/libraries/zlib
parentd61c22341b00171b53697164cb8241184979d14c (diff)
downloadnixpkgs-95c8277701fb746ad4d91841de494ee869886991.tar
nixpkgs-95c8277701fb746ad4d91841de494ee869886991.tar.gz
nixpkgs-95c8277701fb746ad4d91841de494ee869886991.tar.bz2
nixpkgs-95c8277701fb746ad4d91841de494ee869886991.tar.lz
nixpkgs-95c8277701fb746ad4d91841de494ee869886991.tar.xz
nixpkgs-95c8277701fb746ad4d91841de494ee869886991.tar.zst
nixpkgs-95c8277701fb746ad4d91841de494ee869886991.zip
misc pkgs: Remove unneeded *Platform == *Platform comparisons
PR #26007 used these to avoid causing a mass rebuild. Now that we know
things work, we do that to clean up.
Diffstat (limited to 'pkgs/development/libraries/zlib')
-rw-r--r--pkgs/development/libraries/zlib/default.nix58
1 files changed, 27 insertions, 31 deletions
diff --git a/pkgs/development/libraries/zlib/default.nix b/pkgs/development/libraries/zlib/default.nix
index eab36c21dc2..ef9f2569c45 100644
--- a/pkgs/development/libraries/zlib/default.nix
+++ b/pkgs/development/libraries/zlib/default.nix
@@ -4,10 +4,9 @@
 , static ? false
 }:
 
-let version = "1.2.11"; in
-
 stdenv.mkDerivation rec {
   name = "zlib-${version}";
+  version = "1.2.11";
 
   src = fetchurl {
     urls =
@@ -19,7 +18,7 @@ stdenv.mkDerivation rec {
 
   patches = stdenv.lib.optional hostPlatform.isCygwin ./disable-cygwin-widechar.patch;
 
-  postPatch = stdenv.lib.optionalString stdenv.isDarwin ''
+  postPatch = stdenv.lib.optionalString hostPlatform.isDarwin ''
     substituteInPlace configure \
       --replace '/usr/bin/libtool' 'ar' \
       --replace 'AR="libtool"' 'AR="ar"' \
@@ -30,14 +29,6 @@ stdenv.mkDerivation rec {
   setOutputFlags = false;
   outputDoc = "dev"; # single tiny man3 page
 
-  # TODO(@Dridus) CC set by cc-wrapper setup-hook, so just empty out the preConfigure script when cross building, but leave the old incorrect script when not
-  # cross building to avoid hash breakage. Once hash breakage is acceptable, remove preConfigure entirely.
-  preConfigure = stdenv.lib.optionalString (hostPlatform == buildPlatform) ''
-    if test -n "$crossConfig"; then
-      export CC=$crossConfig-gcc
-    fi
-  '';
-
   # FIXME needs gcc 4.9 in bootstrap tools
   hardeningDisable = [ "stackprotector" ];
 
@@ -49,36 +40,41 @@ stdenv.mkDerivation rec {
     # jww (2015-01-06): Sometimes this library install as a .so, even on
     # Darwin; others time it installs as a .dylib.  I haven't yet figured out
     # what causes this difference.
-  + stdenv.lib.optionalString stdenv.isDarwin ''
+  + stdenv.lib.optionalString hostPlatform.isDarwin ''
     for file in $out/lib/*.so* $out/lib/*.dylib* ; do
       install_name_tool -id "$file" $file
     done
+  ''
+    # Non-typical naming confuses libtool which then refuses to use zlib's DLL
+    # in some cases, e.g. when compiling libpng.
+  + stdenv.lib.optionalString (hostPlatform.libc == "msvcrt") ''
+    ln -s zlib1.dll $out/bin/libz.dll
   '';
 
   # As zlib takes part in the stdenv building, we don't want references
   # to the bootstrap-tools libgcc (as uses to happen on arm/mips)
-  NIX_CFLAGS_COMPILE = stdenv.lib.optionalString (!stdenv.isDarwin) "-static-libgcc";
+  NIX_CFLAGS_COMPILE = stdenv.lib.optionalString (!hostPlatform.isDarwin) "-static-libgcc";
 
-  crossAttrs = {
-    dontStrip = static;
-    configurePlatforms = [];
-  } // stdenv.lib.optionalAttrs (hostPlatform.libc == "msvcrt") {
-    installFlags = [
-      "BINARY_PATH=$(out)/bin"
-      "INCLUDE_PATH=$(dev)/include"
-      "LIBRARY_PATH=$(out)/lib"
-    ];
-    makeFlags = [
-      "-f" "win32/Makefile.gcc"
-      "PREFIX=${stdenv.cc.prefix}"
-    ] ++ stdenv.lib.optional (!static) "SHARED_MODE=1";
+  dontStrip = hostPlatform != buildPlatform && static;
+  configurePlatforms = [];
 
-    # 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";
-  };
+  installFlags = stdenv.lib.optionals (hostPlatform.libc == "msvcrt") [
+    "BINARY_PATH=$(out)/bin"
+    "INCLUDE_PATH=$(dev)/include"
+    "LIBRARY_PATH=$(out)/lib"
+  ];
 
-  passthru.version = version;
+  makeFlags = [
+    "PREFIX=${stdenv.cc.prefix}"
+  ] ++ stdenv.lib.optionals (hostPlatform.libc == "msvcrt") [
+    "-f" "win32/Makefile.gcc"
+  ] ++ stdenv.lib.optionals (!static) [
+    "SHARED_MODE=1"
+  ];
+
+  passthru = {
+    inherit version;
+  };
 
   meta = with stdenv.lib; {
     description = "Lossless data-compression library";