From 0395ff9bd39fb966b69abc76ae9e1f0f2dd1c7ca Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Thu, 11 Jul 2024 15:01:38 +0200 Subject: [PATCH] packaging: Set darwinMinVersion to fix x86_64-darwin build Ported from https://github.com/NixOS/nixpkgs/pull/326172 Co-authored-by: Emily --- packaging/dependencies.nix | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/packaging/dependencies.nix b/packaging/dependencies.nix index 34b344971..73ba9cd58 100644 --- a/packaging/dependencies.nix +++ b/packaging/dependencies.nix @@ -11,11 +11,28 @@ versionSuffix, }: +let + prevStdenv = stdenv; +in + let inherit (pkgs) lib; root = ../.; + stdenv = if prevStdenv.isDarwin && prevStdenv.isx86_64 + then darwinStdenv + else prevStdenv; + + # Fix the following error with the default x86_64-darwin SDK: + # + # error: aligned allocation function of type 'void *(std::size_t, std::align_val_t)' is only available on macOS 10.13 or newer + # + # Despite the use of the 10.13 deployment target here, the aligned + # allocation function Clang uses with this setting actually works + # all the way back to 10.6. + darwinStdenv = pkgs.overrideSDK prevStdenv { darwinMinVersion = "10.13"; }; + # Nixpkgs implements this by returning a subpath into the fetched Nix sources. resolvePath = p: p;