uppercutbuild 0.9.0.346.20100805 → 1.0.0.0.20100806

Sign up to get free protection for your applications and to get access to all the features.
Files changed (39) hide show
  1. data/docs/README +7 -2
  2. data/lib/build.sh +23 -0
  3. data/lib/build/UppercuT.xml +1 -1
  4. data/lib/build/analyze.step +78 -77
  5. data/lib/build/analyzers/gallio.test.step +25 -26
  6. data/lib/build/analyzers/mbunit2.test.step +25 -28
  7. data/lib/build/analyzers/moma.step +29 -31
  8. data/lib/build/analyzers/ncover.step +32 -34
  9. data/lib/build/analyzers/ndepend.step +19 -12
  10. data/lib/build/analyzers/nitriq.step +19 -22
  11. data/lib/build/analyzers/nunit.test.step +37 -37
  12. data/lib/build/analyzers/test.step +99 -98
  13. data/lib/build/compile.step +68 -50
  14. data/lib/build/customize.build +76 -75
  15. data/lib/build/customizers/item.template +50 -49
  16. data/lib/build/default.build +171 -167
  17. data/lib/build/deploymentBuilder.step +103 -102
  18. data/lib/build/environmentBuilder.step +119 -118
  19. data/lib/build/gemsBuild.step +113 -112
  20. data/lib/build/gemsPrepare.step +157 -156
  21. data/lib/build/generateBuildInfo.step +108 -105
  22. data/lib/build/ilmerge.build +183 -182
  23. data/lib/build/open.build +115 -102
  24. data/lib/build/package.step +234 -233
  25. data/lib/build/policyChecks.step +81 -80
  26. data/lib/build/updateAssemblies.build +107 -106
  27. data/lib/build/uppercut.dll +0 -0
  28. data/lib/build/uppercut.tasks.dll +0 -0
  29. data/lib/build/versionBuilder.step +149 -147
  30. data/lib/build/versioners/git.step +106 -105
  31. data/lib/build/versioners/hg.step +106 -105
  32. data/lib/build/versioners/svn.step +112 -111
  33. data/lib/build/versioners/tfs.step +104 -103
  34. data/lib/build/zip.build +134 -162
  35. data/lib/deployment/scripts/database.deploy +37 -36
  36. data/lib/open.sh +7 -0
  37. data/lib/settings/UppercuT.config +76 -73
  38. data/lib/zip.sh +9 -0
  39. metadata +9 -6
@@ -47,14 +47,19 @@ This is the best way to get to the bleeding edge of what we are doing.
47
47
 
48
48
 
49
49
  # REQUIREMENTS
50
- * .NET Framework 3.5
51
- * source control on the command line and in PATH environment variable - svn for Subversion / tf for TFS / git for Git
50
+ * .NET Framework 3.5
51
+ * source control on the command line and in PATH environment variable - svn for Subversion / tf for TFS / git for Git
52
52
 
53
53
  # DONATE
54
54
  Donations Accepted - If you enjoy using this product or it has saved you time and money in some way, please consider making a donation.
55
55
  It helps keep to the product updated, pays for site hosting, etc. https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=4410250
56
56
 
57
57
  # RELEASE NOTES
58
+ =1.0.0.0=
59
+ * UppercuT now uses semantic versioning See http://SemVer.org for details. You need to add this to your config file: <property name="version.patch" value="0" overwrite="false" /> (r351)
60
+ * UppercuT now builds on Linux (patch from Svein Ackenhausen). (r350)
61
+ * Non multi targeting now works like it did before any of this multitargeting started. (r348)
62
+
58
63
  =0.9.0.346=
59
64
  * Fixed general compile issues related to multi-targeting changes from last release (r346)
60
65
  * Gems by default are now versioned with datestamp on the end (YYYYMMDD) (r342)
@@ -0,0 +1,23 @@
1
+ #!/bin/bash
2
+ # stty -echo
3
+
4
+ # ::Project UppercuT - http://uppercut.googlecode.com
5
+ # ::No edits to this file are required - http://uppercut.pbwiki.com
6
+
7
+ function usage
8
+ {
9
+ echo ""
10
+ echo "Usage: build.sh"
11
+ exit
12
+ }
13
+
14
+ function displayUsage
15
+ {
16
+ case $1 in
17
+ "/?"|"-?"|"?"|"/help") usage ;;
18
+ esac
19
+ }
20
+
21
+ displayUsage $1
22
+
23
+ mono ./lib/NAnt/NAnt.exe $1 /f:$(cd $(dirname "$0"); pwd)/build/default.build -D:build.config.settings=$(cd $(dirname "$0"); pwd)/Settings/UppercuT.config
@@ -1,5 +1,5 @@
1
1
  <?xml version="1.0" ?>
2
2
  <uppercut>
3
- <version>0.9.0.346</version>
3
+ <version>1.0.0.352</version>
4
4
  </uppercut>
5
5
 
