build.xml.bkup 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728
  1. <project name="c3p0" default="dist">
  2. <!-- ignore the CLASSPATH environment variable. force builds to specify classpaths -->
  3. <property name="build.sysclasspath" value="ignore" />
  4. <property file="private/build.properties" />
  5. <property file="build.properties" />
  6. <property file="version.properties" />
  7. <property name="c3p0.name" value="c3p0-${c3p0.version}" />
  8. <property name="bindist.name" value="${c3p0.name}.bin" />
  9. <property name="srcdist.name" value="${c3p0.name}.src" />
  10. <property name="src.dir" value="src" />
  11. <property name="empty.src.dir" value="${src.dir}/empty" />
  12. <property name="java.src.dir" value="${src.dir}/classes" />
  13. <property name="rsrc.src.dir" value="${src.dir}/resources" />
  14. <property name="codegen.src.dir" value="${src.dir}/codegen" />
  15. <property name="doc.src.dir" value="${src.dir}/doc" />
  16. <property name="docwebapp.src.dir" value="${src.dir}/docweb/docwebapp" />
  17. <property name="docwebear.src.dir" value="${src.dir}/docweb/docwebear" />
  18. <property name="static.dist.src" value="${src.dir}/dist-static" />
  19. <property name="relproj.dir" value="relproj" />
  20. <property name="relproj.dist.dir" value="${relproj.dir}/dist" />
  21. <property name="test.props.dir" value="test-properties" />
  22. <property name="test.logging.props.file" location="${test.props.dir}/logging.properties" />
  23. <property name="build.dir" value="build" />
  24. <property name="build.codegen.dir" value="${build.dir}/codegen" />
  25. <property name="build.classes.dir" value="${build.dir}/classes" />
  26. <property name="build.apidocs.dir" value="${build.dir}/apidocs" />
  27. <property name="build.docwebapp.dir" value="${build.dir}/docweb/docwebapp" />
  28. <property name="build.docwebear.dir" value="${build.dir}/docweb/docwebear" />
  29. <property name="build.testresults.dir" value="${build.dir}/testresults" />
  30. <property name="dbms.dir" value="dbms" />
  31. <property name="dbms.oracle.thin.antproj.dir" value="${dbms.dir}/oracle-thin" />
  32. <property name="dbms.oracle.thin.antproj.dist.dir" value="${dbms.oracle.thin.antproj.dir}/dist" />
  33. <property name="test.classes.dir" value="${build.dir}/testclasses" />
  34. <property name="dist.dir" value="dist" />
  35. <property name="license.header.file" value="src/legal.prepend" />
  36. <property name="build.jar.file" value="build/${c3p0.name}.jar" />
  37. <property name="open.dist" value="${dist.dir}/${bindist.name}" />
  38. <property name="open.dist.doc.dir" value="${open.dist}/doc" />
  39. <property name="open.dist.lib.dir" value="${open.dist}/lib" />
  40. <property name="docwebapp.war.file.name" value="docweb.war" />
  41. <property name="docwebapp.war.file" value="${build.docwebear.dir}/${docwebapp.war.file.name}" />
  42. <property name="docwebear.file" value="${build.dir}/c3p0-docweb.ear" />
  43. <!-- these properties should be set externally if desired -->
  44. <!-- we set them here only to keep classpaths valid -->
  45. <!-- when users do not set the path -->
  46. <property name="j2ee.jar.base.dir" value="${empty.src.dir}" />
  47. <property name="j2ee.jar.dir" value="${empty.src.dir}" />
  48. <!--
  49. <property name="log4j.jar.file" value="" />
  50. <property name="junit.jar.file" value="" />
  51. -->
  52. <!-- these properties should often be preempted in build.properties -->
  53. <property name="c3p0-build.debug" value="false" />
  54. <property name="c3p0-build.trace" value="5" />
  55. <property name="c3p0.target.version" value="1.3" />
  56. <path id="codegen-classpath">
  57. <pathelement location="${build.classes.dir}" />
  58. <pathelement path="${j2ee.classpath}" />
  59. <fileset dir="${j2ee.jar.base.dir}" includes="**/*.jar" />
  60. <fileset dir="${j2ee.jar.dir}" includes="*.jar" />
  61. </path>
  62. <property name="codegen.classpath" refid="codegen-classpath" />
  63. <path id="build-classpath">
  64. <pathelement location="${build.classes.dir}" />
  65. <pathelement path="${j2ee.classpath}" />
  66. <fileset dir="${j2ee.jar.base.dir}" includes="**/*.jar" />
  67. <fileset dir="${j2ee.jar.dir}" includes="*.jar" />
  68. </path>
  69. <patternset id="init-codegen-classes">
  70. <include name="com/mchange/v2/c3p0/codegen/**/*.java" />
  71. <include name="com/mchange/v2/codegen/**/*.java" />
  72. <include name="com/mchange/v2/log/*.java" />
  73. <include name="com/mchange/v2/cfg/*.java" />
  74. <include name="com/mchange/v2/io/IndentedWriter.java" />
  75. <include name="com/mchange/v1/util/StringTokenizerUtils.java" />
  76. <exclude name="**/bad/**" />
  77. <exclude name="**/old/**" />
  78. </patternset>
  79. <patternset id="dist-jar-classes">
  80. <!-- excludes stuff only used by the code generator and by tests-->
  81. <exclude name="com/mchange/v2/codegen/bean/*.java" />
  82. <exclude name="com/mchange/v2/codegen/*.java" />
  83. <exclude name="com/mchange/v2/debug/DebugGen.java" />
  84. <exclude name="com/mchange/v1/lang/ClassUtils.java" />
  85. <exclude name="com/mchange/v1/lang/GentleThread.java" />
  86. <exclude name="com/mchange/v1/lang/NullUtils.java" />
  87. <exclude name="com/mchange/v1/lang/Synchronizer.java" />
  88. <exclude name="com/mchange/v1/lang/TVLUtils.java" />
  89. <exclude name="com/mchange/v1/jvm/**" />
  90. <exclude name="com/mchange/v1/lang/holders/**" />
  91. <exclude name="com/mchange/v2/c3p0/codegen/**" />
  92. <exclude name="com/mchange/v2/c3p0/test/**" />
  93. <exclude name="**/junit/**" />
  94. <exclude name="**/*JUnitTestCase.*" />
  95. <exclude name="**/bad/**" />
  96. <exclude name="**/old/**" />
  97. </patternset>
  98. <patternset id="test-only-classes">
  99. <include name="com/mchange/v2/c3p0/test/**" />
  100. <include name="**/junit/**" />
  101. <include name="**/*JUnitTestCase.class" />
  102. </patternset>
  103. <path id="test-classpath">
  104. <pathelement location="${test.props.dir}" />
  105. <pathelement location="${build.jar.file}" />
  106. <pathelement location="${test.classes.dir}" />
  107. <pathelement path="${j2ee.classpath}" />
  108. <fileset dir="${j2ee.jar.base.dir}" includes="**/*.jar" />
  109. <fileset dir="${j2ee.jar.dir}" includes="*.jar" />
  110. <pathelement location="${test.jdbc.driver.jar.file}" />
  111. <pathelement location="${log4j.jar.file}" />
  112. </path>
  113. <target name="init">
  114. <tstamp>
  115. <!-- <format property="c3p0.timestamp" pattern="dd-MMMM-yyyy HH:mm:ss Z"/> -->
  116. <format property="c3p0.timestamp" pattern="dd-MMMM-yyyy HH:mm:ss"/>
  117. <!-- jdk 1.3 compatible -->
  118. </tstamp>
  119. <mkdir dir="${build.dir}" />
  120. <mkdir dir="${build.codegen.dir}" />
  121. <mkdir dir="${build.classes.dir}" />
  122. <mkdir dir="${build.apidocs.dir}" />
  123. <mkdir dir="${dist.dir}" />
  124. </target>
  125. <target name="clean" depends="dbms-oracle-thin-clean">
  126. <delete dir="${build.dir}" />
  127. <delete dir="${dist.dir}" />
  128. </target>
  129. <target name="relproj" depends="init">
  130. <ant dir="${relproj.dir}" target="dist" inheritAll="false" />
  131. </target>
  132. <target name="init-debuggen" depends="relproj">
  133. <uptodate property="up-to-date-debugs"
  134. srcfile="build.properties"
  135. targetfile="${build.codegen.dir}/com/mchange/Debug.java" />
  136. </target>
  137. <target name="debuggen" depends="init-debuggen" unless="up-to-date-debugs">
  138. <java classname="com.mchange.v2.debug.DebugGen" fork="true" dir=".">
  139. <sysproperty key="com.mchange.v2.log.MLog" value="com.mchange.v2.log.FallbackMLog" />
  140. <classpath>
  141. <fileset dir="${relproj.dist.dir}">
  142. <include name="*.jar" />
  143. </fileset>
  144. </classpath>
  145. <arg value="--packages=com.mchange" />
  146. <arg value="--codebase=src/classes" />
  147. <arg value="--outputbase=${build.codegen.dir}" />
  148. <arg value="--recursive" />
  149. <arg value="--debug=${c3p0-build.debug}" />
  150. <arg value="--trace=${c3p0-build.trace}" />
  151. </java>
  152. </target>
  153. <target name="subst">
  154. <copy todir="${build.codegen.dir}">
  155. <fileset dir="${java.src.dir}">
  156. <include name="**/subst/**" />
  157. </fileset>
  158. <filterchain>
  159. <replacetokens>
  160. <token key="c3p0.version" value="${c3p0.version}"/>
  161. <token key="c3p0.debug" value="${c3p0-build.debug}"/>
  162. <token key="c3p0.trace" value="${c3p0-build.trace}"/>
  163. <token key="c3p0.timestamp" value="${c3p0.timestamp}"/>
  164. <!-- NO LONGER USED THIS WAY junit test stuff only
  165. <token key="test.jdbc.drivers" value="${test.jdbc.drivers}" />
  166. <token key="test.jdbc.url" value="${test.jdbc.url}" />
  167. <token key="test.jdbc.user" value="${test.jdbc.user}" />
  168. <token key="test.jdbc.password" value="${test.jdbc.password}" />
  169. -->
  170. </replacetokens>
  171. </filterchain>
  172. </copy>
  173. </target>
  174. <target name="init-codegen" depends="debuggen,subst">
  175. <javac destdir="${build.classes.dir}"
  176. source="${c3p0.target.version}"
  177. target="${c3p0.target.version}"
  178. classpathref="codegen-classpath"
  179. debug="true">
  180. <src>
  181. <pathelement location="${build.codegen.dir}" />
  182. <pathelement location="${java.src.dir}" />
  183. </src>
  184. <patternset refid="init-codegen-classes" />
  185. </javac>
  186. <uptodate property="up-to-date-proxies"
  187. srcfile="${java.src.dir}/com/mchange/v2/c3p0/codegen/JdbcProxyGenerator.java"
  188. targetfile="${build.codegen.dir}/com/mchange/v2/c3p0/impl/NewProxyConnection.java" />
  189. </target>
  190. <target name="beangen" depends="init-codegen">
  191. <apply executable="java" dest="${build.codegen.dir}">
  192. <arg value="-Dcom.mchange.v2.log.MLog=com.mchange.v2.log.FallbackMLog" />
  193. <arg value="-classpath" />
  194. <arg path="${codegen.classpath}" />
  195. <arg value="com.mchange.v2.c3p0.codegen.BeangenDataSourceGenerator" />
  196. <srcfile />
  197. <targetfile />
  198. <fileset dir="${codegen.src.dir}" includes="**/*.beangen-xml">
  199. <exclude name="**/bad/**" />
  200. <exclude name="**/old/**" />
  201. <exclude name="private/**" />
  202. </fileset>
  203. <mapper type="glob" from="*.beangen-xml" to="*.java" />
  204. </apply>
  205. </target>
  206. <target name="newproxygen" depends="init-codegen" unless="up-to-date-proxies">
  207. <java classname="com.mchange.v2.c3p0.codegen.JdbcProxyGenerator" fork="true" dir=".">
  208. <sysproperty key="com.mchange.v2.log.MLog" value="com.mchange.v2.log.FallbackMLog" />
  209. <classpath refid="codegen-classpath" />
  210. <arg value="${build.codegen.dir}" />
  211. </java>
  212. </target>
  213. <target name="codegen" depends="beangen,newproxygen" />
  214. <target name="compile-common" depends="codegen">
  215. <javac destdir="${build.classes.dir}"
  216. source="${c3p0.target.version}"
  217. target="${c3p0.target.version}"
  218. classpathref="build-classpath"
  219. debug="on">
  220. <sourcepath>
  221. <pathelement location="${build.codegen.dir}" />
  222. <pathelement location="${java.src.dir}" />
  223. </sourcepath>
  224. <src>
  225. <pathelement location="${build.codegen.dir}" />
  226. <pathelement location="${java.src.dir}" />
  227. </src>
  228. <exclude name="**/junit/**" />
  229. <exclude name="**/*JUnitTestCase.*" />
  230. <exclude name="**/subst/**" />
  231. <exclude name="com/mchange/v2/log/log4j/**" />
  232. </javac>
  233. </target>
  234. <target name="compile-subst" depends="codegen">
  235. <javac destdir="${build.classes.dir}"
  236. source="${c3p0.target.version}"
  237. target="${c3p0.target.version}"
  238. classpathref="build-classpath"
  239. debug="on">
  240. <sourcepath>
  241. <pathelement location="${build.codegen.dir}" />
  242. </sourcepath>
  243. <src>
  244. <pathelement location="${build.codegen.dir}" />
  245. </src>
  246. <include name="**/subst/**" />
  247. </javac>
  248. </target>
  249. <target name="compile-log4j" depends="init" if="log4j.jar.file">
  250. <javac destdir="${build.classes.dir}"
  251. source="${c3p0.target.version}"
  252. target="${c3p0.target.version}"
  253. debug="on">
  254. <classpath>
  255. <path refid="build-classpath" />
  256. <pathelement location="${log4j.jar.file}" />
  257. </classpath>
  258. <sourcepath>
  259. <pathelement location="${build.codegen.dir}" />
  260. <pathelement location="${java.src.dir}" />
  261. </sourcepath>
  262. <src>
  263. <pathelement location="${build.codegen.dir}" />
  264. <pathelement location="${java.src.dir}" />
  265. </src>
  266. <include name="com/mchange/v2/log/log4j/**" />
  267. </javac>
  268. </target>
  269. <target name="compile-junit" depends="init" if="junit.jar.file">
  270. <javac destdir="${build.classes.dir}"
  271. source="${c3p0.target.version}"
  272. target="${c3p0.target.version}"
  273. debug="on">
  274. <classpath>
  275. <path refid="build-classpath" />
  276. <pathelement path="${junit.jar.file}" />
  277. </classpath>
  278. <sourcepath>
  279. <pathelement location="${build.codegen.dir}" />
  280. <pathelement location="${java.src.dir}" />
  281. </sourcepath>
  282. <src>
  283. <pathelement location="${build.codegen.dir}" />
  284. <pathelement location="${java.src.dir}" />
  285. </src>
  286. <include name="**/junit/**" />
  287. <include name="**/*JUnitTestCase.*" />
  288. </javac>
  289. </target>
  290. <target name="compile" depends="codegen,compile-common,compile-subst,compile-log4j,compile-junit">
  291. </target>
  292. <target name="jar" depends="compile">
  293. <jar destfile="${build.jar.file}">
  294. <manifest>
  295. <attribute name="Extension-Name" value="com.mchange.v2.c3p0" />
  296. <attribute name="Specification-Vendor" value="Machinery For Change, Inc." />
  297. <attribute name="Specification-Version" value="1.0" />
  298. <attribute name="Implementation-Vendor-Id" value="com.mchange" />
  299. <attribute name="Implementation-Vendor" value="Machinery For Change, Inc." />
  300. <attribute name="Implementation-Version" value="${c3p0.version}" />
  301. </manifest>
  302. <fileset dir="${build.classes.dir}">
  303. <patternset refid="dist-jar-classes"/>
  304. </fileset>
  305. <fileset dir="${rsrc.src.dir}" />
  306. </jar>
  307. </target>
  308. <target name="dbms-oracle-thin-ant">
  309. <ant dir="${dbms.oracle.thin.antproj.dir}" target="${subproject.target}" inheritAll="false">
  310. <property name="c3p0.version" value="${c3p0.version}" />
  311. <property name="c3p0.jar.file" location="${build.jar.file}" />
  312. <property name="oracle-thin.jdbc.jar.file" value="${oracle-thin.jdbc.jar.file}" />
  313. </ant>
  314. </target>
  315. <target name="dbms-oracle-thin-clean">
  316. <antcall target="dbms-oracle-thin-ant">
  317. <param name="subproject.target" value="clean" />
  318. </antcall>
  319. </target>
  320. <target name="dbms-oracle-thin" depends="jar" if="oracle-thin.jdbc.jar.file">
  321. <echo message="oracle-thin.jdbc.jar.file: ${oracle-thin.jdbc.jar.file}" />
  322. <antcall target="dbms-oracle-thin-ant">
  323. <param name="subproject.target" value="dist" />
  324. </antcall>
  325. </target>
  326. <target name="test-init" depends="jar">
  327. <mkdir dir="${test.classes.dir}" />
  328. <copy toDir="${test.classes.dir}">
  329. <fileset dir="${build.classes.dir}">
  330. <patternset refid="test-only-classes"/>
  331. </fileset>
  332. </copy>
  333. <property name="testcp" refid="test-classpath" />
  334. <echo message="test-classpath: ${testcp}" />
  335. </target>
  336. <target name="stats-test" depends="test-init">
  337. <java
  338. classname="com.mchange.v2.c3p0.test.StatsTest"
  339. classpathref="test-classpath"
  340. fork="true">
  341. <sysproperty key="jdbc.drivers" value="${test.jdbc.drivers}" />
  342. <sysproperty key="java.util.logging.config.file" value="${test.logging.props.file}" />
  343. <syspropertyset>
  344. <propertyref builtin="commandline" />
  345. </syspropertyset>
  346. <!--
  347. <jvmarg value="-ea" />
  348. <sysproperty key="com.sun.management.jmxremote.port" value="38383" />
  349. <sysproperty key="com.sun.management.jmxremote.authenticate" value="false" />
  350. <sysproperty key="com.sun.management.jmxremote.ssl" value="false" />
  351. -->
  352. <!-- <jvmarg value="-Xrunhprof:file=/tmp/java.hprof,doe=y,format=b" /> -->
  353. <!-- <jvmarg value="-verbose:class" /> -->
  354. <arg value="${test.jdbc.url}" />
  355. <arg value="${test.jdbc.user}" />
  356. <arg value="${test.jdbc.password}" />
  357. </java>
  358. </target>
  359. <target name="proxywrapper-test" depends="test-init">
  360. <java
  361. classname="com.mchange.v2.c3p0.test.ProxyWrappersTest"
  362. classpathref="test-classpath"
  363. fork="true">
  364. <sysproperty key="jdbc.drivers" value="${test.jdbc.drivers}" />
  365. <sysproperty key="java.util.logging.config.file" value="${test.logging.props.file}" />
  366. <syspropertyset>
  367. <propertyref builtin="commandline" />
  368. </syspropertyset>
  369. <!-- <jvmarg value="-Xrunhprof:file=/tmp/java.hprof,doe=y,format=b" /> -->
  370. <!-- <jvmarg value="-verbose:class" /> -->
  371. <arg value="${test.jdbc.url}" />
  372. <arg value="${test.jdbc.user}" />
  373. <arg value="${test.jdbc.password}" />
  374. </java>
  375. </target>
  376. <target name="benchmark-test" depends="test-init">
  377. <java
  378. classname="com.mchange.v2.c3p0.test.C3P0BenchmarkApp"
  379. classpathref="test-classpath"
  380. fork="true">
  381. <!-- <jvmarg value="-Xrunhprof:cpu=times,file=/tmp/java.hprof,doe=y,format=a" /> -->
  382. <!-- <jvmarg value="-server" /> -->
  383. <!-- <jvmarg value="-Xprof" /> -->
  384. <!-- <jvmarg value="-verbose:class" /> -->
  385. <sysproperty key="java.util.logging.config.file" value="${test.logging.props.file}" />
  386. <jvmarg value="-ea" />
  387. <sysproperty key="com.sun.management.jmxremote.port" value="38383" />
  388. <sysproperty key="com.sun.management.jmxremote.authenticate" value="false" />
  389. <sysproperty key="com.sun.management.jmxremote.ssl" value="false" />
  390. <syspropertyset>
  391. <propertyref builtin="commandline" />
  392. </syspropertyset>
  393. <!--
  394. <sysproperty key="jdbc.drivers" value="${test.jdbc.drivers}" />
  395. <arg value="${test.jdbc.url}" />
  396. <arg value="${test.jdbc.user}" />
  397. <arg value="${test.jdbc.password}" />
  398. -->
  399. </java>
  400. </target>
  401. <target name="rco-test" depends="test-init">
  402. <java
  403. classname="com.mchange.v2.c3p0.test.RawConnectionOpTest"
  404. classpathref="test-classpath"
  405. fork="true">
  406. <!-- <jvmarg value="-Xrunhprof:cpu=times,file=/tmp/java.hprof,doe=y,format=a" /> -->
  407. <!-- <jvmarg value="-Xprof" /> -->
  408. <sysproperty key="jdbc.drivers" value="${test.jdbc.drivers}" />
  409. <sysproperty key="java.util.logging.config.file" value="${test.logging.props.file}" />
  410. <syspropertyset>
  411. <propertyref builtin="commandline" />
  412. </syspropertyset>
  413. <!--
  414. <jvmarg value="-ea" />
  415. <sysproperty key="com.sun.management.jmxremote.port" value="38383" />
  416. <sysproperty key="com.sun.management.jmxremote.authenticate" value="false" />
  417. <sysproperty key="com.sun.management.jmxremote.ssl" value="false" />
  418. -->
  419. <arg value="${test.jdbc.url}" />
  420. <arg value="${test.jdbc.user}" />
  421. <arg value="${test.jdbc.password}" />
  422. </java>
  423. </target>
  424. <target name="load-test" depends="test-init">
  425. <java
  426. classname="com.mchange.v2.c3p0.test.LoadPoolBackedDataSource"
  427. classpathref="test-classpath"
  428. fork="true">
  429. <sysproperty key="jdbc.drivers" value="${test.jdbc.drivers}" />
  430. <sysproperty key="java.util.logging.config.file" value="${test.logging.props.file}" />
  431. <syspropertyset>
  432. <propertyref builtin="commandline" />
  433. </syspropertyset>
  434. <!--
  435. <jvmarg value="-ea" />
  436. <sysproperty key="com.sun.management.jmxremote.port" value="38383" />
  437. <sysproperty key="com.sun.management.jmxremote.authenticate" value="false" />
  438. <sysproperty key="com.sun.management.jmxremote.ssl" value="false" />
  439. -->
  440. <arg value="${test.jdbc.url}" />
  441. <arg value="${test.jdbc.user}" />
  442. <arg value="${test.jdbc.password}" />
  443. </java>
  444. </target>
  445. <target name="psload-test" depends="test-init">
  446. <java
  447. classname="com.mchange.v2.c3p0.test.PSLoadPoolBackedDataSource"
  448. classpathref="test-classpath"
  449. fork="true">
  450. <sysproperty key="jdbc.drivers" value="${test.jdbc.drivers}" />
  451. <sysproperty key="java.util.logging.config.file" value="${test.logging.props.file}" />
  452. <syspropertyset>
  453. <propertyref builtin="commandline" />
  454. </syspropertyset>
  455. <!--
  456. <jvmarg value="-ea" />
  457. <sysproperty key="com.sun.management.jmxremote.port" value="38383" />
  458. <sysproperty key="com.sun.management.jmxremote.authenticate" value="false" />
  459. <sysproperty key="com.sun.management.jmxremote.ssl" value="false" />
  460. -->
  461. <arg value="${test.jdbc.url}" />
  462. <arg value="${test.jdbc.user}" />
  463. <arg value="${test.jdbc.password}" />
  464. </java>
  465. </target>
  466. <target name="dispersion-test" depends="test-init">
  467. <java
  468. classname="com.mchange.v2.c3p0.test.ConnectionDispersionTest"
  469. classpathref="test-classpath"
  470. fork="true">
  471. <sysproperty key="jdbc.drivers" value="${test.jdbc.drivers}" />
  472. <sysproperty key="java.util.logging.config.file" value="${test.logging.props.file}" />
  473. <syspropertyset>
  474. <propertyref builtin="commandline" />
  475. </syspropertyset>
  476. <arg value="${test.jdbc.url}" />
  477. <arg value="${test.jdbc.user}" />
  478. <arg value="${test.jdbc.password}" />
  479. </java>
  480. </target>
  481. <target name="onethreadrepeat-test" depends="test-init">
  482. <java
  483. classname="com.mchange.v2.c3p0.test.OneThreadRepeatedInsertOrQueryTest"
  484. classpathref="test-classpath"
  485. fork="true">
  486. <sysproperty key="jdbc.drivers" value="${test.jdbc.drivers}" />
  487. <sysproperty key="java.util.logging.config.file" value="${test.logging.props.file}" />
  488. <syspropertyset>
  489. <propertyref builtin="commandline" />
  490. </syspropertyset>
  491. <arg value="${test.jdbc.url}" />
  492. <arg value="${test.jdbc.user}" />
  493. <arg value="${test.jdbc.password}" />
  494. </java>
  495. </target>
  496. <target name="refser-test" depends="test-init">
  497. <java
  498. classname="com.mchange.v2.c3p0.test.TestRefSerStuff"
  499. classpathref="test-classpath"
  500. fork="true">
  501. <sysproperty key="jdbc.drivers" value="${test.jdbc.drivers}" />
  502. <sysproperty key="java.util.logging.config.file" value="${test.logging.props.file}" />
  503. <syspropertyset>
  504. <propertyref builtin="commandline" />
  505. </syspropertyset>
  506. <arg value="${test.jdbc.url}" />
  507. <arg value="${test.jdbc.user}" />
  508. <arg value="${test.jdbc.password}" />
  509. </java>
  510. </target>
  511. <target name="junit-tests" depends="test-init" if="junit.jar.file">
  512. <mkdir dir="${build.testresults.dir}" />
  513. <junit printsummary="true" showoutput="true" haltonfailure="true">
  514. <classpath refid="test-classpath" />
  515. <formatter type="plain"/>
  516. <sysproperty key="jdbc.drivers" value="${test.jdbc.drivers}" />
  517. <sysproperty key="c3p0.test.jdbc.url" value="${test.jdbc.url}" />
  518. <sysproperty key="c3p0.test.jdbc.user" value="${test.jdbc.user}" />
  519. <sysproperty key="c3p0.test.jdbc.password" value="${test.jdbc.password}" />
  520. <syspropertyset>
  521. <propertyref builtin="commandline" />
  522. </syspropertyset>
  523. <batchtest fork="yes" toDir="${build.testresults.dir}">
  524. <fileset dir="${build.classes.dir}">
  525. <include name="**/*JUnitTestCase.class"/>
  526. </fileset>
  527. </batchtest>
  528. </junit>
  529. <!--
  530. <junit printsummary="withOutAndErr" >
  531. <test name="com.mchange.v2.c3p0.test.junit.MiscellaneousTopLevelJUnitTestCase"/>
  532. <classpath refid="test-classpath" />
  533. <formatter type="plain"/>
  534. </junit>
  535. -->
  536. </target>
  537. <target name="javadocs" depends="init">
  538. <javadoc packagenames="com.mchange.v2.c3p0"
  539. sourcepath="${java.src.dir}"
  540. destdir="${build.apidocs.dir}"
  541. classpathref="build-classpath"
  542. windowtitle="${c3p0.name} API Documentation"
  543. />
  544. </target>
  545. <target name="basic-open-dist" depends="jar, javadocs">
  546. <copy toDir="${open.dist}">
  547. <fileset dir="${static.dist.src}">
  548. <exclude name="*~" />
  549. <exclude name="examples/*.class" />
  550. <exclude name="**/old/**" />
  551. <exclude name="**/bad/**" />
  552. <exclude name="**/private/**" />
  553. </fileset>
  554. </copy>
  555. <mkdir dir="${open.dist.doc.dir}/apidocs" />
  556. <copy toDir="${open.dist.doc.dir}">
  557. <fileset dir="${doc.src.dir}" excludes="*.png"/>
  558. <filterchain>
  559. <replacetokens>
  560. <token key="c3p0.version" value="${c3p0.version}"/>
  561. </replacetokens>
  562. </filterchain>
  563. </copy>
  564. <copy toDir="${open.dist.doc.dir}">
  565. <fileset dir="${doc.src.dir}" includes="*.png"/>
  566. </copy>
  567. <copy toDir="${open.dist.doc.dir}/apidocs">
  568. <fileset dir="${build.apidocs.dir}" />
  569. </copy>
  570. <copy file="${build.jar.file}" toDir="${open.dist.lib.dir}" />
  571. </target>
  572. <target name="docwebapp" depends="basic-open-dist">
  573. <mkdir dir="${build.docwebapp.dir}" />
  574. <copy toDir="${build.docwebapp.dir}">
  575. <fileset dir="${docwebapp.src.dir}"/>
  576. <filterchain>
  577. <replacetokens>
  578. <token key="virtual.host" value="${docwebapp.virtual.host}"/>
  579. </replacetokens>
  580. </filterchain>
  581. </copy>
  582. </target>
  583. <target name="docwebear" depends="docwebapp">
  584. <mkdir dir="${build.docwebear.dir}" />
  585. <copy toDir="${build.docwebear.dir}">
  586. <fileset dir="${docwebear.src.dir}"/>
  587. <filterchain>
  588. <replacetokens>
  589. <token key="web.uri" value="${docwebapp.war.file.name}"/>
  590. <token key="context.root" value="${docwebapp.context.root}"/>
  591. </replacetokens>
  592. </filterchain>
  593. </copy>
  594. <jar destfile="${docwebapp.war.file}">
  595. <zipfileset dir="${build.docwebapp.dir}" />
  596. <zipfileset dir="${open.dist.doc.dir}" />
  597. </jar>
  598. <jar destfile="${docwebear.file}">
  599. <zipfileset dir="${build.docwebear.dir}" />
  600. </jar>
  601. </target>
  602. <target name="docwebear-deploy" depends="docwebear">
  603. <exec executable="scp">
  604. <arg line="${docwebear.file} ${docwebear.deploy.user}@${docwebear.deploy.host}:${docwebear.deploy.path}" />
  605. </exec>
  606. </target>
  607. <target name="oracle-thin-open-dist" depends="basic-open-dist, dbms-oracle-thin" if="oracle-thin.jdbc.jar.file">
  608. <copy toDir="${open.dist}">
  609. <fileset dir="${dbms.oracle.thin.antproj.dist.dir}" />
  610. </copy>
  611. </target>
  612. <target name="open-dist" depends="basic-open-dist, oracle-thin-open-dist" />
  613. <target name="zip-dist" depends="open-dist">
  614. <zip destfile="${dist.dir}/${bindist.name}.zip">
  615. <zipfileset dir="${open.dist}" prefix="${c3p0.name}"/>
  616. </zip>
  617. </target>
  618. <target name="tar-dist" depends="open-dist">
  619. <tar destfile="${dist.dir}/${bindist.name}.tar">
  620. <tarfileset dir="${open.dist}" prefix="${c3p0.name}"/>
  621. </tar>
  622. </target>
  623. <target name="tgz-dist" depends="tar-dist">
  624. <gzip zipfile="${dist.dir}/${bindist.name}.tgz" src="${dist.dir}/${bindist.name}.tar" />
  625. </target>
  626. <target name="bindist" depends="tgz-dist, zip-dist" />
  627. <target name="dist" depends="bindist" />
  628. <target name="srcdist" depends="init">
  629. <zip destfile="${dist.dir}/${srcdist.name}.zip">
  630. <zipfileset dir="." prefix="${srcdist.name}">
  631. <exclude name="${build.dir}/**"/>
  632. <exclude name="${dist.dir}/**"/>
  633. <exclude name="**/*.class"/>
  634. <exclude name="**/old/**"/>
  635. <exclude name="**/bad/**"/>
  636. <exclude name="**/private/**"/>
  637. </zipfileset>
  638. </zip>
  639. <tar destfile="${dist.dir}/${srcdist.name}.tar">
  640. <tarfileset dir="." prefix="${srcdist.name}">
  641. <exclude name="${build.dir}/**"/>
  642. <exclude name="${dist.dir}/**"/>
  643. <exclude name="**/*.class"/>
  644. <exclude name="**/old/**"/>
  645. <exclude name="**/bad/**"/>
  646. <exclude name="**/private/**"/>
  647. </tarfileset>
  648. </tar>
  649. <gzip zipfile="${dist.dir}/${srcdist.name}.tgz" src="${dist.dir}/${srcdist.name}.tar" />
  650. </target>
  651. <target name="all" depends="dist,srcdist" />
  652. </project>