|
1 | 1 | <?xml version="1.0"?> |
2 | | -<project name="XLT" default="all" basedir="." xmlns:xceptance="antlib:com.xceptance.ant" xmlns:artifact="antlib:org.apache.maven.artifact.ant"> |
| 2 | +<project name="XLT" default="all" basedir="." xmlns:xceptance="antlib:com.xceptance.ant" xmlns:resolver="antlib:org.apache.maven.resolver.ant"> |
3 | 3 |
|
4 | 4 | <property file="build.properties" /> |
5 | 5 | <property environment="env" /> |
|
42 | 42 | </scriptdef> |
43 | 43 |
|
44 | 44 | <target name="init.mvn" unless="init.mvn.run"> |
45 | | - <path id="maven-ant-tasks.classpath" path="${lib-build.dir}/maven-ant-tasks-2.1.3.jar" /> |
46 | | - <typedef resource="org/apache/maven/artifact/ant/antlib.xml" uri="antlib:org.apache.maven.artifact.ant" classpathref="maven-ant-tasks.classpath" /> |
| 45 | + <path id="maven-resolver-ant-tasks.classpath" path="${lib-build.dir}/maven-resolver-ant-tasks-1.2.0-uber.jar" /> |
| 46 | + <typedef resource="org/apache/maven/resolver/ant/antlib.xml" uri="antlib:org.apache.maven.resolver.ant" classpathref="maven-resolver-ant-tasks.classpath" /> |
47 | 47 |
|
48 | 48 | <dependset> |
49 | 49 | <srcfilelist dir="${basedir}"> |
|
55 | 55 | </targetfileset> |
56 | 56 | </dependset> |
57 | 57 |
|
58 | | - <artifact:pom id="xlt.pom" file="pom.xml" inheritAllProperties="false" /> |
| 58 | + <resolver:pom id="xlt.pom" file="pom.xml" /> |
59 | 59 |
|
60 | 60 | <property name="version" value="${xlt.pom.version}" /> |
61 | 61 | <property name="bin.dist.name" value="${project.name}-${version}" /> |
62 | 62 | <property name="jar.name" value="${project.name}-${version}.jar" /> |
63 | | - |
| 63 | + <property name="sourcejar.name" value="${project.name}-${version}-sources.jar" /> |
64 | 64 |
|
65 | 65 | <!-- Name for the generated API documentation file without the file extension --> |
66 | 66 | <property name="api.doc.file.name" value="${project.name}-${version}-javadoc" /> |
67 | 67 |
|
| 68 | + <!-- redefine default Maven repo to be used with https --> |
| 69 | + <resolver:remoterepos id="resolver.repositories"> |
| 70 | + <resolver:remoterepo url="https://repo1.maven.org/maven2/" /> |
| 71 | + </resolver:remoterepos> |
68 | 72 |
|
69 | | - <artifact:dependencies cacheDependencyRefs="true" scopes="compile" filesetId="deps.fileset" type="jar"> |
70 | | - <pom refid="xlt.pom" /> |
71 | | - </artifact:dependencies> |
72 | | - <artifact:dependencies scopes="provided" filesetId="provided.fileset"> |
73 | | - <pom refid="xlt.pom" /> |
74 | | - </artifact:dependencies> |
| 73 | + <resolver:dependencies id="depsFromPom" pomRef="xlt.pom" /> |
75 | 74 |
|
| 75 | + <resolver:resolve dependenciesref="depsFromPom" remotereposref="resolver.repositories"> |
| 76 | + <files refid="deps.fileset" scopes="compile" /> |
| 77 | + <files refid="provided.fileset" scopes="compile,provided" /> |
| 78 | + </resolver:resolve> |
76 | 79 |
|
77 | 80 | <condition property="need.copy.deps"> |
78 | 81 | <or> |
|
96 | 99 | <!-- the global classpath --> |
97 | 100 | <path id="classpath"> |
98 | 101 | <pathelement path="${classes.dir}" /> |
99 | | - <fileset refid="deps.fileset" /> |
100 | | - <fileset refid="provided.fileset" /> |
| 102 | + <resources refid="deps.fileset" /> |
| 103 | + <resources refid="provided.fileset" /> |
101 | 104 | <fileset dir="${lib-build.dir}"> |
102 | 105 | <include name="*.jar" /> |
103 | 106 | </fileset> |
|
147 | 150 | <mkdir dir="${lib.dir}" /> |
148 | 151 |
|
149 | 152 | <copy todir="${lib.dir}"> |
150 | | - <fileset refid="deps.fileset" /> |
| 153 | + <resources refid="deps.fileset" /> |
151 | 154 | <mapper type="flatten" /> |
152 | 155 | </copy> |
153 | 156 |
|
|
217 | 220 | </jar> |
218 | 221 | </target> |
219 | 222 |
|
| 223 | + <!-- Builds a JAR file from the sources. --> |
| 224 | + <target name="sourcejar" depends="init" description="Generates .jar file from the sources."> |
| 225 | + <jar jarfile="${build.dir}/${sourcejar.name}"> |
| 226 | + <zipfileset dir="${src.dir}/main/java" /> |
| 227 | + <zipfileset dir="${src.dir}/main/resources" /> |
| 228 | + </jar> |
| 229 | + </target> |
| 230 | + |
220 | 231 | <!-- Documentation --> |
221 | 232 | <target name="apidoc"> |
222 | 233 | <antcall target="doc" inheritrefs="true"> |
|
310 | 321 | </zipfileset> |
311 | 322 | </zip> |
312 | 323 | <jar destfile="${build.doc.dir}/${api.doc.file.name}.jar" basedir="${build.doc.dir}/apidoc/" /> |
313 | | - <zip zipfile="${dist.dir}/${bin.dist.name}.zip"> |
314 | 324 |
|
| 325 | + <zip zipfile="${dist.dir}/${bin.dist.name}.zip"> |
315 | 326 | <zipfileset dir="${basedir}" prefix="${bin.dist.name}"> |
316 | 327 | <include name="bin/**" /> |
317 | 328 | <exclude name="bin/**/*.sh" /> |
|
398 | 409 | <antcall target="release.task" inheritrefs="true" /> |
399 | 410 | </target> |
400 | 411 |
|
401 | | - <target name="release.task" depends="clean, dist, sigtest, fulltest"> |
| 412 | + <target name="release.task" depends="clean, sourcejar, dist, sigtest, fulltest"> |
402 | 413 | <mkdir dir="${release.dir}" /> |
403 | 414 |
|
404 | 415 | <copy todir="${release.dir}"> |
| 416 | + <fileset dir="${basedir}" includes="pom.xml" /> |
405 | 417 | <fileset dir="${dist.dir}" includes="*.zip *.sha256" /> |
406 | 418 | <fileset dir="${build.tools.dir}" includes="*.xpi update.rdf" /> |
407 | 419 | <fileset dir="${build.doc.dir}" includes="${api.doc.file.name}.???" /> |
408 | 420 | <fileset file="${build.dir}/${jar.name}" /> |
| 421 | + <fileset file="${build.dir}/${sourcejar.name}" /> |
409 | 422 | </copy> |
410 | 423 | <zip destfile="${release.dir}/xltdocs.zip"> |
411 | 424 | <zipfileset dir="${build.doc.dir}/xlt" includes="**/*" /> |
412 | 425 | </zip> |
413 | 426 |
|
414 | | - <antcall target="writepom" inheritrefs="true" /> |
415 | | - |
416 | 427 | </target> |
417 | 428 |
|
418 | 429 | <!-- Downloads the EC2 on-demand instance information as JS file from AWS. --> |
|
459 | 470 | </antcall> |
460 | 471 | </target> |
461 | 472 |
|
462 | | - |
463 | 473 | <!-- |
464 | 474 | ===================================== |
465 | 475 | = API signature check and creation. = |
|
478 | 488 | </antcall> |
479 | 489 | </target> |
480 | 490 |
|
481 | | - |
482 | 491 | <!-- |
483 | 492 | ================== |
484 | 493 | = Generic tasks. = |
|
499 | 508 | <target name="test" depends="compile"> |
500 | 509 | <ant antfile="${test.build.file}" target="test.${action}" inheritall="false" inheritrefs="false"> |
501 | 510 | <reference refid="classpath" /> |
502 | | - <reference refid="maven-ant-tasks.classpath" /> |
| 511 | + <reference refid="maven-resolver-ant-tasks.classpath" /> |
503 | 512 | <propertyset> |
504 | 513 | <propertyref name="build.doc.dir" /> |
505 | 514 | </propertyset> |
|
516 | 525 | </ant> |
517 | 526 | </target> |
518 | 527 |
|
519 | | - <!-- |
520 | | - ================================== |
521 | | - = POM generation and deployment. = |
522 | | - ================================== |
523 | | - --> |
524 | | - |
525 | | - <target name="check.pom.file" depends="init"> |
526 | | - <dependset> |
527 | | - <srcfileset dir="${basedir}"> |
528 | | - <include name="pom.xml" /> |
529 | | - </srcfileset> |
530 | | - <targetfileset dir="${release.dir}"> |
531 | | - <include name="pom.xml" /> |
532 | | - </targetfileset> |
533 | | - </dependset> |
534 | | - |
535 | | - <condition property="pom.exists"> |
536 | | - <available file="${release.dir}/pom.xml" type="file" /> |
537 | | - </condition> |
538 | | - </target> |
539 | | - |
540 | | - <target name="writepom" unless="pom.exists" depends="check.pom.file"> |
541 | | - <mkdir dir="${release.dir}" /> |
542 | | - <artifact:writepom pomRefId="xlt.pom" file="${release.dir}/pom.xml" /> |
543 | | - </target> |
544 | | - |
545 | 528 | <!-- |
546 | 529 | ================================== |
547 | 530 | = Timer-recorder extension. = |
|
0 commit comments