@@ -1,78 +1,79 @@
1
- <?xml version="1.0" encoding="utf-8" ?>
2
- <project name="Analyzer" default="go">
3
- <!-- Project UppercuT - http://projectuppercut.org -->
4
- <!-- DO NOT EDIT THIS FILE - Add custom tasks in BuildTasks.Custom folder with file by the same name - find out more at http://uppercut.pbwiki.com -->
5
- <property name="build.config.settings" value="__NONE__" overwrite="false" />
6
- <include buildfile="${build.config.settings}" if="${file::exists(build.config.settings)}" />
7
- <property name="file.current.no_extension" value="analyze" />
8
- <property name="dirs.current" value="${directory::get-parent-directory(project::get-buildfile-path())}" />
9
- <property name="path.to.toplevel" value=".." />
10
- <property name="folder.build_scripts" value="build" overwrite="false" />
11
- <property name="folder.build_scripts_custom" value="build.custom" overwrite="false" />
12
- <property name="dirs.build_scripts_custom" value="${dirs.current}\${path.to.toplevel}\${folder.build_scripts_custom}" />
13
- <property name="file.custom.step.before" value="${dirs.build_scripts_custom}\${file.current.no_extension}.pre.step" />
14
- <property name="file.custom.step.after" value="${dirs.build_scripts_custom}\${file.current.no_extension}.post.step" />
15
- <property name="file.custom.step.replace" value="${dirs.build_scripts_custom}\${file.current.no_extension}.replace.step" />
16
- <property name="is.replaced" value="false" />
17
- <property name="fail.build.on.error" value="true" />
18
-
19
- <target name="go" depends="run_tasks" />
20
-
21
- <target name="run_tasks">
22
- <echo message="Running ${project::get-name()} tasks." />
23
- <call target="prepare" if="${target::exists('prepare')}" />
24
- <call target="custom_tasks_before" if="${target::exists('custom_tasks_before')}" />
25
- <call target="custom_tasks_replace" if="${target::exists('custom_tasks_replace')}" />
26
- <call target="run_normal_tasks" if="${not is.replaced}" />
27
- <call target="custom_tasks_after" if="${target::exists('custom_tasks_after')}" />
28
- </target>
29
-
30
- <target name="run_normal_tasks"
31
- depends="run_analyzers"
32
- description="Analyzing project for quality indicators." />
33
-
34
- <target name="custom_tasks_before">
35
- <echo message="Running custom tasks if ${file.custom.step.before} exists." />
36
- <nant buildfile="${file.custom.step.before}" inheritall="true" if="${file::exists(file.custom.step.before)}" failonerror="${fail.build.on.error}" />
37
- <exec program="powershell.exe" if="${file::exists(file.custom.step.before + '.ps1')}" failonerror="${fail.build.on.error}">
38
- <arg value="${path::get-full-path(file.custom.step.before + '.ps1')}" />
39
- </exec>
40
- <exec program="ruby.exe" if="${file::exists(file.custom.step.before + '.rb')}" failonerror="${fail.build.on.error}">
41
- <arg value="${path::get-full-path(file.custom.step.before + '.rb')}" />
42
- </exec>
43
- </target>
44
-
45
- <target name="custom_tasks_replace">
46
- <echo message="Running custom tasks instead of normal tasks if ${file.custom.step.replace} exists." />
47
- <property name="is.replaced" value="true" if="${file::exists(file.custom.step.replace)}" />
48
- <nant buildfile="${file.custom.step.replace}" inheritall="true" if="${file::exists(file.custom.step.replace)}" failonerror="${fail.build.on.error}" />
49
- <property name="is.replaced" value="true" if="${file::exists(file.custom.step.replace + '.ps1')}" />
50
- <exec program="powershell.exe" if="${file::exists(file.custom.step.replace + '.ps1')}" failonerror="${fail.build.on.error}" >
51
- <arg value="${path::get-full-path(file.custom.step.replace + '.ps1')}" />
52
- </exec>
53
- <property name="is.replaced" value="true" if="${file::exists(file.custom.step.replace + '.rb')}" />
54
- <exec program="ruby.exe" if="${file::exists(file.custom.step.replace + '.rb')}" failonerror="${fail.build.on.error}" >
55
- <arg value="${path::get-full-path(file.custom.step.replace + '.rb')}" />
56
- </exec>
57
- </target>
58
-
59
- <target name="run_analyzers">
60
- <nant buildfile="${dirs.current}\analyzers\test.step" inheritall="true" />
61
- <nant buildfile="${dirs.current}\analyzers\ncover.step" inheritall="true" failonerror="false" />
62
- <nant buildfile="${dirs.current}\analyzers\ndepend.step" inheritall="true" failonerror="false" />
63
- <nant buildfile="${dirs.current}\analyzers\nitriq.step" inheritall="true" failonerror="false" />
64
- <nant buildfile="${dirs.current}\analyzers\moma.step" inheritall="true" failonerror="false" />
65
- </target>
66
-
67
- <target name="custom_tasks_after">
68
- <echo message="Running custom tasks if ${file.custom.step.after} exists." />
69
- <nant buildfile="${file.custom.step.after}" inheritall="true" if="${file::exists(file.custom.step.after)}" failonerror="${fail.build.on.error}" />
70
- <exec program="powershell.exe" if="${file::exists(file.custom.step.after + '.ps1')}" failonerror="${fail.build.on.error}" >
71
- <arg value="${path::get-full-path(file.custom.step.after + '.ps1')}" />
72
- </exec>
73
- <exec program="ruby.exe" if="${file::exists(file.custom.step.after + '.rb')}" failonerror="${fail.build.on.error}" >
74
- <arg value="${path::get-full-path(file.custom.step.after + '.rb')}" />
75
- </exec>
76
- </target>
77
-
1
+ <?xml version="1.0" encoding="utf-8" ?>
2
+ <project name="Analyzer" default="go">
3
+ <!-- Project UppercuT - http://projectuppercut.org -->
4
+ <!-- DO NOT EDIT THIS FILE - Add custom tasks in BuildTasks.Custom folder with file by the same name - find out more at http://uppercut.pbwiki.com -->
5
+ <property name="build.config.settings" value="__NONE__" overwrite="false" />
6
+ <include buildfile="${build.config.settings}" if="${file::exists(build.config.settings)}" />
7
+ <property name="path.separator" value="${string::trim(path::combine(' ', ' '))}" />
8
+ <property name="file.current.no_extension" value="analyze" />
9
+ <property name="dirs.current" value="${directory::get-parent-directory(project::get-buildfile-path())}" />
10
+ <property name="path.to.toplevel" value=".." />
11
+ <property name="folder.build_scripts" value="build" overwrite="false" />
12
+ <property name="folder.build_scripts_custom" value="build.custom" overwrite="false" />
13
+ <property name="dirs.build_scripts_custom" value="${dirs.current}${path.separator}${path.to.toplevel}${path.separator}${folder.build_scripts_custom}" />
14
+ <property name="file.custom.step.before" value="${dirs.build_scripts_custom}${path.separator}${file.current.no_extension}.pre.step" />
15
+ <property name="file.custom.step.after" value="${dirs.build_scripts_custom}${path.separator}${file.current.no_extension}.post.step" />
16
+ <property name="file.custom.step.replace" value="${dirs.build_scripts_custom}${path.separator}${file.current.no_extension}.replace.step" />
17
+ <property name="is.replaced" value="false" />
18
+ <property name="fail.build.on.error" value="true" />
19
+
20
+ <target name="go" depends="run_tasks" />
21
+
22
+ <target name="run_tasks">
23
+ <echo message="Running ${project::get-name()} tasks." />
24
+ <call target="prepare" if="${target::exists('prepare')}" />
25
+ <call target="custom_tasks_before" if="${target::exists('custom_tasks_before')}" />
26
+ <call target="custom_tasks_replace" if="${target::exists('custom_tasks_replace')}" />
27
+ <call target="run_normal_tasks" if="${not is.replaced}" />
28
+ <call target="custom_tasks_after" if="${target::exists('custom_tasks_after')}" />
29
+ </target>
30
+
31
+ <target name="run_normal_tasks"
32
+ depends="run_analyzers"
33
+ description="Analyzing project for quality indicators." />
34
+
35
+ <target name="custom_tasks_before">
36
+ <echo message="Running custom tasks if ${file.custom.step.before} exists." />
37
+ <nant buildfile="${file.custom.step.before}" inheritall="true" if="${file::exists(file.custom.step.before)}" failonerror="${fail.build.on.error}" />
38
+ <exec program="powershell.exe" if="${file::exists(file.custom.step.before + '.ps1')}" failonerror="${fail.build.on.error}">
39
+ <arg value="${path::get-full-path(file.custom.step.before + '.ps1')}" />
40
+ </exec>
41
+ <exec program="ruby.exe" if="${file::exists(file.custom.step.before + '.rb')}" failonerror="${fail.build.on.error}">
42
+ <arg value="${path::get-full-path(file.custom.step.before + '.rb')}" />
43
+ </exec>
44
+ </target>
45
+
46
+ <target name="custom_tasks_replace">
47
+ <echo message="Running custom tasks instead of normal tasks if ${file.custom.step.replace} exists." />
48
+ <property name="is.replaced" value="true" if="${file::exists(file.custom.step.replace)}" />
49
+ <nant buildfile="${file.custom.step.replace}" inheritall="true" if="${file::exists(file.custom.step.replace)}" failonerror="${fail.build.on.error}" />
50
+ <property name="is.replaced" value="true" if="${file::exists(file.custom.step.replace + '.ps1')}" />
51
+ <exec program="powershell.exe" if="${file::exists(file.custom.step.replace + '.ps1')}" failonerror="${fail.build.on.error}" >
52
+ <arg value="${path::get-full-path(file.custom.step.replace + '.ps1')}" />
53
+ </exec>
54
+ <property name="is.replaced" value="true" if="${file::exists(file.custom.step.replace + '.rb')}" />
55
+ <exec program="ruby.exe" if="${file::exists(file.custom.step.replace + '.rb')}" failonerror="${fail.build.on.error}" >
56
+ <arg value="${path::get-full-path(file.custom.step.replace + '.rb')}" />
57
+ </exec>
58
+ </target>
59
+
60
+ <target name="run_analyzers">
61
+ <nant buildfile="${dirs.current}${path.separator}analyzers${path.separator}test.step" inheritall="true" />
62
+ <nant buildfile="${dirs.current}${path.separator}analyzers${path.separator}ncover.step" inheritall="true" failonerror="false" />
63
+ <nant buildfile="${dirs.current}${path.separator}analyzers${path.separator}ndepend.step" inheritall="true" failonerror="false" />
64
+ <nant buildfile="${dirs.current}${path.separator}analyzers${path.separator}nitriq.step" inheritall="true" failonerror="false" />
65
+ <nant buildfile="${dirs.current}${path.separator}analyzers${path.separator}moma.step" inheritall="true" failonerror="false" />
66
+ </target>
67
+
68
+ <target name="custom_tasks_after">
69
+ <echo message="Running custom tasks if ${file.custom.step.after} exists." />
70
+ <nant buildfile="${file.custom.step.after}" inheritall="true" if="${file::exists(file.custom.step.after)}" failonerror="${fail.build.on.error}" />
71
+ <exec program="powershell.exe" if="${file::exists(file.custom.step.after + '.ps1')}" failonerror="${fail.build.on.error}" >
72
+ <arg value="${path::get-full-path(file.custom.step.after + '.ps1')}" />
73
+ </exec>
74
+ <exec program="ruby.exe" if="${file::exists(file.custom.step.after + '.rb')}" failonerror="${fail.build.on.error}" >
75
+ <arg value="${path::get-full-path(file.custom.step.after + '.rb')}" />
76
+ </exec>
77
+ </target>
78
+
78
79
  </project>
