Building a mono (“classic .net”) app should work fine (core compile; we don’t to auxiliary tasks such as resource processing yet build). It’s only the NuGet part that doesn’t work for Classic .NET projects yet.
What does Classic mean:
Classic means a .NET project like you would/could build with the current v9/xbuild-baed compiler. Right now, EBuild will use classic mode when there’s no TargetFramework set, and/or TargetFrameworkVersion is “vX”, such as “v4.6.2”. In this mode, we don’t support NuGet (yet?).
If instead you set a TargetFramework, such as “.NETCoreApp,Version=1.0”, “netcoreapp1.0” or even “net462”, you get the “new” mode — where NuGet is supported.
Note that in non-Classic mode, core references such as System.* and co will currently not resolve properly (mainly because for .NET Core there’s no such thing as core references, and that’s the only non-Classic submode i tested/focused on, so far ;).
BTW, would you be interested in pre-release access to the EBuild repository on GItHub (we’ll open it up eventually) - whether for reference/feedback only or even to contribute, ? if so, let me known your github account name…
“net462”, “.NET,Version=4.6.2” or just “net”, “.NET” would be there right TargetFramework for a “full .NET framework” project; but with the caveat from above that it prolly won’t resolve core refs property (yet).
case Target.Setting["SubMode"]:Value:ToLower of
"net","classic": result := FindFullFrameworkReference(aReference);
//else result := FindFullFrameworkReference(aReference); {$HINT Only for now!}
end;
;). core ref resolving will work for “net” submode (it won’t for “corenetapp”, “netstandard” and others)
Hmm, i’m guessing i don’t set a default yet. will check into that.
NuGet stuff doesn’t get copy-local’ed yet, no. i’ll need in investigate big that works (i.e. how to determine what needs CopyLocal and what doesn’t — i don’t recall seeing any flags to that regard in the Nuget package metadata, afaict.
sort of. mscorlib.dll will be referenced automatically if missing. If yo don’t use anything outside of it, you can be good without any other references. But you should not be able to access stuff thats in System,dll or ny off the others, of course. If you can, thats weird and id love to see a test case.