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)" />