@@ -4,25 +4,27 @@
4
4
  <!-- DO NOT EDIT THIS FILE - This follows a convention for testing with Integration tests being separated from Unit tests - find out more at http://uppercut.pbwiki.com -->
5
5
  <property name="build.config.settings" value="__NONE__" overwrite="false" />
6
6
  <include buildfile="${build.config.settings}" if="${file::exists(build.config.settings)}" />
7
+ <property name="path.separator" value="${string::trim(path::combine(' ', ' '))}" />
8
+ <include buildfile="..${path.separator}csharp.functions" />
7
9
  <property name="file.current.no_extension" value="gallio.test" />
8
10
  <property name="dirs.current" value="${directory::get-parent-directory(project::get-buildfile-path())}" />
9
- <property name="path.to.toplevel" value="..\.." />
11
+ <property name="path.to.toplevel" value="..${path.separator}.." />
10
12
  <property name="folder.build_scripts" value="build" overwrite="false" />
11
13
  <property name="folder.build_scripts_custom" value="build.custom" overwrite="false" />
12
- <property name="dirs.build_scripts_custom" value="${dirs.current}\${path.to.toplevel}\${folder.build_scripts_custom}\analyzers" />
14
+ <property name="dirs.build_scripts_custom" value="${dirs.current}${path.separator}${path.to.toplevel}${path.separator}${folder.build_scripts_custom}${path.separator}analyzers" />
13
15
  <property name="folder.code_build" value="build_output" overwrite="false" />
