Author: jfallows
Date: Sat Aug 27 06:04:57 2011
New Revision: 1162299
URL: http://svn.apache.org/viewvc?rev=1162299&view=rev
Log:
Handle different debug symbols extension on Mono (.mdb) vs .NET (.pdb)
Modified:
incubator/npanday/trunk/plugins/maven-ilmerge-plugin/src/main/java/npanday/plugin/ilmerge/AssemblyMerger.java
Modified:
incubator/npanday/trunk/plugins/maven-ilmerge-plugin/src/main/java/npanday/plugin/ilmerge/AssemblyMerger.java
URL:
http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/maven-ilmerge-plugin/src/main/java/npanday/plugin/ilmerge/AssemblyMerger.java?rev=1162299&r1=1162298&r2=1162299&view=diff
==============================================================================
---
incubator/npanday/trunk/plugins/maven-ilmerge-plugin/src/main/java/npanday/plugin/ilmerge/AssemblyMerger.java
(original)
+++
incubator/npanday/trunk/plugins/maven-ilmerge-plugin/src/main/java/npanday/plugin/ilmerge/AssemblyMerger.java
Sat Aug 27 06:04:57 2011
@@ -39,6 +39,7 @@ import npanday.executable.compiler.Compi
import npanday.executable.compiler.CompilerConfig;
import npanday.executable.compiler.CompilerExecutable;
import npanday.executable.compiler.CompilerRequirement;
+import npanday.vendor.Vendor;
import npanday.vendor.VendorFactory;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.plugin.AbstractMojo;
@@ -395,10 +396,15 @@ public class AssemblyMerger extends Abst
if ( mergeDebugSymbols )
{
- String mergedArtifactSymbolFileName =
mergedArtifactFile.getName().replace( ".dll", ".pdb" );
+ Vendor vendor = compilerExecutable.getVendor();
+ String debugSymbolsExtension = ( vendor == Vendor.MONO ) ?
".mdb" : ".pdb";
+ String mergedArtifactSymbolFileName =
mergedArtifactFile.getName().replace( ".dll", debugSymbolsExtension );
File mergedArtifactSymbolFile = new File(
mergedArtifactFile.getParentFile(), mergedArtifactSymbolFileName );
- File mergedArtifactTempSymbolFile = new File(
mergedArtifactTempDirectory, mergedArtifactSymbolFileName );
- FileUtils.rename( mergedArtifactTempSymbolFile,
mergedArtifactSymbolFile );
+ if ( mergedArtifactSymbolFile.exists() )
+ {
+ File mergedArtifactTempSymbolFile = new File(
mergedArtifactTempDirectory, mergedArtifactSymbolFileName );
+ FileUtils.rename( mergedArtifactTempSymbolFile,
mergedArtifactSymbolFile );
+ }
}
FileUtils.deleteDirectory( mergedArtifactTempDirectory );