nixUnstable: patch boehmgc (nix#4944)

As has been done in https://github.com/NixOS/nix/pull/4944

This introduces the boehmgc_nix and boehmgc_nixUnstable attributes
which are useful for external packages that link with Nix and its
boehmgc.

(cherry picked from commit 596ac242af767b38e48af9076887b206dc72e472)
This commit is contained in:
Robert Hensing 2021-07-07 22:49:18 +02:00 committed by github-actions[bot]
parent 12e0c5c76c
commit 60370d7133
2 changed files with 20 additions and 4 deletions

View File

@ -2,7 +2,8 @@
, storeDir ? "/nix/store"
, stateDir ? "/nix/var"
, confDir ? "/etc"
, boehmgc
, boehmgc_nix
, boehmgc_nixUnstable
, Security
}:
@ -205,7 +206,9 @@ in rec {
sha256 = "sha256-cToMnZU3+UpjeiiXnG3clz9zn8Xk+TbB7UbqmLMrlFk=";
};
inherit storeDir stateDir confDir boehmgc;
boehmgc = boehmgc_nix;
inherit storeDir stateDir confDir;
});
nixUnstable = lib.lowPrio (callPackage common rec {
@ -220,7 +223,9 @@ in rec {
sha256 = "sha256-ARRiLrDOK+JQtvVXsYegspENYimQzilvdTfO7eiBuaA=";
};
inherit storeDir stateDir confDir boehmgc;
boehmgc = boehmgc_nixUnstable;
inherit storeDir stateDir confDir;
});

View File

@ -14274,6 +14274,18 @@ in
boehmgc = callPackage ../development/libraries/boehm-gc { };
boehmgc_766 = callPackage ../development/libraries/boehm-gc/7.6.6.nix { };
boehmgc_nix = pkgs.boehmgc.override {
enableLargeConfig = true;
};
boehmgc_nixUnstable = pkgs.boehmgc_nix.overrideAttrs (drv: {
patches = (drv.patches or []) ++ [
# Part of the GC solution in https://github.com/NixOS/nix/pull/4944
(pkgs.fetchpatch {
url = https://github.com/hercules-ci/nix/raw/5c58d84a76d96f269e3ff1e72c9c9ba5f68576af/boehmgc-coroutine-sp-fallback.diff;
sha256 = "sha256-JvnWVTlkltmQUs/0qApv/LPZ690UX1/2hEP+LYRwKbI=";
})
];
});
boolstuff = callPackage ../development/libraries/boolstuff { };
@ -30440,7 +30452,6 @@ in
inherit (callPackage ../tools/package-management/nix {
storeDir = config.nix.storeDir or "/nix/store";
stateDir = config.nix.stateDir or "/nix/var";
boehmgc = boehmgc.override { enableLargeConfig = true; };
inherit (darwin.apple_sdk.frameworks) Security;
})
nix