14
- <property name="dirs.build" value="${dirs.current}\${path.to.toplevel}\${folder.code_build}" />
16
+ <property name="dirs.build" value="${dirs.current}${path.separator}${path.to.toplevel}${path.separator}${folder.code_build}" />
15
17
  <property name="folder.app.drop" value="${project.name}" overwrite="false" />
16
- <property name="dirs.build.code" value="${dirs.build}\${folder.app.drop}" overwrite="false" />
18
+ <property name="dirs.build.code" value="${dirs.build}${path.separator}${folder.app.drop}" overwrite="false" />
17
19
  <property name="folder.build_artifacts" value="build_artifacts" overwrite="false" />
18
- <property name="dirs.build_artifacts" value="${path::get-full-path(dirs.build)}\${folder.build_artifacts}" />
19
- <property name="dirs.test_results" value="${dirs.build_artifacts}\gallio" overwrite="false" />
20
+ <property name="dirs.build_artifacts" value="${path::get-full-path(dirs.build)}${path.separator}${folder.build_artifacts}" />
21
+ <property name="dirs.test_results" value="${dirs.build_artifacts}${path.separator}gallio" overwrite="false" />
20
22
  <property name="file.test_results" value="gallio-results" overwrite="false" />
21
23
  <property name="time.limit.in.seconds" value="240" />
22
24
 
