better sourcepawn.buildEnv

This commit is contained in:
Robin Appelman 2023-07-09 17:37:50 +02:00
commit 6e4a4d1ead

View file

@ -4,6 +4,8 @@
ambuild,
python3Packages,
buildEnv,
writeShellScriptBin,
symlinkJoin
}: let
self = stdenv.mkDerivation rec {
pname = "sourcepawn";
@ -39,11 +41,20 @@
cp spcomp/*/spcomp spshell/*/spshell verifier/*/verifier $out/bin
'';
passthru.buildEnv = imports:
buildEnv {
name = "sourcepawn-env";
passthru.buildEnv = imports: let
unwrapped = symlinkJoin {
name = "sourcepawn-env-unwrapped";
paths = imports ++ [self];
postBuild = ''
mv $out/bin/spcomp{,.unwrapped}
'';
};
wrapped = writeShellScriptBin "spcomp" "exec -a $0 ${unwrapped}/bin/spcomp.unwrapped $@";
in symlinkJoin {
name = "sourcepawn-env";
paths = [unwrapped wrapped];
};
};
in
self