pypy: fix executable name for 3.9

This commit is contained in:
Jörg Thalheim 2022-10-17 12:58:19 +02:00
parent ff3ab5b325
commit 0d7a8e28d0

View File

@ -23,11 +23,12 @@ with lib;
let
isPy3k = substring 0 1 pythonVersion == "3";
isPy39OrNewer = versionAtLeast pythonVersion "3.9";
passthru = passthruFun {
inherit self sourceVersion pythonVersion packageOverrides;
implementation = "pypy";
libPrefix = "pypy${pythonVersion}";
executable = "pypy${if isPy3k then "3" else ""}";
executable = "pypy${if isPy39OrNewer then lib.versions.majorMinor pythonVersion else if isPy3k then "3" else ""}";
sitePackages = "site-packages";
hasDistutilsCxxPatch = false;
inherit pythonAttr;
@ -148,6 +149,7 @@ in with passthru; stdenv.mkDerivation rec {
cp -R {include,lib_pypy,lib-python,${executable}-c} $out/${executable}-c
cp lib${executable}-c${stdenv.hostPlatform.extensions.sharedLibrary} $out/lib/
ln -s $out/${executable}-c/${executable}-c $out/bin/${executable}
${optionalString isPy39OrNewer "ln -s $out/bin/${executable}-c $out/bin/pypy3"}
# other packages expect to find stuff according to libPrefix
ln -s $out/${executable}-c/include $out/include/${libPrefix}