23
- <property name="file.custom.step.before" value="${dirs.build_scripts_custom}\${file.current.no_extension}.pre.step" />
24
- <property name="file.custom.step.after" value="${dirs.build_scripts_custom}\${file.current.no_extension}.post.step" />
25
- <property name="file.custom.step.replace" value="${dirs.build_scripts_custom}\${file.current.no_extension}.replace.step" />
25
+ <property name="file.custom.step.before" value="${dirs.build_scripts_custom}${path.separator}${file.current.no_extension}.pre.step" />
26
+ <property name="file.custom.step.after" value="${dirs.build_scripts_custom}${path.separator}${file.current.no_extension}.post.step" />
27
+ <property name="file.custom.step.replace" value="${dirs.build_scripts_custom}${path.separator}${file.current.no_extension}.replace.step" />
26
28
  <property name="is.replaced" value="false" />
27
29
  <property name="fail.build.on.error" value="true" />
28
30
 
@@ -74,8 +76,8 @@
74
76
 
75
77
  <target name="load_tasks">
76
78
  <echo message="Loading Gallio Nant Tasks from Program Files." />
77
- <loadtasks assembly="C:\Program Files (x86)\Gallio\bin\Gallio.NAntTasks.dll" if="${file::exists('C:\Program Files (x86)\Gallio\bin\Gallio.NAntTasks.dll')}" />
78
- <loadtasks assembly="C:\Program Files\Gallio\bin\Gallio.NAntTasks.dll" if="${file::exists('C:\Program Files\Gallio\bin\Gallio.NAntTasks.dll')}" />
79
+ <loadtasks assembly="C:${path.separator}Program Files (x86)${path.separator}Gallio${path.separator}bin${path.separator}Gallio.NAntTasks.dll" if="${file::exists('C:${path.separator}Program Files (x86)${path.separator}Gallio${path.separator}bin${path.separator}Gallio.NAntTasks.dll')}" />
80
+ <loadtasks assembly="C:${path.separator}Program Files${path.separator}Gallio${path.separator}bin${path.separator}Gallio.NAntTasks.dll" if="${file::exists('C:${path.separator}Program Files${path.separator}Gallio${path.separator}bin${path.separator}Gallio.NAntTasks.dll')}" />
79
81
  </target>
80
82
 
81
83
  <target name="run_tests" depends="prepare,load_tasks" description="Running Unit Tests">
@@ -92,11 +94,12 @@
92
94
  filter="exclude Category:Database or Category:Integration or Category:Slow or Category:NotWorking or Categroy:Ignore or Category:database or Category:integration or Category:slow or Category:notworking or Categroy:ignore"
93
95
  >
94
96
  <files>
95
- <exclude name="${dirs.build.code}\*Database*dll" />
96
- <exclude name="${dirs.build.code}\*.Integration*dll" />
97
- <exclude name="${dirs.build.code}\TestFu.dll" />
98
- <include name="${dirs.build.code}\*Test*dll" />
99
- <include name="${dirs.build.code}\*.Spec*dll" />
97
+ <exclude name="${dirs.build.code}${path.separator}lib${path.separator}**" />
98
+ <exclude name="${dirs.build.code}${path.separator}**${path.separator}*Database*dll" />
99
+ <exclude name="${dirs.build.code}${path.separator}**${path.separator}*.Integration*dll" />
100
+ <exclude name="${dirs.build.code}${path.separator}**${path.separator}TestFu.dll" />
101
+ <include name="${dirs.build.code}${path.separator}**${path.separator}*Test*dll" />
102
+ <include name="${dirs.build.code}${path.separator}**${path.separator}*.Spec*dll" />
100
103
  </files>
101
104
  </gallio>
102
105
  </target>
@@ -114,21 +117,17 @@
114
117
  run-time-limit="${time.limit.in.seconds}"
115
118
  >
116
119
  <files>
117
- <exclude name="${dirs.build.code}\TestFu.dll" />
118
- <include name="${dirs.build.code}\*Test*dll" />
119
- <include name="${dirs.build.code}\*.Spec*dll" />
120
+ <exclude name="${dirs.build.code}${path.separator}lib${path.separator}**" />
121
+ <exclude name="${dirs.build.code}${path.separator}**${path.separator}TestFu.dll" />
122
+ <include name="${dirs.build.code}${path.separator}**${path.separator}*Test*dll" />
123
+ <include name="${dirs.build.code}${path.separator}**${path.separator}*.Spec*dll" />
120
124
  </files>
121
125
  </gallio>
122
126
  </target>
123
127
 
124
128
  <target name="open_results">
125
- <echo message="Opening results at ${path::get-full-path(dirs.test_results)}\${file.test_results}.html."/>
126
- <exec
127
- spawn="true"
128
- program="${environment::get-folder-path('ProgramFiles')}\Internet Explorer\iexplore.exe"
129
- commandline="${path::get-full-path(dirs.test_results)}\${file.test_results}.html"
130
- >
131
- </exec>
129
+ <echo message="Opening results - ${path::get-full-path(dirs.test_results) + path.separator + file.test_results + '.html'}" />
130
+ <results display="${path::get-full-path(dirs.test_results) + path.separator + file.test_results + '.html'}" />
132
131
  </target>
