diff options
author | John Ericson <John.Ericson@Obsidian.Systems> | 2018-05-07 13:07:19 -0400 |
---|---|---|
committer | John Ericson <John.Ericson@Obsidian.Systems> | 2018-05-07 15:10:37 -0400 |
commit | 2110c0bd3009279ceec291f07bfbf063cb5ba6a0 (patch) | |
tree | 7c981653734d64a2b9c1859233b9902aa36f4ab1 /pkgs/development/libraries/libiconv | |
parent | 34a3233a2e1e8ed2f005a3a86cfca02d5f2769ae (diff) | |
download | nixpkgs-2110c0bd3009279ceec291f07bfbf063cb5ba6a0.tar nixpkgs-2110c0bd3009279ceec291f07bfbf063cb5ba6a0.tar.gz nixpkgs-2110c0bd3009279ceec291f07bfbf063cb5ba6a0.tar.bz2 nixpkgs-2110c0bd3009279ceec291f07bfbf063cb5ba6a0.tar.lz nixpkgs-2110c0bd3009279ceec291f07bfbf063cb5ba6a0.tar.xz nixpkgs-2110c0bd3009279ceec291f07bfbf063cb5ba6a0.tar.zst nixpkgs-2110c0bd3009279ceec291f07bfbf063cb5ba6a0.zip |
treewide: Use pkgs/build-support/roles.bash to remove copy pasta
Also fix some setup hooks that unnecessarily used environment hooks, which revolted in the same variable being modified too many times.
Diffstat (limited to 'pkgs/development/libraries/libiconv')
-rw-r--r-- | pkgs/development/libraries/libiconv/default.nix | 5 | ||||
-rw-r--r-- | pkgs/development/libraries/libiconv/setup-hook.sh | 18 |
2 files changed, 7 insertions, 16 deletions
diff --git a/pkgs/development/libraries/libiconv/default.nix b/pkgs/development/libraries/libiconv/default.nix index a4e6fed88e1..169a4d38bb5 100644 --- a/pkgs/development/libraries/libiconv/default.nix +++ b/pkgs/development/libraries/libiconv/default.nix @@ -14,7 +14,10 @@ stdenv.mkDerivation rec { sha256 = "0y1ij745r4p48mxq84rax40p10ln7fc7m243p8k8sia519i3dxfc"; }; - setupHook = ./setup-hook.sh; + setupHooks = [ + ../../../build-support/setup-hooks/role.bash + ./setup-hook.sh + ]; postPatch = lib.optionalString ((hostPlatform != buildPlatform && hostPlatform.libc == "msvcrt") || stdenv.cc.nativeLibc) diff --git a/pkgs/development/libraries/libiconv/setup-hook.sh b/pkgs/development/libraries/libiconv/setup-hook.sh index 78222dddbf1..d20e94513e2 100644 --- a/pkgs/development/libraries/libiconv/setup-hook.sh +++ b/pkgs/development/libraries/libiconv/setup-hook.sh @@ -1,18 +1,6 @@ # libiconv must be listed in load flags on non-Glibc # it doesn't hurt to have it in Glibc either though -iconvLdflags() { - # The `depHostOffset` describes how the host platform of the dependencies - # are slid relative to the depending package. It is brought into scope of - # the environment hook defined as the role of the dependency being applied. - case $depHostOffset in - -1) local role='BUILD_' ;; - 0) local role='' ;; - 1) local role='TARGET_' ;; - *) echo "cc-wrapper: Error: Cannot be used with $depHostOffset-offset deps" >2; - return 1 ;; - esac - export NIX_${role}LDFLAGS+=" -liconv" -} - -addEnvHooks "$hostOffset" iconvLdflags +# See pkgs/build-support/setup-hooks/role.bash +getHostRole +export NIX_${role_pre}LDFLAGS+=" -liconv" |