about summary refs log tree commit diff
path: root/pkgs/stdenv
diff options
context:
space:
mode:
authorArtturin <Artturin@artturin.com>2023-10-03 08:36:22 +0300
committerPavel Sobolev <paveloom@riseup.net>2023-10-13 10:14:40 +0300
commite64d24fff4042d8ee1def320fee2eb1fd4253532 (patch)
tree8c089d5777dfb398b31d4b7140882f4116bb36d6 /pkgs/stdenv
parent3fce3b9d135b7ccd7672ee077bfc07f5b32fb0fb (diff)
downloadnixlib-e64d24fff4042d8ee1def320fee2eb1fd4253532.tar
nixlib-e64d24fff4042d8ee1def320fee2eb1fd4253532.tar.gz
nixlib-e64d24fff4042d8ee1def320fee2eb1fd4253532.tar.bz2
nixlib-e64d24fff4042d8ee1def320fee2eb1fd4253532.tar.lz
nixlib-e64d24fff4042d8ee1def320fee2eb1fd4253532.tar.xz
nixlib-e64d24fff4042d8ee1def320fee2eb1fd4253532.tar.zst
nixlib-e64d24fff4042d8ee1def320fee2eb1fd4253532.zip
stdenvAdapters.useMoldLinker: automatically add `allowedRequisites`
Co-Authored-By: Pavel Sobolev <paveloom@riseup.net>
Diffstat (limited to 'pkgs/stdenv')
-rw-r--r--pkgs/stdenv/adapters.nix5
1 files changed, 4 insertions, 1 deletions
diff --git a/pkgs/stdenv/adapters.nix b/pkgs/stdenv/adapters.nix
index 9b4ee16a003d..1024bf2ce4d8 100644
--- a/pkgs/stdenv/adapters.nix
+++ b/pkgs/stdenv/adapters.nix
@@ -201,7 +201,10 @@ rec {
       inherit bintools;
     };
     allowedRequisites =
-      lib.mapNullable (rs: rs ++ [ bintools pkgs.mold (lib.getLib pkgs.mimalloc) (lib.getLib pkgs.openssl) ]) (stdenv.allowedRequisites or null);
+      (lib.optional (stdenv.allowedRequisites or null != null) stdenv.allowedRequisites)
+        ++ [ bintools pkgs.mold ]
+        # need to `outputSpecified = false` to make getLib work
+        ++ (builtins.map (p: lib.getLib (p // { outputSpecified = false; })) pkgs.mold.buildInputs);
       # gcc >12.1.0 supports '-fuse-ld=mold'
       # the wrap ld above in bintools supports gcc <12.1.0 and shouldn't harm >12.1.0
     # https://github.com/rui314/mold#how-to-use