133
132
 
134
133
  <target name="custom_tasks_after">
@@ -4,40 +4,42 @@
4
4
  <!-- DO NOT EDIT THIS FILE - This follows a convention for testing with Integration tests being separated from Unit tests - find out more at http://uppercut.pbwiki.com -->
5
5
  <property name="build.config.settings" value="__NONE__" overwrite="false" />
6
6
  <include buildfile="${build.config.settings}" if="${file::exists(build.config.settings)}" />
7
+ <property name="path.separator" value="${string::trim(path::combine(' ', ' '))}" />
8
+ <include buildfile="..${path.separator}csharp.functions" />
7
9
  <property name="file.current.no_extension" value="mbunit2.test" />
8
10
  <property name="dirs.current" value="${directory::get-parent-directory(project::get-buildfile-path())}" />
9
- <property name="path.to.toplevel" value="..\.." />
11
+ <property name="path.to.toplevel" value="..${path.separator}.." />
10
12
  <property name="folder.build_scripts" value="build" overwrite="false" />
11
13
  <property name="folder.build_scripts_custom" value="build.custom" overwrite="false" />
12
- <property name="dirs.build_scripts_custom" value="${dirs.current}\${path.to.toplevel}\${folder.build_scripts_custom}\analyzers" />
14
+ <property name="dirs.build_scripts_custom" value="${dirs.current}${path.separator}${path.to.toplevel}${path.separator}${folder.build_scripts_custom}${path.separator}analyzers" />
13
15
  <property name="folder.code_build" value="build_output" overwrite="false" />
14
- <property name="dirs.build" value="${dirs.current}\${path.to.toplevel}\${folder.code_build}" />
16
+ <property name="dirs.build" value="${dirs.current}${path.separator}${path.to.toplevel}${path.separator}${folder.code_build}" />
15
17
  <property name="folder.app.drop" value="${project.name}" overwrite="false" />
16
- <property name="dirs.build.code" value="${dirs.build}\${folder.app.drop}" overwrite="false" />
18
+ <property name="dirs.build.code" value="${dirs.build}${path.separator}${folder.app.drop}" overwrite="false" />
17
19
  <property name="folder.build_artifacts" value="build_artifacts" overwrite="false" />
18
- <property name="dirs.build_artifacts" value="${path::get-full-path(dirs.build)}\${folder.build_artifacts}" />
19
- <property name="dirs.test_results" value="${dirs.build_artifacts}\mbunit2" overwrite="false" />
20
+ <property name="dirs.build_artifacts" value="${path::get-full-path(dirs.build)}${path.separator}${folder.build_artifacts}" />
21
+ <property name="dirs.test_results" value="${dirs.build_artifacts}${path.separator}mbunit2" overwrite="false" />
20
22
  <property name="file.test_results" value="mbunit-results" overwrite="false" />
21
- <property name="file.custom.step.before" value="${dirs.build_scripts_custom}\${file.current.no_extension}.pre.step" />
22
- <property name="file.custom.step.after" value="${dirs.build_scripts_custom}\${file.current.no_extension}.post.step" />
23
- <property name="file.custom.step.replace" value="${dirs.build_scripts_custom}\${file.current.no_extension}.replace.step" />
23
+ <property name="file.custom.step.before" value="${dirs.build_scripts_custom}${path.separator}${file.current.no_extension}.pre.step" />
24
+ <property name="file.custom.step.after" value="${dirs.build_scripts_custom}${path.separator}${file.current.no_extension}.post.step" />
25
+ <property name="file.custom.step.replace" value="${dirs.build_scripts_custom}${path.separator}${file.current.no_extension}.replace.step" />
24
26
  <property name="is.replaced" value="false" />
25
27
  <property name="fail.build.on.error" value="true" />
26
28
 
27
- <assemblyfileset id="assemblies.assemblyfileset.testing" basedir="${dirs.build.code}\" >
28
- <exclude name="lib\**" />
29
- <exclude name="**\*Database*dll" />
30
- <exclude name="**\*.Integration*dll" />
31
- <exclude name="**\TestFu.dll" />
32
- <include name="**\*Test*dll" />
33
- <include name="**\*.Spec*dll" />
29
+ <assemblyfileset id="assemblies.assemblyfileset.testing" basedir="${dirs.build.code}${path.separator}" >
30
+ <exclude name="lib${path.separator}**" />
31
+ <exclude name="**${path.separator}*Database*dll" />
32
+ <exclude name="**${path.separator}*.Integration*dll" />
33
+ <exclude name="**${path.separator}TestFu.dll" />
34
+ <include name="**${path.separator}*Test*dll" />
35
+ <include name="**${path.separator}*.Spec*dll" />
34
36
  </assemblyfileset>
35
37
 
