lib/systems: use a shell script for native emulator (#357309)

This commit is contained in:
Emily
2024-11-20 16:31:43 +00:00
committed by GitHub
2 changed files with 2 additions and 2 deletions

View File

@@ -283,7 +283,7 @@ let
# to an emulator program. That is, if an emulator requires additional
# arguments, a wrapper should be used.
if pkgs.stdenv.hostPlatform.canExecute final
then "${pkgs.execline}/bin/exec"
then pkgs.writeShellScript "exec" ''exec "$@"''
else if final.isWindows
then "${wine}/bin/wine${optionalString (final.parsed.cpu.bits == 64) "64"}"
else if final.isLinux && pkgs.stdenv.hostPlatform.isLinux && final.qemuArch != null

View File

@@ -8,7 +8,7 @@ let
|| (stdenv.cc.isGNU && stdenv.hostPlatform.isLinux)
);
staticLibc = lib.optionalString (stdenv.hostPlatform.libc == "glibc") "-L ${glibc.static}/lib";
emulator = lib.optionalString (!stdenv.buildPlatform.canExecute stdenv.hostPlatform) (stdenv.hostPlatform.emulator buildPackages);
emulator = stdenv.hostPlatform.emulator buildPackages;
isCxx = stdenv.cc.libcxx != null;
libcxxStdenvSuffix = lib.optionalString isCxx "-libcxx";
CC = "PATH= ${lib.getExe' stdenv.cc "${stdenv.cc.targetPrefix}cc"}";