Browse Source

Minor changes to the auto-compilation of C# code.

Signed-off-by: Dimitar Dobrev <dpldobrev@protonmail.com>
pull/593/head
Dimitar Dobrev 10 years ago
parent
commit
985171596a
  1. 19
      src/Generator/Driver.cs

19
src/Generator/Driver.cs

@ -318,7 +318,7 @@ namespace CppSharp @@ -318,7 +318,7 @@ namespace CppSharp
return Generator.Generate();
}
public void WriteCode(List<GeneratorOutput> outputs)
public void SaveCode(List<GeneratorOutput> outputs)
{
var outputPath = Path.GetFullPath(Options.OutputDir);
@ -363,9 +363,6 @@ namespace CppSharp @@ -363,9 +363,6 @@ namespace CppSharp
public void CompileCode()
{
if (!Options.CompileCode)
return;
var assemblyFile = string.IsNullOrEmpty(Options.LibraryName) ?
"out.dll" : Options.LibraryName + ".dll";
@ -412,17 +409,14 @@ namespace CppSharp @@ -412,17 +409,14 @@ namespace CppSharp
foreach (var error in errors)
Diagnostics.Error(error.ToString());
if (errors.Count == 0)
HasCompilationErrors = errors.Count > 0;
if (!HasCompilationErrors)
{
Diagnostics.Message("Compilation succeeded.");
var wrapper = Path.Combine(outputDir, assemblyFile);
foreach (var library in Options.Libraries)
libraryMappings[library] = wrapper;
}
else
{
HasCompilationErrors = true;
}
}
public void AddTranslationUnitPass(TranslationUnitPass pass)
@ -497,10 +491,11 @@ namespace CppSharp @@ -497,10 +491,11 @@ namespace CppSharp
}
if (!driver.Options.DryRun)
driver.WriteCode(outputs);
if (driver.Options.IsCSharpGenerator)
{
driver.SaveCode(outputs);
if (driver.Options.IsCSharpGenerator && driver.Options.CompileCode)
driver.CompileCode();
}
}
}
}
Loading…
Cancel
Save