36
- <assemblyfileset id="assemblies.assemblyfileset.testing.all" basedir="${dirs.build.code}\" >
37
- <exclude name="lib\**" />
38
- <exclude name="**\TestFu.dll" />
39
- <include name="**\*Test*dll" />
40
- <include name="**\*.Spec*dll" />
38
+ <assemblyfileset id="assemblies.assemblyfileset.testing.all" basedir="${dirs.build.code}${path.separator}" >
39
+ <exclude name="lib${path.separator}**" />
40
+ <exclude name="**${path.separator}TestFu.dll" />
41
+ <include name="**${path.separator}*Test*dll" />
42
+ <include name="**${path.separator}*.Spec*dll" />
41
43
  </assemblyfileset>
42
44
 
43
45
  <target name="go" depends="run_tasks" />
@@ -125,13 +127,8 @@
125
127
  </target>
126
128
 
127
129
  <target name="open_results">
128
- <echo message="Opening results at ${path::get-full-path(dirs.test_results)}\${file.test_results}.html."/>
129
- <exec
130
- spawn="true"
131
- program="${environment::get-folder-path('ProgramFiles')}\Internet Explorer\iexplore.exe"
132
- commandline="${path::get-full-path(dirs.test_results)}\${file.test_results}.html"
133
- >
134
- </exec>
130
+ <echo message="Opening results - ${path::get-full-path(dirs.test_results) + path.separator + file.test_results + '.html'}" />
131
+ <results display="${path::get-full-path(dirs.test_results) + path.separator + file.test_results + '.html'}" />
135
132
  </target>
136
133
 
137
134
  <target name="custom_tasks_after">
@@ -4,30 +4,32 @@
4
4
  <!-- DO NOT EDIT THIS FILE - Mono Migration Analyzer - find out more at http://uppercut.pbwiki.com -->
5
5
  <property name="build.config.settings" value="__NONE__" overwrite="false" />
6
6
  <include buildfile="${build.config.settings}" if="${file::exists(build.config.settings)}" />
7
+ <property name="path.separator" value="${string::trim(path::combine(' ', ' '))}" />
8
+ <include buildfile="..${path.separator}csharp.functions" />
7
9
  <property name="file.current.no_extension" value="moma" />
8
10
  <property name="dirs.current" value="${directory::get-parent-directory(project::get-buildfile-path())}" />
9
- <property name="path.to.toplevel" value="..\.." />
11
+ <property name="path.to.toplevel" value="..${path.separator}.." />
10
12
  <property name="folder.build_scripts" value="build" overwrite="false" />
11
13
  <property name="folder.build_scripts_custom" value="build.custom" overwrite="false" />
12
- <property name="dirs.build_scripts_custom" value="${dirs.current}\${path.to.toplevel}\${folder.build_scripts_custom}\analyzers" />
14
+ <property name="dirs.build_scripts_custom" value="${dirs.current}${path.separator}${path.to.toplevel}${path.separator}${folder.build_scripts_custom}${path.separator}analyzers" />
13
15
  <property name="folder.code_build" value="build_output" overwrite="false" />
14
- <property name="dirs.build" value="${dirs.current}\${path.to.toplevel}\${folder.code_build}" />
16
+ <property name="dirs.build" value="${dirs.current}${path.separator}${path.to.toplevel}${path.separator}${folder.code_build}" />
15
17
  <property name="folder.app.drop" value="${project.name}" overwrite="false" />
16
- <property name="dirs.build.code" value="${dirs.build}\${folder.app.drop}" overwrite="false" />
18
+ <property name="dirs.build.code" value="${dirs.build}${path.separator}${folder.app.drop}" overwrite="false" />
17
19
  <property name="folder.build_artifacts" value="build_artifacts" overwrite="false" />
18
- <property name="dirs.build_artifacts" value="${path::get-full-path(dirs.build)}\${folder.build_artifacts}" />
20
+ <property name="dirs.build_artifacts" value="${path::get-full-path(dirs.build)}${path.separator}${folder.build_artifacts}" />
19
21
  <property name="project.name" value="__SOLUTION_NAME_WITHOUT_SLN_EXTENSION__" overwrite="false" />
20
22
  <property name="folder.references" value="lib" overwrite="false" />
21
- <property name="dirs.lib" value="${dirs.current}\${path.to.toplevel}\${folder.references}" overwrite="false" />
22
- <property name="dirs.moma_results" value="${path::get-full-path(dirs.build_artifacts)}\monoMigrationAnalyzer" />
23
- <property name="app.moma" value="${path::get-full-path(dirs.lib)}\MoMA\MoMA.exe" overwrite="false" />
23
+ <property name="dirs.lib" value="${dirs.current}${path.separator}${path.to.toplevel}${path.separator}${folder.references}" overwrite="false" />
24
+ <property name="dirs.moma_results" value="${path::get-full-path(dirs.build_artifacts)}${path.separator}monoMigrationAnalyzer" />
25
+ <property name="app.moma" value="${path::get-full-path(dirs.lib)}${path.separator}MoMA${path.separator}MoMA.exe" overwrite="false" />
24
26
  <property name="file.moma_results" value="${project.name}.MoMAReport.html" />
