зеркало из https://github.com/mono/ikvm-fork.git
- Added ModuleBuilder.__Save() to support -target:module option better.
- Changed ikvmc to use new ModuleBuilder.__Save() instead of workaround of deleting the manifest module after saving the assembly.
This commit is contained in:
Родитель
4e650270a5
Коммит
1410ece953
|
@ -558,10 +558,8 @@ namespace IKVM.Internal
|
||||||
|
|
||||||
if(targetIsModule)
|
if(targetIsModule)
|
||||||
{
|
{
|
||||||
Tracer.Info(Tracer.Compiler, "CompilerClassLoader saving temp.$$$ in {0}", assemblyDir);
|
Tracer.Info(Tracer.Compiler, "CompilerClassLoader saving {0} in {1}", assemblyFile, assemblyDir);
|
||||||
string manifestAssembly = "temp.$$$";
|
GetTypeWrapperFactory().ModuleBuilder.__Save(options.pekind, options.imageFileMachine);
|
||||||
assemblyBuilder.Save(manifestAssembly, options.pekind, options.imageFileMachine);
|
|
||||||
File.Delete(assemblyDir + manifestAssembly);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
|
@ -1154,6 +1154,12 @@ namespace IKVM.Reflection.Emit
|
||||||
{
|
{
|
||||||
get { return asm.mdStreamVersion; }
|
get { return asm.mdStreamVersion; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void __Save(PortableExecutableKinds portableExecutableKind, ImageFileMachine imageFileMachine)
|
||||||
|
{
|
||||||
|
FillAssemblyRefTable();
|
||||||
|
ModuleWriter.WriteModule(null, null, this, PEFileKinds.Dll, portableExecutableKind, imageFileMachine, unmanagedResources, 0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class ArrayMethod : MethodInfo
|
class ArrayMethod : MethodInfo
|
||||||
|
|
Загрузка…
Ссылка в новой задаче