about summary refs log tree commit diff
path: root/pkgs/development
diff options
context:
space:
mode:
authorPeter Simons <simons@cryp.to>2016-10-08 10:45:48 +0200
committerPeter Simons <simons@cryp.to>2016-10-08 10:45:48 +0200
commitb59b89d9e38805250dedbd0da8589f6835ecb728 (patch)
tree2b99f61388c521e6fc607d3f2685d8ea5a662ff5 /pkgs/development
parentbf003d986c0f67bfdda6680910722ad93183c88c (diff)
downloadnixlib-b59b89d9e38805250dedbd0da8589f6835ecb728.tar
nixlib-b59b89d9e38805250dedbd0da8589f6835ecb728.tar.gz
nixlib-b59b89d9e38805250dedbd0da8589f6835ecb728.tar.bz2
nixlib-b59b89d9e38805250dedbd0da8589f6835ecb728.tar.lz
nixlib-b59b89d9e38805250dedbd0da8589f6835ecb728.tar.xz
nixlib-b59b89d9e38805250dedbd0da8589f6835ecb728.tar.zst
nixlib-b59b89d9e38805250dedbd0da8589f6835ecb728.zip
Revert "Extend Haskell generic builder to use new --ipid flag."
This reverts commit ec8b81615462625338d76f002d92accd6eb4cf6a. The change told
the Cabal build system to use the hash-part of $out as the internal identifier
for the library it's building (rather than generating such an ID itself). While
a good idea in theory, this choice had an unfortunate side-effect: When Cabal
links libraries X, Y, and Z into an executable, then the generated binary
contains their respective IDs. Now, Nix finds those strings and treats them as
an indication that there is a *run-time dependency* on the corresponding store
paths. This means that the generated executable will always depend on the store
paths of all the Haskell libraries that went into it, even when linked
statically.
Diffstat (limited to 'pkgs/development')
-rw-r--r--pkgs/development/haskell-modules/generic-builder.nix5
1 files changed, 0 insertions, 5 deletions
diff --git a/pkgs/development/haskell-modules/generic-builder.nix b/pkgs/development/haskell-modules/generic-builder.nix
index e4fcd09c0e03..2b597532b44d 100644
--- a/pkgs/development/haskell-modules/generic-builder.nix
+++ b/pkgs/development/haskell-modules/generic-builder.nix
@@ -180,11 +180,6 @@ stdenv.mkDerivation ({
     setupCompileFlags="${concatStringsSep " " setupCompileFlags}"
     configureFlags="${concatStringsSep " " defaultConfigureFlags} $configureFlags"
 
-    ${optionalString (stdenv.lib.versionOlder "8" ghc.version) ''
-      ipid=$(echo $(basename "$out") | cut -d- -f1)
-      configureFlags+=" --ipid=$ipid"
-    ''}
-
     local inputClosure=""
     for i in $propagatedNativeBuildInputs $nativeBuildInputs; do
       findInputs $i inputClosure propagated-native-build-inputs