kvm 0.0.1.pre

Sign up to get free protection for your applications and to get access to all the features.
Files changed (148) hide show
  1. data/.gitignore +3 -0
  2. data/.rvmrc +1 -0
  3. data/AGPL-3.0 +661 -0
  4. data/Gemfile +8 -0
  5. data/Gemfile.lock +32 -0
  6. data/LICENSE +23 -0
  7. data/README.md +73 -0
  8. data/Rakefile +48 -0
  9. data/bin/kvm +6 -0
  10. data/kvm.gemspec +28 -0
  11. data/lib/kvm.rb +286 -0
  12. data/lib/kvm/archive.rb +56 -0
  13. data/lib/kvm/artifact.rb +28 -0
  14. data/lib/kvm/db/jdbc_adapter.rb +71 -0
  15. data/lib/kvm/db/oracle.rb +23 -0
  16. data/lib/kvm/db/types.rb +11 -0
  17. data/lib/kvm/impex.rb +109 -0
  18. data/lib/kvm/log.rb +7 -0
  19. data/lib/kvm/resource.rb +72 -0
  20. data/lib/kvm/rice_release.rb +79 -0
  21. data/lib/kvm/rice_release_generated_dataset.rb +68 -0
  22. data/lib/kvm/source.rb +33 -0
  23. data/lib/kvm/subversion.rb +52 -0
  24. data/lib/kvm/version.rb +3 -0
  25. data/lib/kvm/wallet.rb +64 -0
  26. data/support/ant/INSTALL +2 -0
  27. data/support/ant/KEYS +1398 -0
  28. data/support/ant/LICENSE +272 -0
  29. data/support/ant/NOTICE +6 -0
  30. data/support/ant/README +97 -0
  31. data/support/ant/WHATSNEW +5467 -0
  32. data/support/ant/bin/ant +335 -0
  33. data/support/ant/bin/ant.bat +218 -0
  34. data/support/ant/bin/ant.cmd +93 -0
  35. data/support/ant/bin/antRun +24 -0
  36. data/support/ant/bin/antRun.bat +50 -0
  37. data/support/ant/bin/antRun.pl +66 -0
  38. data/support/ant/bin/antenv.cmd +98 -0
  39. data/support/ant/bin/complete-ant-cmd.pl +114 -0
  40. data/support/ant/bin/envset.cmd +131 -0
  41. data/support/ant/bin/lcp.bat +31 -0
  42. data/support/ant/bin/runant.pl +153 -0
  43. data/support/ant/bin/runant.py +102 -0
  44. data/support/ant/bin/runrc.cmd +60 -0
  45. data/support/ant/etc/ant-bootstrap.jar +0 -0
  46. data/support/ant/etc/changelog.xsl +148 -0
  47. data/support/ant/etc/checkstyle/checkstyle-frames.xsl +299 -0
  48. data/support/ant/etc/checkstyle/checkstyle-text.xsl +34 -0
  49. data/support/ant/etc/checkstyle/checkstyle-xdoc.xsl +130 -0
  50. data/support/ant/etc/coverage-frames.xsl +489 -0
  51. data/support/ant/etc/jdepend-frames.xsl +487 -0
  52. data/support/ant/etc/jdepend.xsl +276 -0
  53. data/support/ant/etc/junit-frames-xalan1.xsl +733 -0
  54. data/support/ant/etc/junit-frames.xsl +902 -0
  55. data/support/ant/etc/junit-noframes.xsl +478 -0
  56. data/support/ant/etc/log.xsl +203 -0
  57. data/support/ant/etc/maudit-frames.xsl +503 -0
  58. data/support/ant/etc/mmetrics-frames.xsl +1026 -0
  59. data/support/ant/etc/tagdiff.xsl +179 -0
  60. data/support/ant/fetch.xml +343 -0
  61. data/support/ant/get-m2.xml +121 -0
  62. data/support/ant/lib/README +3 -0
  63. data/support/ant/lib/ant-antlr.jar +0 -0
  64. data/support/ant/lib/ant-antlr.pom +76 -0
  65. data/support/ant/lib/ant-apache-bcel.jar +0 -0
  66. data/support/ant/lib/ant-apache-bcel.pom +72 -0
  67. data/support/ant/lib/ant-apache-bsf.jar +0 -0
  68. data/support/ant/lib/ant-apache-bsf.pom +75 -0
  69. data/support/ant/lib/ant-apache-log4j.jar +0 -0
  70. data/support/ant/lib/ant-apache-log4j.pom +70 -0
  71. data/support/ant/lib/ant-apache-oro.jar +0 -0
  72. data/support/ant/lib/ant-apache-oro.pom +75 -0
  73. data/support/ant/lib/ant-apache-regexp.jar +0 -0
  74. data/support/ant/lib/ant-apache-regexp.pom +71 -0
  75. data/support/ant/lib/ant-apache-resolver.jar +0 -0
  76. data/support/ant/lib/ant-apache-resolver.pom +70 -0
  77. data/support/ant/lib/ant-apache-xalan2.jar +0 -0
  78. data/support/ant/lib/ant-apache-xalan2.pom +95 -0
  79. data/support/ant/lib/ant-commons-logging.jar +0 -0
  80. data/support/ant/lib/ant-commons-logging.pom +71 -0
  81. data/support/ant/lib/ant-commons-net.jar +0 -0
  82. data/support/ant/lib/ant-commons-net.pom +76 -0
  83. data/support/ant/lib/ant-jai.jar +0 -0
  84. data/support/ant/lib/ant-jai.pom +85 -0
  85. data/support/ant/lib/ant-javamail.jar +0 -0
  86. data/support/ant/lib/ant-javamail.pom +79 -0
  87. data/support/ant/lib/ant-jdepend.jar +0 -0
  88. data/support/ant/lib/ant-jdepend.pom +73 -0
  89. data/support/ant/lib/ant-jmf.jar +0 -0
  90. data/support/ant/lib/ant-jmf.pom +66 -0
  91. data/support/ant/lib/ant-jsch.jar +0 -0
  92. data/support/ant/lib/ant-jsch.pom +75 -0
  93. data/support/ant/lib/ant-junit.jar +0 -0
  94. data/support/ant/lib/ant-junit.pom +101 -0
  95. data/support/ant/lib/ant-junit4.jar +0 -0
  96. data/support/ant/lib/ant-junit4.pom +71 -0
  97. data/support/ant/lib/ant-launcher.jar +0 -0
  98. data/support/ant/lib/ant-launcher.pom +58 -0
  99. data/support/ant/lib/ant-netrexx.jar +0 -0
  100. data/support/ant/lib/ant-netrexx.pom +99 -0
  101. data/support/ant/lib/ant-parent.pom +120 -0
  102. data/support/ant/lib/ant-swing.jar +0 -0
  103. data/support/ant/lib/ant-swing.pom +67 -0
  104. data/support/ant/lib/ant-testutil.jar +0 -0
  105. data/support/ant/lib/ant-testutil.pom +75 -0
  106. data/support/ant/lib/ant.jar +0 -0
  107. data/support/ant/lib/ant.pom +222 -0
  108. data/support/ant/lib/libraries.properties +65 -0
  109. data/test/data/files/rice-0.0.0.0-bin.tar.gz +0 -0
  110. data/test/data/svn/README.txt +5 -0
  111. data/test/data/svn/conf/authz +32 -0
  112. data/test/data/svn/conf/passwd +8 -0
  113. data/test/data/svn/conf/svnserve.conf +47 -0
  114. data/test/data/svn/db/current +1 -0
  115. data/test/data/svn/db/format +2 -0
  116. data/test/data/svn/db/fs-type +1 -0
  117. data/test/data/svn/db/fsfs.conf +37 -0
  118. data/test/data/svn/db/min-unpacked-rev +1 -0
  119. data/test/data/svn/db/rep-cache.db +0 -0
  120. data/test/data/svn/db/revprops/0/0 +5 -0
  121. data/test/data/svn/db/revprops/0/1 +13 -0
  122. data/test/data/svn/db/revs/0/0 +11 -0
  123. data/test/data/svn/db/revs/0/1 +0 -0
  124. data/test/data/svn/db/txn-current +1 -0
  125. data/test/data/svn/db/txn-current-lock +0 -0
  126. data/test/data/svn/db/uuid +1 -0
  127. data/test/data/svn/db/write-lock +0 -0
  128. data/test/data/svn/format +1 -0
  129. data/test/data/svn/hooks/post-commit.tmpl +50 -0
  130. data/test/data/svn/hooks/post-lock.tmpl +44 -0
  131. data/test/data/svn/hooks/post-revprop-change.tmpl +56 -0
  132. data/test/data/svn/hooks/post-unlock.tmpl +42 -0
  133. data/test/data/svn/hooks/pre-commit.tmpl +81 -0
  134. data/test/data/svn/hooks/pre-lock.tmpl +71 -0
  135. data/test/data/svn/hooks/pre-revprop-change.tmpl +66 -0
  136. data/test/data/svn/hooks/pre-unlock.tmpl +63 -0
  137. data/test/data/svn/hooks/start-commit.tmpl +65 -0
  138. data/test/data/svn/locks/db-logs.lock +3 -0
  139. data/test/data/svn/locks/db.lock +3 -0
  140. data/test/helper.rb +146 -0
  141. data/test/int_test_generate_sql.rb +58 -0
  142. data/test/test_archive.rb +35 -0
  143. data/test/test_generate_sql.rb +0 -0
  144. data/test/test_rice_release.rb +61 -0
  145. data/test/test_rice_release_generated_dataset.rb +12 -0
  146. data/test/test_source.rb +31 -0
  147. data/test/test_subversion.rb +20 -0
  148. metadata +298 -0
