default to dmcs for Mono systems - PR 51970
diff --git a/changes.xml b/changes.xml
index 39a1bcd..7a18012 100644
--- a/changes.xml
+++ b/changes.xml
@@ -37,7 +37,12 @@
<title>Apache .NET Ant Library</title>
</properties>
- <release version="SVN trunk" date="unpublished">
+ <release version="git master" date="unpublished">
+ <action type="update" issue="51970" breaks-bwc="true">
+ The <csc> task now uses dmcs rather than gmcs as default
+ on non-Windows systems. The executable attribute of the task
+ can still be used to select the compiler explicitly.
+ </action>
</release>
<release version="1.1" date="2011-02-04">
diff --git a/src/main/org/apache/ant/dotnet/compile/CSharp.java b/src/main/org/apache/ant/dotnet/compile/CSharp.java
index 3ab31a9..332699c 100644
--- a/src/main/org/apache/ant/dotnet/compile/CSharp.java
+++ b/src/main/org/apache/ant/dotnet/compile/CSharp.java
@@ -40,7 +40,7 @@
/**
* Compiles C# source into executables or modules.
*
- * csc.exe on Windows or gmcs on other platforms must be on the execute
+ * csc.exe on Windows or dmcs on other platforms must be on the execute
* path, unless another executable or the full path to that executable
* is specified in the <tt>executable</tt> parameter
* <p>
@@ -102,7 +102,7 @@
public class CSharp extends DotnetCompile {
- private static final String MONO_CS_COMPILER = "gmcs";
+ private static final String MONO_CS_COMPILER = "dmcs";
/**
* defines list: RELEASE;WIN32;NO_SANITY_CHECKS;;SOMETHING_ELSE'
diff --git a/src/tests/antunit/old-core-test.xml b/src/tests/antunit/old-core-test.xml
index 70fdb8e..23009a0 100644
--- a/src/tests/antunit/old-core-test.xml
+++ b/src/tests/antunit/old-core-test.xml
@@ -64,16 +64,16 @@
<echo> jsharp.found=${jsharp.found}</echo>
<!-- Mono C# compiler -->
- <condition property="gmcs.found">
- <available file="gmcs" filepath="${env.PATH}" />
+ <condition property="dmcs.found">
+ <available file="dmcs" filepath="${env.PATH}" />
</condition>
- <echo> gmcs.found=${gmcs.found}</echo>
+ <echo> dmcs.found=${dmcs.found}</echo>
<!-- any C# compiler -->
<condition property="c#.found">
<or>
<isset property="csc.found"/>
- <isset property="gmcs.found"/>
+ <isset property="dmcs.found"/>
</or>
</condition>
@@ -95,7 +95,7 @@
<condition property="dotnetapps.found">
<or>
<and>
- <isset property="gmcs.found"/>
+ <isset property="dmcs.found"/>
<isset property="mono.ilasm.found"/>
</and>
<and>
@@ -120,8 +120,8 @@
<isset property="csc.found"/>
</condition>
- <condition property="cs.compiler" value="gmcs">
- <isset property="gmcs.found"/>
+ <condition property="cs.compiler" value="dmcs">
+ <isset property="dmcs.found"/>
</condition>
<condition property="ms.net20+">
@@ -169,7 +169,7 @@
<delete file="${testCSC.exe}"/>
</target>
- <target name="CSC-Mono" depends="validate_csc" if="gmcs.found">
+ <target name="CSC-Mono" depends="validate_csc" if="dmcs.found">
<property name="testCSC.exe"
location="${build.dir}/ExampleCsc.exe" />
<dn:csc
@@ -215,7 +215,7 @@
<delete file="${testCSCRes.exe}"/>
</target>
- <target name="CSCResources-Mono" depends="validate_csc" if="gmcs.found">
+ <target name="CSCResources-Mono" depends="validate_csc" if="dmcs.found">
<property name="testCSCRes.exe"
location="${build.dir}/ExampleCscRes.exe" />
<dn:csc
@@ -251,7 +251,7 @@
<delete file="${testCSC.exe}"/>
</target>
- <target name="CSCintrinsicFileset-Mono" depends="validate_csc" if="gmcs.found">
+ <target name="CSCintrinsicFileset-Mono" depends="validate_csc" if="dmcs.found">
<property name="testCSC.exe"
location="${build.dir}/ExampleCsc.exe"/>
<dn:csc
@@ -295,7 +295,7 @@
<au:assertFileExists file="${testCSC2.dll}"/>
</target>
- <target name="CSCdll-Mono" depends="validate_csc" if="gmcs.found">
+ <target name="CSCdll-Mono" depends="validate_csc" if="dmcs.found">
<property name="testCSC.dll"
location="${build.dir}/Example2.dll" />
<dn:csc
@@ -332,7 +332,7 @@
</target>
<target name="CscReferences-Mono" depends="validate_csc,CSCdll-Mono"
- if="gmcs.found">
+ if="dmcs.found">
<property name="testCscReferences.exe"
location="${build.dir}/ExampleCsc2.exe" />
<dn:csc