From ad91b28cd92be6715945505dd0ae9deda2e18a77 Mon Sep 17 00:00:00 2001 From: Adam Joseph Date: Wed, 8 Nov 2023 03:58:31 -0800 Subject: [PATCH] skalibs: fix cross skalibs-2.14.0.0 added detection for some weird bug exhibited in "old glibcs and some virtual platforms". When cross compiling the detector cannot be run: > posixspawnearlyreturn: `yes` if the target has a broken > `posix_spawn()` implementation that can return before the > child has successfully exec'ed. That happens with old glibcs > and some virtual platforms. I just took a wild guess here and picked `no`. Co-authored-by: Alyssa Ross --- .../skaware-packages/skalibs/default.nix | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/pkgs/development/skaware-packages/skalibs/default.nix b/pkgs/development/skaware-packages/skalibs/default.nix index 7b035eee57f7..80db4b624826 100644 --- a/pkgs/development/skaware-packages/skalibs/default.nix +++ b/pkgs/development/skaware-packages/skalibs/default.nix @@ -1,4 +1,8 @@ -{ skawarePackages, pkgs }: +{ lib +, stdenv +, skawarePackages +, pkgs +}: with skawarePackages; @@ -21,6 +25,17 @@ buildPackage { # Empty the default path, which would be "/usr/bin:bin". # It would be set when PATH is empty. This hurts hermeticity. "--with-default-path=" + + ] ++ lib.optionals (stdenv.buildPlatform.config != stdenv.hostPlatform.config) [ + # ./configure: sysdep posixspawnearlyreturn cannot be autodetected + # when cross-compiling. Please manually provide a value with the + # --with-sysdep-posixspawnearlyreturn=yes|no|... option. + # + # posixspawnearlyreturn: `yes` if the target has a broken + # `posix_spawn()` implementation that can return before the + # child has successfully exec'ed. That happens with old glibcs + # and some virtual platforms. + "--with-sysdep-posixspawnearlyreturn=no" ]; postInstall = ''