add piston nix pkg for mono-basic

This commit is contained in:
Dan Vargas 2022-03-21 09:44:08 -06:00
parent daeed0ce5e
commit 9fe9b4db48
9 changed files with 48 additions and 91 deletions

View file

@ -62,4 +62,5 @@ args: {
"node-coffeescript" = import ./node-coffeescript.nix args;
"jvm-scala" = import ./jvm-scala.nix args;
"llvm_ir" = import ./llvm_ir.nix args;
"mono-basic" = import ./mono-basic.nix args;
}

47
runtimes/mono-basic.nix Normal file
View file

@ -0,0 +1,47 @@
{pkgs, piston, ...}:
let
pkg = pkgs.mono;
in piston.mkRuntime {
language = "basic";
version = pkg.version;
runtime = "mono";
aliases = [
"vb"
"mono-vb"
"mono-basic"
"visual-basic"
];
compile = ''
rename 's/$/\.vb/' "$@" # Add .vb extension
${pkg}/bin/vbc -out:out -sdkpath:${pkg}/lib/mono/4.8-api *.vb
'';
run = ''
shift
${pkg}/bin/mono out.exe "$@"
'';
tests = [
(piston.mkTest {
files = {
"test.vb" = ''
Imports System
Module Module1
Sub Main()
Console.WriteLine("OK")
End Sub
End Module
'';
};
args = [];
stdin = "";
packages = [];
main = "test.vb";
})
];
}