@@ -0,0 +1,335 @@
1
+ #! /bin/sh
2
+
3
+ # Licensed to the Apache Software Foundation (ASF) under one or more
4
+ # contributor license agreements. See the NOTICE file distributed with
5
+ # this work for additional information regarding copyright ownership.
6
+ # The ASF licenses this file to You under the Apache License, Version 2.0
7
+ # (the "License"); you may not use this file except in compliance with
8
+ # the License. You may obtain a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing, software
13
+ # distributed under the License is distributed on an "AS IS" BASIS,
14
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ # See the License for the specific language governing permissions and
16
+ # limitations under the License.
17
+
18
+ # Extract launch and ant arguments, (see details below).
19
+ ant_exec_args=
20
+ no_config=false
21
+ use_jikes_default=false
22
+ ant_exec_debug=false
23
+ show_help=false
24
+ for arg in "$@" ; do
25
+ if [ "$arg" = "--noconfig" ] ; then
26
+ no_config=true
27
+ elif [ "$arg" = "--usejikes" ] ; then
28
+ use_jikes_default=true
29
+ elif [ "$arg" = "--execdebug" ] ; then
30
+ ant_exec_debug=true
31
+ elif [ my"$arg" = my"--h" -o my"$arg" = my"--help" ] ; then
32
+ show_help=true
33
+ ant_exec_args="$ant_exec_args -h"
34
+ else
35
+ if [ my"$arg" = my"-h" -o my"$arg" = my"-help" ] ; then
36
+ show_help=true
37
+ fi
38
+ ant_exec_args="$ant_exec_args \"$arg\""
39
+ fi
40
+ done
41
+
42
+ # Source/default ant configuration
43
+ if $no_config ; then
44
+ rpm_mode=false
45
+ usejikes=$use_jikes_default
46
+ else
47
+ # load system-wide ant configuration (ONLY if ANT_HOME has NOT been set)
48
+ if [ -z "$ANT_HOME" -o "$ANT_HOME" = "/usr/share/ant" ]; then
49
+ if [ -f "/etc/ant.conf" ] ; then
50
+ . /etc/ant.conf
51
+ fi
52
+ fi
53
+
54
+ # load user ant configuration
55
+ if [ -f "$HOME/.ant/ant.conf" ] ; then
56
+ . $HOME/.ant/ant.conf
57
+ fi
58
+ if [ -f "$HOME/.antrc" ] ; then
59
+ . "$HOME/.antrc"
60
+ fi
61
+
62
+ # provide default configuration values
63
+ if [ -z "$rpm_mode" ] ; then
64
+ rpm_mode=false
65
+ fi
66
+ if [ -z "$usejikes" ] ; then
67
+ usejikes=$use_jikes_default
68
+ fi
69
+ fi
70
+
71
+ # Setup Java environment in rpm mode
72
+ if $rpm_mode ; then
73
+ if [ -f /usr/share/java-utils/java-functions ] ; then
74
+ . /usr/share/java-utils/java-functions
75
+ set_jvm
76
+ set_javacmd
77
+ fi
78
+ fi
79
+
80
+ # OS specific support. $var _must_ be set to either true or false.
81
+ cygwin=false;
82
+ darwin=false;
83
+ mingw=false;
84
+ case "`uname`" in
85
+ CYGWIN*) cygwin=true ;;
86
+ Darwin*) darwin=true
87
+ if [ -z "$JAVA_HOME" ] ; then
88
+ JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Home
89
+ fi
90
+ ;;
91
+ MINGW*) mingw=true ;;
92
+ esac
93
+
94
+ if [ -z "$ANT_HOME" -o ! -d "$ANT_HOME" ] ; then
95
+ ## resolve links - $0 may be a link to ant's home
96
+ PRG="$0"
97
+ progname=`basename "$0"`
98
+
99
+ # need this for relative symlinks
100
+ while [ -h "$PRG" ] ; do
101
+ ls=`ls -ld "$PRG"`
102
+ link=`expr "$ls" : '.*-> \(.*\)$'`
103
+ if expr "$link" : '/.*' > /dev/null; then
104
+ PRG="$link"
105
+ else
106
+ PRG=`dirname "$PRG"`"/$link"
107
+ fi
108
+ done
109
+
110
+ ANT_HOME=`dirname "$PRG"`/..
111
+
112
+ # make it fully qualified
113
+ ANT_HOME=`cd "$ANT_HOME" > /dev/null && pwd`
114
+ fi
115
+
116
+ # For Cygwin and Mingw, ensure paths are in UNIX format before
117
+ # anything is touched
118
+ if $cygwin ; then
119
+ [ -n "$ANT_HOME" ] &&
120
+ ANT_HOME=`cygpath --unix "$ANT_HOME"`
121
+ [ -n "$JAVA_HOME" ] &&
122
+ JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
123
+ fi
124
+ if $mingw ; then
125
+ [ -n "$ANT_HOME" ] &&
126
+ ANT_HOME="`(cd "$ANT_HOME"; pwd)`"
127
+ [ -n "$JAVA_HOME" ] &&
128
+ JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
129
+ fi
130
+
131
+ # set ANT_LIB location
132
+ ANT_LIB="${ANT_HOME}/lib"
133
+
134
+ if [ -z "$JAVACMD" ] ; then
135
+ if [ -n "$JAVA_HOME" ] ; then
136
+ # IBM's JDK on AIX uses strange locations for the executables
137
+ if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
138
+ JAVACMD="$JAVA_HOME/jre/sh/java"
139
+ elif [ -x "$JAVA_HOME/jre/bin/java" ] ; then
140
+ JAVACMD="$JAVA_HOME/jre/bin/java"
141
+ else
142
+ JAVACMD="$JAVA_HOME/bin/java"
143
+ fi
144
+ else
145
+ JAVACMD=`which java 2> /dev/null `
146
+ if [ -z "$JAVACMD" ] ; then
147
+ JAVACMD=java
148
+ fi
149
+ fi
150
+ fi
151
+
152
+ if [ ! -x "$JAVACMD" ] ; then
153
+ echo "Error: JAVA_HOME is not defined correctly."
154
+ echo " We cannot execute $JAVACMD"
155
+ exit 1
156
+ fi
157
+
158
+ # Build local classpath using just the launcher in non-rpm mode or
159
+ # use the Jpackage helper in rpm mode with basic and default jars
160
+ # specified in the ant.conf configuration. Because the launcher is
161
+ # used, libraries linked in ANT_HOME/lib will also be included, but this
162
+ # is discouraged as it is not java-version safe. A user should
163
+ # request optional jars and their dependencies via the OPT_JAR_LIST
164
+ # variable
165
+ if $rpm_mode && [ -x /usr/bin/build-classpath ] ; then
166
+ LOCALCLASSPATH="$(/usr/bin/build-classpath ant ant-launcher jaxp_parser_impl xml-commons-apis)"
167
+
168
+ # If no optional jars have been specified then build the default list
169
+ if [ -z "$OPT_JAR_LIST" ] ; then
170
+ for file in /etc/ant.d/*; do
171
+ if [ -f "$file" ]; then
172
+ case "$file" in
173
+ *~) ;;
174
+ *#*) ;;
175
+ *.rpmsave) ;;
176
+ *.rpmnew) ;;
177
+ *)
178
+ for dep in `cat "$file"`; do
179
+ case "$OPT_JAR_LIST" in
180
+ *"$dep"*) ;;
181
+ *) OPT_JAR_LIST="$OPT_JAR_LIST${OPT_JAR_LIST:+ }$dep"
182
+ esac
183
+ done
184
+ esac
185
+ fi
186
+ done
187
+ fi
188
+
189
+ # If the user requested to try to add some other jars to the classpath
190
+ if [ -n "$OPT_JAR_LIST" ] ; then
191
+ _OPTCLASSPATH="$(/usr/bin/build-classpath $OPT_JAR_LIST 2> /dev/null)"
192
+ if [ -n "$_OPTCLASSPATH" ] ; then
193
+ LOCALCLASSPATH="$LOCALCLASSPATH:$_OPTCLASSPATH"
194
+ fi
195
+ fi
196
+
197
+ # Explicitly add javac path to classpath, assume JAVA_HOME set
198
+ # properly in rpm mode
199
+ if [ -f "$JAVA_HOME/lib/tools.jar" ] ; then
200
+ LOCALCLASSPATH="$LOCALCLASSPATH:$JAVA_HOME/lib/tools.jar"
201
+ fi
202
+ if [ -f "$JAVA_HOME/lib/classes.zip" ] ; then
203
+ LOCALCLASSPATH="$LOCALCLASSPATH:$JAVA_HOME/lib/classes.zip"
204
+ fi
205
+
206
+ # if CLASSPATH_OVERRIDE env var is set, LOCALCLASSPATH will be
207
+ # user CLASSPATH first and ant-found jars after.
208
+ # In that case, the user CLASSPATH will override ant-found jars
209
+ #
210
+ # if CLASSPATH_OVERRIDE is not set, we'll have the normal behaviour
211
+ # with ant-found jars first and user CLASSPATH after
212
+ if [ -n "$CLASSPATH" ] ; then
213
+ # merge local and specified classpath
214
+ if [ -z "$LOCALCLASSPATH" ] ; then
215
+ LOCALCLASSPATH="$CLASSPATH"
216
+ elif [ -n "$CLASSPATH_OVERRIDE" ] ; then
217
+ LOCALCLASSPATH="$CLASSPATH:$LOCALCLASSPATH"
218
+ else
219
+ LOCALCLASSPATH="$LOCALCLASSPATH:$CLASSPATH"
220
+ fi
221
+
222
+ # remove class path from launcher -cp option
223
+ CLASSPATH=""
224
+ fi
225
+ else
226
+ # not using rpm_mode; use launcher to determine classpaths
227
+ if [ -z "$LOCALCLASSPATH" ] ; then
228
+ LOCALCLASSPATH=$ANT_LIB/ant-launcher.jar
229
+ else
230
+ LOCALCLASSPATH=$ANT_LIB/ant-launcher.jar:$LOCALCLASSPATH
231
+ fi
232
+ fi
233
+
234
+ if [ -n "$JAVA_HOME" ] ; then
235
+ # OSX hack to make Ant work with jikes
236
+ if $darwin ; then
237
+ OSXHACK="${JAVA_HOME}/../Classes"
238
+ if [ -d "${OSXHACK}" ] ; then
239
+ for i in "${OSXHACK}"/*.jar
240
+ do
241
+ JIKESPATH="$JIKESPATH:$i"
242
+ done
243
+ fi
244
+ fi
245
+ fi
246
+
247
+ # Allow Jikes support (off by default)
248
+ if $usejikes; then
249
+ ANT_OPTS="$ANT_OPTS -Dbuild.compiler=jikes"
250
+ fi
251
+
252
+ # For Cygwin, switch paths to appropriate format before running java
253
+ # For PATHs convert to unix format first, then to windows format to ensure
254
+ # both formats are supported. Probably this will fail on directories with ;
255
+ # in the name in the path. Let's assume that paths containing ; are more
256
+ # rare than windows style paths on cygwin.
257
+ if $cygwin; then
258
+ if [ "$OS" = "Windows_NT" ] && cygpath -m .>/dev/null 2>/dev/null ; then
259
+ format=mixed
260
+ else
261
+ format=windows
262
+ fi
263
+ [ -n "$ANT_HOME" ] && ANT_HOME=`cygpath --$format "$ANT_HOME"`
264
+ ANT_LIB=`cygpath --$format "$ANT_LIB"`
265
+ [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --$format "$JAVA_HOME"`
266
+ LCP_TEMP=`cygpath --path --unix "$LOCALCLASSPATH"`
267
+ LOCALCLASSPATH=`cygpath --path --$format "$LCP_TEMP"`
268
+ if [ -n "$CLASSPATH" ] ; then
269
+ CP_TEMP=`cygpath --path --unix "$CLASSPATH"`
270
+ CLASSPATH=`cygpath --path --$format "$CP_TEMP"`
271
+ fi
272
+ CYGHOME=`cygpath --$format "$HOME"`
273
+ fi
274
+
275
+ # Show script help if requested
276
+ if $show_help ; then
277
+ echo $0 '[script options] [options] [target [target2 [target3] ..]]'
278
+ echo 'Script Options:'
279
+ echo ' --help, --h print this message and ant help'
280
+ echo ' --noconfig suppress sourcing of /etc/ant.conf,'
281
+ echo ' $HOME/.ant/ant.conf, and $HOME/.antrc'
282
+ echo ' configuration files'
283
+ echo ' --usejikes enable use of jikes by default, unless'
284
+ echo ' set explicitly in configuration files'
285
+ echo ' --execdebug print ant exec line generated by this'
286
+ echo ' launch script'
287
+ echo ' '
288
+ fi
289
+ # add a second backslash to variables terminated by a backslash under cygwin
290
+ if $cygwin; then
291
+ case "$ANT_HOME" in
292
+ *\\ )
293
+ ANT_HOME="$ANT_HOME\\"
294
+ ;;
295
+ esac
296
+ case "$CYGHOME" in
297
+ *\\ )
298
+ CYGHOME="$CYGHOME\\"
299
+ ;;
300
+ esac
301
+ case "$JIKESPATH" in
302
+ *\\ )
303
+ JIKESPATH="$JIKESPATH\\"
304
+ ;;
305
+ esac
306
+ case "$LOCALCLASSPATH" in
307
+ *\\ )
308
+ LOCALCLASSPATH="$LOCALCLASSPATH\\"
309
+ ;;
310
+ esac
311
+ case "$CLASSPATH" in
312
+ *\\ )
313
+ CLASSPATH="$CLASSPATH\\"
314
+ ;;
315
+ esac
316
+ fi
317
+ # Execute ant using eval/exec to preserve spaces in paths,
318
+ # java options, and ant args
319
+ ant_sys_opts=
320
+ if [ -n "$CYGHOME" ]; then
321
+ if [ -n "$JIKESPATH" ]; then
322
+ ant_sys_opts="-Djikes.class.path=\"$JIKESPATH\" -Dcygwin.user.home=\"$CYGHOME\""
323
+ else
324
+ ant_sys_opts="-Dcygwin.user.home=\"$CYGHOME\""
325
+ fi
326
+ else
327
+ if [ -n "$JIKESPATH" ]; then
328
+ ant_sys_opts="-Djikes.class.path=\"$JIKESPATH\""
329
+ fi
330
+ fi
331
+ ant_exec_command="exec \"$JAVACMD\" $ANT_OPTS -classpath \"$LOCALCLASSPATH\" -Dant.home=\"$ANT_HOME\" -Dant.library.dir=\"$ANT_LIB\" $ant_sys_opts org.apache.tools.ant.launch.Launcher $ANT_ARGS -cp \"$CLASSPATH\""
332
+ if $ant_exec_debug ; then
333
+ echo $ant_exec_command $ant_exec_args
334
+ fi
335
+ eval $ant_exec_command "$ant_exec_args"
@@ -0,0 +1,218 @@
1
+ @echo off
2
+
3
+ REM Licensed to the Apache Software Foundation (ASF) under one or more
4
+ REM contributor license agreements. See the NOTICE file distributed with
5
+ REM this work for additional information regarding copyright ownership.
6
+ REM The ASF licenses this file to You under the Apache License, Version 2.0
7
+ REM (the "License"); you may not use this file except in compliance with
8
+ REM the License. You may obtain a copy of the License at
9
+ REM
10
+ REM http://www.apache.org/licenses/LICENSE-2.0
11
+ REM
12
+ REM Unless required by applicable law or agreed to in writing, software
13
+ REM distributed under the License is distributed on an "AS IS" BASIS,
14
+ REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ REM See the License for the specific language governing permissions and
16
+ REM limitations under the License.
17
+
18
+ REM This is an inordinately troublesome piece of code, particularly because it
19
+ REM tries to work on both Win9x and WinNT-based systems. If we could abandon '9x
20
+ REM support, things would be much easier, but sadly, it is not yet time.
21
+ REM Be cautious about editing this, and only add WinNT specific stuff in code that
22
+ REM only runs on WinNT.
23
+
24
+ if "%HOME%"=="" goto homeDrivePathPre
25
+ if exist "%HOME%\antrc_pre.bat" call "%HOME%\antrc_pre.bat"
26
+
27
+ :homeDrivePathPre
28
+ if "%HOMEDRIVE%%HOMEPATH%"=="" goto userProfilePre
29
+ if "%HOMEDRIVE%%HOMEPATH%"=="%HOME%" goto userProfilePre
30
+ if exist "%HOMEDRIVE%%HOMEPATH%\antrc_pre.bat" call "%HOMEDRIVE%%HOMEPATH%\antrc_pre.bat"
31
+
32
+ :userProfilePre
33
+ if "%USERPROFILE%"=="" goto alpha
34
+ if "%USERPROFILE%"=="%HOME%" goto alpha
35
+ if "%USERPROFILE%"=="%HOMEDRIVE%%HOMEPATH%" goto alpha
36
+ if exist "%USERPROFILE%\antrc_pre.bat" call "%USERPROFILE%\antrc_pre.bat"
37
+
38
+ :alpha
39
+
40
+ if "%OS%"=="Windows_NT" @setlocal
41
+ if "%OS%"=="WINNT" @setlocal
42
+
43
+ if "%ANT_HOME%"=="" goto setDefaultAntHome
44
+
45
+ :stripAntHome
46
+ if not _%ANT_HOME:~-1%==_\ goto checkClasspath
47
+ set ANT_HOME=%ANT_HOME:~0,-1%
48
+ goto stripAntHome
49
+
50
+ :setDefaultAntHome
51
+ rem %~dp0 is expanded pathname of the current script under NT
52
+ set ANT_HOME=%~dp0..
53
+
54
+ :checkClasspath
55
+ set _USE_CLASSPATH=yes
56
+ rem CLASSPATH must not be used if it is equal to ""
57
+ if "%CLASSPATH%"=="""" set _USE_CLASSPATH=no
58
+ if "%CLASSPATH%"=="" set _USE_CLASSPATH=no
59
+
60
+ rem Slurp the command line arguments. This loop allows for an unlimited number
61
+ rem of arguments (up to the command line limit, anyway).
62
+ set ANT_CMD_LINE_ARGS=
63
+ :setupArgs
64
+ if ""%1""=="""" goto doneStart
65
+ if ""%1""==""-noclasspath"" goto clearclasspath
66
+ set ANT_CMD_LINE_ARGS=%ANT_CMD_LINE_ARGS% %1
67
+ shift
68
+ goto setupArgs
69
+
70
+ rem here is there is a -noclasspath in the options
71
+ :clearclasspath
72
+ set _USE_CLASSPATH=no
73
+ shift
74
+ goto setupArgs
75
+
76
+ rem This label provides a place for the argument list loop to break out
77
+ rem and for NT handling to skip to.
78
+
79
+ :doneStart
80
+
81
+ if "%_USE_CLASSPATH%"=="no" goto findAntHome
82
+
83
+ :stripClasspath
84
+ if not _%CLASSPATH:~-1%==_\ goto findAntHome
85
+ set CLASSPATH=%CLASSPATH:~0,-1%
86
+ goto stripClasspath
87
+
88
+ :findAntHome
89
+ rem find ANT_HOME if it does not exist due to either an invalid value passed
90
+ rem by the user or the %0 problem on Windows 9x
91
+ if exist "%ANT_HOME%\lib\ant.jar" goto checkJava
92
+
93
+ rem check for ant in Program Files
94
+ if not exist "%ProgramFiles%\ant" goto checkSystemDrive
95
+ set ANT_HOME=%ProgramFiles%\ant
96
+ goto checkJava
97
+
98
+ :checkSystemDrive
99
+ rem check for ant in root directory of system drive
100
+ if not exist %SystemDrive%\ant\lib\ant.jar goto checkCDrive
101
+ set ANT_HOME=%SystemDrive%\ant
102
+ goto checkJava
103
+
104
+ :checkCDrive
105
+ rem check for ant in C:\ant for Win9X users
106
+ if not exist C:\ant\lib\ant.jar goto noAntHome
107
+ set ANT_HOME=C:\ant
108
+ goto checkJava
109
+
110
+ :noAntHome
111
+ echo ANT_HOME is set incorrectly or ant could not be located. Please set ANT_HOME.
112
+ goto end
113
+
114
+ :checkJava
115
+ set _JAVACMD=%JAVACMD%
116
+
117
+ if "%JAVA_HOME%" == "" goto noJavaHome
118
+ if not exist "%JAVA_HOME%\bin\java.exe" goto noJavaHome
119
+ if "%_JAVACMD%" == "" set _JAVACMD=%JAVA_HOME%\bin\java.exe
120
+ goto checkJikes
121
+
122
+ :noJavaHome
123
+ if "%_JAVACMD%" == "" set _JAVACMD=java.exe
124
+
125
+ :checkJikes
126
+ if not "%JIKESPATH%"=="" goto runAntWithJikes
127
+
128
+ :runAnt
129
+ if "%_USE_CLASSPATH%"=="no" goto runAntNoClasspath
130
+ :runAntWithClasspath
131
+ "%_JAVACMD%" %ANT_OPTS% -classpath "%ANT_HOME%\lib\ant-launcher.jar" "-Dant.home=%ANT_HOME%" org.apache.tools.ant.launch.Launcher %ANT_ARGS% -cp "%CLASSPATH%" %ANT_CMD_LINE_ARGS%
132
+ rem Check the error code of the Ant build
133
+ if not "%OS%"=="Windows_NT" goto onError
134
+ set ANT_ERROR=%ERRORLEVEL%
135
+ goto end
136
+
137
+ :runAntNoClasspath
138
+ "%_JAVACMD%" %ANT_OPTS% -classpath "%ANT_HOME%\lib\ant-launcher.jar" "-Dant.home=%ANT_HOME%" org.apache.tools.ant.launch.Launcher %ANT_ARGS% %ANT_CMD_LINE_ARGS%
139
+ rem Check the error code of the Ant build
140
+ if not "%OS%"=="Windows_NT" goto onError
141
+ set ANT_ERROR=%ERRORLEVEL%
142
+ goto end
143
+
144
+ :runAntWithJikes
145
+
146
+ if not _%JIKESPATH:~-1%==_\ goto checkJikesAndClasspath
147
+ set JIKESPATH=%JIKESPATH:~0,-1%
148
+ goto runAntWithJikes
149
+
150
+ :checkJikesAndClasspath
151
+
152
+ if "%_USE_CLASSPATH%"=="no" goto runAntWithJikesNoClasspath
153
+
154
+ :runAntWithJikesAndClasspath
155
+ "%_JAVACMD%" %ANT_OPTS% -classpath "%ANT_HOME%\lib\ant-launcher.jar" "-Dant.home=%ANT_HOME%" "-Djikes.class.path=%JIKESPATH%" org.apache.tools.ant.launch.Launcher %ANT_ARGS% -cp "%CLASSPATH%" %ANT_CMD_LINE_ARGS%
156
+ rem Check the error code of the Ant build
157
+ if not "%OS%"=="Windows_NT" goto onError
158
+ set ANT_ERROR=%ERRORLEVEL%
159
+ goto end
160
+
161
+ :runAntWithJikesNoClasspath
162
+ "%_JAVACMD%" %ANT_OPTS% -classpath "%ANT_HOME%\lib\ant-launcher.jar" "-Dant.home=%ANT_HOME%" "-Djikes.class.path=%JIKESPATH%" org.apache.tools.ant.launch.Launcher %ANT_ARGS% %ANT_CMD_LINE_ARGS%
163
+ rem Check the error code of the Ant build
164
+ if not "%OS%"=="Windows_NT" goto onError
165
+ set ANT_ERROR=%ERRORLEVEL%
166
+ goto end
167
+
168
+ :onError
169
+ rem Windows 9x way of checking the error code. It matches via brute force.
170
+ for %%i in (1 10 100) do set err%%i=
171
+ for %%i in (0 1 2) do if errorlevel %%i00 set err100=%%i
172
+ if %err100%==2 goto onError200
173
+ if %err100%==0 set err100=
174
+ for %%i in (0 1 2 3 4 5 6 7 8 9) do if errorlevel %err100%%%i0 set err10=%%i
175
+ if "%err100%"=="" if %err10%==0 set err10=
176
+ :onError1
177
+ for %%i in (0 1 2 3 4 5 6 7 8 9) do if errorlevel %err100%%err10%%%i set err1=%%i
178
+ goto onErrorEnd
179
+ :onError200
180
+ for %%i in (0 1 2 3 4 5) do if errorlevel 2%%i0 set err10=%%i
181
+ if err10==5 for %%i in (0 1 2 3 4 5) do if errorlevel 25%%i set err1=%%i
182
+ if not err10==5 goto onError1
183
+ :onErrorEnd
184
+ set ANT_ERROR=%err100%%err10%%err1%
185
+ for %%i in (1 10 100) do set err%%i=
186
+
187
+ :end
188
+ rem bug ID 32069: resetting an undefined env variable changes the errorlevel.
189
+ if not "%_JAVACMD%"=="" set _JAVACMD=
190
+ if not "%_ANT_CMD_LINE_ARGS%"=="" set ANT_CMD_LINE_ARGS=
191
+
192
+ if "%ANT_ERROR%"=="0" goto mainEnd
193
+
194
+ goto omega
195
+
196
+ :mainEnd
197
+
198
+ rem If there were no errors, we run the post script.
199
+ if "%OS%"=="Windows_NT" @endlocal
200
+ if "%OS%"=="WINNT" @endlocal
201
+
202
+ if "%HOME%"=="" goto homeDrivePathPost
203
+ if exist "%HOME%\antrc_post.bat" call "%HOME%\antrc_post.bat"
204
+
205
+ :homeDrivePathPost
206
+ if "%HOMEDRIVE%%HOMEPATH%"=="" goto userProfilePost
207
+ if "%HOMEDRIVE%%HOMEPATH%"=="%HOME%" goto userProfilePost
208
+ if exist "%HOMEDRIVE%%HOMEPATH%\antrc_post.bat" call "%HOMEDRIVE%%HOMEPATH%\antrc_post.bat"
209
+
210
+ :userProfilePost
211
+ if "%USERPROFILE%"=="" goto omega
212
+ if "%USERPROFILE%"=="%HOME%" goto omega
213
+ if "%USERPROFILE%"=="%HOMEDRIVE%%HOMEPATH%" goto omega
214
+ if exist "%USERPROFILE%\antrc_post.bat" call "%USERPROFILE%\antrc_post.bat"
215
+
216
+ :omega
217
+
218
+ exit /b %ANT_ERROR%