|
|
|
@ -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(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |