Description

This tasks allows to embed all the managed assemblies into a native binary.

Parameters

Attribute Type Description Required
ApplicationName String The name of the application. True
MainAssembly ITaskItem The path to the main assembly. True
ToDirectory ITaskItem The destination directory. True
TargetOSVersion String The target OS version. Valid values are MacOS105, MacOS106, MacOS107 or MacOS108. True
TargetArchitecture String The target OS architecture. Valid values are X86, X8664, PPC, Universal32 or Universal3264. True
MachineConfiguration ITaskItem The path to the machine.config file. This is required by some .NET assemblies. False
WorkingDirectory ITaskItem The working directory. True
SearchDirectories ITaskItem[] They are folders where to locate assemblies when resolving dependencies. True
IncludedAssemblies ITaskItem[] These element indicate the additionnal assemblies to embed. This could be plugins or assemblies loaded at runtime. True
ExcludedAssemblies ITaskItem[] These element indicate the assemblies to exclude from embedding. This is useful when license prevents the embedding. True
IncludedLibraries ITaskItem[] These element indicate the additionnal native library to copy. The libraries will be relocated in such way that they can be bundle along with the native executable. True

Nested Elements

Usage

Typical usage:

<EmbedApplication
    ApplicationName="$(AssemblyName)"
    ExcludedAssemblies="@(ExcludedAssemblies)"
    IncludedAssemblies="@(AdditionalAssemblies)"
    IncludedLibraries="@(AdditionalLibraries)"
    MainAssembly="$(_MainAssembly)"
    SearchDirectories="@(ReferencePath->'%(RootDir)\%(Directory)')"
    TargetArchitecture="$(MacOSArch)"
    TargetOSVersion="$(MacOSVersion)"
    ToDirectory="$(MacOSPath)"
    WorkingDirectory="$(_NativeWorkingPath)" />