ILRepack.MSBuild.Task.InternalizedRenameSupport 2.0.18

MSBuild task for ILRepack which is an open-source alternative to ILMerge.

There is a newer version of this package available.
See the version list below for details.
Install-Package ILRepack.MSBuild.Task.InternalizedRenameSupport -Version 2.0.18
dotnet add package ILRepack.MSBuild.Task.InternalizedRenameSupport --version 2.0.18
<PackageReference Include="ILRepack.MSBuild.Task.InternalizedRenameSupport" Version="2.0.18" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add ILRepack.MSBuild.Task.InternalizedRenameSupport --version 2.0.18
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: ILRepack.MSBuild.Task.InternalizedRenameSupport, 2.0.18"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install ILRepack.MSBuild.Task.InternalizedRenameSupport as a Cake Addin
#addin nuget:?package=ILRepack.MSBuild.Task.InternalizedRenameSupport&version=2.0.18

// Install ILRepack.MSBuild.Task.InternalizedRenameSupport as a Cake Tool
#tool nuget:?package=ILRepack.MSBuild.Task.InternalizedRenameSupport&version=2.0.18
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

ILRepack.MSBuild.Task

MSBuild task for ILRepack which is an open-source alternative to ILMerge.

Install via NuGet

Install-Package ILRepack.MSBuild.Task

Supported frameworks

  • netcoreapp2.1
  • netstandard2.0
  • net46
  • net45
  • net40

NB! OutputType EXE on .NET Core assemblies is not supported.

Build prerequisites

  • Visual Studio 15.9
  • .net core 2.2.101 sdk must be installed
  • Checkout git submodules: git submodule update --init --recursive

Build on Windows

build.cmd

Build on Unix

build.sh

ILRepack a library with using an explicit list of input assemblies

<Project Sdk="Microsoft.NET.Sdk">

    <PropertyGroup>
        <TargetFramework>netcoreapp2.2</TargetFramework>
    </PropertyGroup>

    <ItemGroup>
        <PackageReference Include="ILRepack.MSBuild.Task" Version="2.0.1" />
    </ItemGroup>

    <Target Name="ILRepack" AfterTargets="Build">

        <PropertyGroup>
            <WorkingDirectory>$(MSBuildThisFileDirectory)bin\$(Configuration)\$(TargetFramework)</WorkingDirectory>
        </PropertyGroup>

        <ItemGroup>
            <InputAssemblies Include="dependency1.dll" />
            <InputAssemblies Include="..\Mono.Cecil.dll" />
            <InputAssemblies Include="c:\a\rooted\path\Mono.Cecil.Mdb.dll" />
        </ItemGroup>
		
        <ItemGroup>
	    <!-- Dot not internalize any types inside this assembly -->
            <InternalizeExcludeAssemblies Include="do.not.internalize.this.assembly.dll" />
	    <!-- Internalize all types inside Some.Assembly.Namespace (Regular expression) -->
            <InternalizeExcludeAssemblies Include="^Some.Assembly.Namespace" />
	    <!-- Internalize all types except Some.Assembly.Namespace.SpecificType (Regular expression) -->
            <InternalizeExcludeAssemblies Include="^Some.Assembly.Namespace.SpecificType" />
        </ItemGroup>

        <ILRepack 
            OutputType="$(OutputType)" 
            MainAssembly="$(AssemblyName).dll" 
            OutputAssembly="$(AssemblyName).dll" 
            InputAssemblies="@(InputAssemblies)" 
            InternalizeExcludeAssemblies="@(InternalizeExcludeAssemblies)" 
            WorkingDirectory="$(WorkingDirectory)" />

    </Target>

</Project>

ILRepack a library and all dependencies

<Project Sdk="Microsoft.NET.Sdk">

    <PropertyGroup>
        <TargetFramework>netcoreapp2.2</TargetFramework>
    </PropertyGroup>

    <ItemGroup>
        <PackageReference Include="ILRepack.MSBuild.Task" Version="2.0.1" />
    </ItemGroup>
    
    <Target Name="ILRepack" AfterTargets="Build">

        <PropertyGroup>
            <WorkingDirectory>$(MSBuildThisFileDirectory)bin\$(Configuration)\$(TargetFramework)</WorkingDirectory>
        </PropertyGroup>

        <ILRepack 
            OutputType="$(OutputType)" 
            MainAssembly="$(AssemblyName).dll" 
            OutputAssembly="$(AssemblyName).dll" 
            InputAssemblies="$(WorkingDirectory)\*.dll" 
	    WilcardInputAssemblies="true"
            WorkingDirectory="$(WorkingDirectory)" />

    </Target>

</Project>

ILRepack a executable and all dependencies