25
27
  <property name="file.moma.submit_results" value="${project.name}.MoMAReport.xml" />
26
28
  <property name="file.moma_log" value="${project.name}.moma.log" />
27
- <property name="args.moma" value="--nogui --out &quot;${dirs.moma_results}\${file.moma_results}&quot;" />
28
- <property name="file.custom.step.before" value="${dirs.build_scripts_custom}\${file.current.no_extension}.pre.step" />
29
- <property name="file.custom.step.after" value="${dirs.build_scripts_custom}\${file.current.no_extension}.post.step" />
30
- <property name="file.custom.step.replace" value="${dirs.build_scripts_custom}\${file.current.no_extension}.replace.step" />
29
+ <property name="args.moma" value="--nogui --out &quot;${dirs.moma_results}${path.separator}${file.moma_results}&quot;" />
30
+ <property name="file.custom.step.before" value="${dirs.build_scripts_custom}${path.separator}${file.current.no_extension}.pre.step" />
31
+ <property name="file.custom.step.after" value="${dirs.build_scripts_custom}${path.separator}${file.current.no_extension}.post.step" />
32
+ <property name="file.custom.step.replace" value="${dirs.build_scripts_custom}${path.separator}${file.current.no_extension}.replace.step" />
31
33
  <property name="is.replaced" value="false" />
32
34
  <property name="fail.build.on.error" value="false" />
33
35
 
@@ -84,21 +86,22 @@
84
86
  <foreach item="File" property="dll.filename">
85
87
  <in>
86
88
  <items>
87
- <exclude name="${dirs.build.code}\NUnit*.dll" />
88
- <exclude name="${dirs.build.code}\MbUnit*.dll" />
89
- <exclude name="${dirs.build.code}\TestFu.dll" />
90
- <exclude name="${dirs.build.code}\QuickGraph*.dll" />
91
- <exclude name="${dirs.build.code}\Refly*.dll" />
92
- <exclude name="${dirs.build.code}\Rhino.Mocks*.dll" />
93
- <exclude name="${dirs.build.code}\*bdd*.dll" />
94
- <exclude name="${dirs.build.code}\*Test*dll" />
95
- <exclude name="${dirs.build.code}\*Spec*dll" />
96
- <include name="${dirs.build.code}\*.dll" />
97
- <include name="${dirs.build.code}\*.exe" />
89
+ <exclude name="${dirs.build.code}${path.separator}lib${path.separator}**" />
90
+ <exclude name="${dirs.build.code}${path.separator}**${path.separator}NUnit*.dll" />
91
+ <exclude name="${dirs.build.code}${path.separator}**${path.separator}MbUnit*.dll" />
92
+ <exclude name="${dirs.build.code}${path.separator}**${path.separator}TestFu.dll" />
93
+ <exclude name="${dirs.build.code}${path.separator}**${path.separator}QuickGraph*.dll" />
94
+ <exclude name="${dirs.build.code}${path.separator}**${path.separator}Refly*.dll" />
95
+ <exclude name="${dirs.build.code}${path.separator}**${path.separator}Rhino.Mocks*.dll" />
96
+ <exclude name="${dirs.build.code}${path.separator}**${path.separator}*bdd*.dll" />
97
+ <exclude name="${dirs.build.code}${path.separator}**${path.separator}*Test*dll" />
98
+ <exclude name="${dirs.build.code}${path.separator}**${path.separator}*Spec*dll" />
99
+ <include name="${dirs.build.code}${path.separator}**${path.separator}*.dll" />
100
+ <include name="${dirs.build.code}${path.separator}**${path.separator}*.exe" />
98
101
  </items>
99
102
  </in>
100
103
  <do>
101
- <property name="dll.names" value="${dll.names + ' ' + path::get-file-name(dll.filename)}" />
104
+ <property name="dll.names" value="${dll.names + ' ' + string::replace(string::replace(dll.filename,path::get-full-path(dirs.build.code) + '\',''),'\',path.separator) + ''}" />
102
105
  </do>
103
106
  </foreach>
104
107
 
@@ -120,13 +123,8 @@
120
123
  </target>
121
124
 
122
125
  <target name="open_results">
123
- <echo message="Opening results at ${path::get-full-path(dirs.moma_results)}\${file.moma_results}."/>
124
- <exec
125
- spawn="true"
126
- program="${environment::get-folder-path('ProgramFiles')}\Internet Explorer\iexplore.exe"
127
- commandline="${path::get-full-path(dirs.moma_results)}\${file.moma_results}"
128
- >
129
- </exec>
126
+ <echo message="Opening results - ${path::get-full-path(dirs.moma_results) + path.separator + file.moma_results}."/>
127
+ <results display="${path::get-full-path(dirs.moma_results) + path.separator + file.moma_results}" />
130
128
  </target>
131
129
 
132
130
  <target name="custom_tasks_after">