<Target Name="ILRepack" AfterTargets="Build">

        <PropertyGroup>
            <WorkingDirectory>$(MSBuildThisFileDirectory)bin\$(Configuration)\$(TargetFramework)</WorkingDirectory>
        </PropertyGroup>

        <ILRepack
            OutputType="$(OutputType)"
            MainAssembly="$(AssemblyName).exe"
            OutputAssembly="$(AssemblyName).exe"
            InputAssemblies="$(WorkingDirectory)\*.dll"
	    WilcardInputAssemblies="true"
            WorkingDirectory="$(WorkingDirectory)" />

</Target>

License

Checkout the License

ILRepack.MSBuild.Task

MSBuild task for ILRepack which is an open-source alternative to ILMerge.

Install via NuGet

Install-Package ILRepack.MSBuild.Task

Supported frameworks

  • netcoreapp2.1
  • netstandard2.0
  • net46
  • net45
  • net40

NB! OutputType EXE on .NET Core assemblies is not supported.

Build prerequisites

  • Visual Studio 15.9
  • .net core 2.2.101 sdk must be installed
  • Checkout git submodules: git submodule update --init --recursive

Build on Windows

build.cmd

Build on Unix

build.sh

ILRepack a library with using an explicit list of input assemblies

<Project Sdk="Microsoft.NET.Sdk">

    <PropertyGroup>
        <TargetFramework>netcoreapp2.2</TargetFramework>
    </PropertyGroup>

    <ItemGroup>
        <PackageReference Include="ILRepack.MSBuild.Task" Version="2.0.1" />
    </ItemGroup>

    <Target Name="ILRepack" AfterTargets="Build">

        <PropertyGroup>
            <WorkingDirectory>$(MSBuildThisFileDirectory)bin\$(Configuration)\$(TargetFramework)</WorkingDirectory>
        </PropertyGroup>

        <ItemGroup>
            <InputAssemblies Include="dependency1.dll" />
            <InputAssemblies Include="..\Mono.Cecil.dll" />
            <InputAssemblies Include="c:\a\rooted\path\Mono.Cecil.Mdb.dll" />
        </ItemGroup>
		
        <ItemGroup>
	    <!-- Dot not internalize any types inside this assembly -->
            <InternalizeExcludeAssemblies Include="do.not.internalize.this.assembly.dll" />
	    <!-- Internalize all types inside Some.Assembly.Namespace (Regular expression) -->
            <InternalizeExcludeAssemblies Include="^Some.Assembly.Namespace" />
	    <!-- Internalize all types except Some.Assembly.Namespace.SpecificType (Regular expression) -->
            <InternalizeExcludeAssemblies Include="^Some.Assembly.Namespace.SpecificType" />
        </ItemGroup>

        <ILRepack 
            OutputType="$(OutputType)" 
            MainAssembly="$(AssemblyName).dll" 
            OutputAssembly="$(AssemblyName).dll" 
            InputAssemblies="@(InputAssemblies)" 
            InternalizeExcludeAssemblies="@(InternalizeExcludeAssemblies)" 
            WorkingDirectory="$(WorkingDirectory)" />

    </Target>

</Project>

ILRepack a library and all dependencies

<Project Sdk="Microsoft.NET.Sdk">

    <PropertyGroup>
        <TargetFramework>netcoreapp2.2</TargetFramework>
    </PropertyGroup>

    <ItemGroup>
        <PackageReference Include="ILRepack.MSBuild.Task" Version="2.0.1" />
    </ItemGroup>
    
    <Target Name="ILRepack" AfterTargets="Build">

        <PropertyGroup>
            <WorkingDirectory>$(MSBuildThisFileDirectory)bin\$(Configuration)\$(TargetFramework)</WorkingDirectory>
        </PropertyGroup>

        <ILRepack 
            OutputType="$(OutputType)" 
            MainAssembly="$(AssemblyName).dll" 
            OutputAssembly="$(AssemblyName).dll" 
            InputAssemblies="$(WorkingDirectory)\*.dll" 
	    WilcardInputAssemblies="true"
            WorkingDirectory="$(WorkingDirectory)" />

    </Target>

</Project>

ILRepack a executable and all dependencies

<Target Name="ILRepack" AfterTargets="Build">

        <PropertyGroup>
            <WorkingDirectory>$(MSBuildThisFileDirectory)bin\$(Configuration)\$(TargetFramework)</WorkingDirectory>
        </PropertyGroup>

        <ILRepack
            OutputType="$(OutputType)"
            MainAssembly="$(AssemblyName).exe"
            OutputAssembly="$(AssemblyName).exe"
            InputAssemblies="$(WorkingDirectory)\*.dll"
	    WilcardInputAssemblies="true"
            WorkingDirectory="$(WorkingDirectory)" />

</Target>

License

Checkout the License

Release Notes

See https://github.com/peters/ILRepack.MSBuild.Task/blob/master/CHANGELOG.md#v for release notes.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated
2.0.19 331 4/21/2020
2.0.18 158 4/21/2020
2.0.17 171 4/21/2020
2.0.16 165 4/21/2020