| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <project default="java:jar" |
| xmlns:ant="jelly:ant" |
| xmlns:j="jelly:core" |
| xmlns:util="jelly:util"> |
| |
| <preGoal name="xdoc:jelly-transform"> |
| <attainGoal name="html2xdoc"/> |
| </preGoal> |
| |
| <postGoal name="java:compile"> |
| |
| <copy todir="${maven.build.dir}/classes/"> |
| <fileset dir="${pom.build.sourceDirectory}" |
| excludes="**/*.java,**/*.html"/> |
| </copy> |
| |
| <copy todir="${maven.build.dir}/classes/org/apache/commons/validator/resources/"> |
| <fileset dir="${basedir}/conf/share" |
| includes="validator*.dtd"/> |
| </copy> |
| |
| <copy todir="${maven.build.dir}/classes/"> |
| <fileset dir="src/javascript" |
| includes="**/*.js"/> |
| </copy> |
| </postGoal> |
| |
| <preGoal name="jar:jar"> |
| <!-- Use Dojo/Rhino to create compressed JavaScript files --> |
| <ant:available property="dojoPresent" type="file" file="${dojo_custom_rhino.jar}"/> |
| <j:if test="${dojoPresent}"> |
| <attainGoal name="dojo.compress.files"/> |
| </j:if> |
| </preGoal> |
| |
| <!-- ================================================================== --> |
| <!-- Copy into the binary distribution --> |
| <!-- ================================================================== --> |
| <postGoal name="dist:prepare-bin-filesystem"> |
| |
| <!-- Copy the NOTICE --> |
| <copy todir="${maven.dist.bin.assembly.dir}"> |
| <fileset file='${basedir}/NOTICE.txt'/> |
| <fileset file="${basedir}/RELEASE-NOTES.txt"/> |
| </copy> |
| |
| <!-- Create Single file of static JavaScript --> |
| <ant:concat destfile="${maven.dist.bin.assembly.dir}/${maven.final.name}.js"> |
| <fileset dir="${basedir}/src/javascript/org/apache/commons/validator/javascript" includes="*.js"/> |
| </ant:concat> |
| |
| <!-- Use Dojo/Rhino to create single compressed JavaScript file --> |
| <ant:available property="dojoPresent" type="file" file="${dojo_custom_rhino.jar}"/> |
| <j:if test="${dojoPresent}"> |
| <attainGoal name="dojo.compress.single"/> |
| </j:if> |
| |
| </postGoal> |
| |
| <!-- ================================================================== --> |
| <!-- Uses Dojo/Rhino to created compressed JavaScript files --> |
| <!-- 1) Download Dojo/Rhino jar from: --> |
| <!-- http://dojotoolkit.org/docs/compressor_system.html --> |
| <!-- 2) set dojo_custom_rhino.jar in build.properties to jar location --> |
| <!-- ================================================================== --> |
| <goal name="dojo.compress.single"> |
| <ant:java jar="${dojo_custom_rhino.jar}" fork="true" |
| output="${maven.dist.bin.assembly.dir}/${maven.final.name}-compress.js"> |
| <ant:arg value="-c"/> |
| <ant:arg value="${maven.dist.bin.assembly.dir}/${maven.final.name}.js"/> |
| </ant:java> |
| </goal> |
| |
| <goal name="dojo.compress.files"> |
| <j:set var="scriptDir" value="${maven.build.dir}/classes/org/apache/commons/validator/javascript" /> |
| <util:tokenize var="scriptFiles" delim=",">${validator.script.files}</util:tokenize> |
| <j:forEach items="${scriptFiles}" var="scriptFile"> |
| <ant:java jar="${dojo_custom_rhino.jar}" fork="true" |
| output="${scriptDir}/${scriptFile}-compress.js"> |
| <ant:arg value="-c"/> |
| <ant:arg value="${scriptDir}/${scriptFile}.js"/> |
| </ant:java> |
| </j:forEach> |
| </goal> |
| |
| <!-- ================================================================== --> |
| <!-- Copy into the source distribution --> |
| <!-- ================================================================== --> |
| <postGoal name="dist:prepare-src-filesystem"> |
| |
| <!-- Copy the NOTICE --> |
| <copy todir="${maven.dist.src.assembly.dir}"> |
| <fileset file='${basedir}/NOTICE.txt'/> |
| <fileset file="${basedir}/RELEASE-NOTES.txt"/> |
| <fileset file="${basedir}/build.properties.sample"/> |
| </copy> |
| |
| <!-- Copy xdoc files --> |
| <copy todir="${maven.dist.src.assembly.dir}/xdocs"> |
| <fileset dir="./xdocs"/> |
| </copy> |
| |
| <!-- Copy etc files --> |
| <copy todir="${maven.dist.src.assembly.dir}/etc"> |
| <fileset dir="./etc"> |
| <include name="*.bat"/> |
| <include name="*.sh"/> |
| </fileset> |
| </copy> |
| |
| <!-- Copy configuration files --> |
| <copy todir="${maven.dist.src.assembly.dir}/conf/share"> |
| <fileset dir="./conf/share"> |
| <include name="*.xml"/> |
| <include name="*.dtd"/> |
| <include name="*.txt"/> |
| <include name="*.MF"/> |
| </fileset> |
| </copy> |
| |
| </postGoal> |
| |
| <postGoal name="maven-javadoc-plugin:report"> |
| <mkdir dir="${maven.build.dir}/docs/javascript/org/apache/commons/validator/javascript/doc-files" /> |
| |
| <ant:available property="jsdocPresent" type="file" file="${jsdoc.home}/jsdoc.pl"/> |
| <j:if test="${jsdocPresent}"> |
| <attainGoal name="javadoc.js.unix"/> |
| <attainGoal name="javadoc.js.windows"/> |
| </j:if> |
| |
| <copy todir="${maven.build.dir}/docs/javascript/org/apache/commons/validator/javascript/doc-files"> |
| <fileset dir="${javascript.home}/org/apache/commons/validator/javascript/doc-files" includes="*.gif"/> |
| </copy> |
| |
| </postGoal> |
| |
| <goal name="javadoc.js.unix"> |
| <exec executable="bash" failifexecutionfails="false"> |
| <arg line="-c 'etc/jsdoc.sh ${jsdoc.home} ${javascript.home} ${maven.build.dir}/docs/javascript' "/> |
| </exec> |
| </goal> |
| |
| <goal name="javadoc.js.windows"> |
| <exec executable="etc/jsdoc.bat" failifexecutionfails="false"> |
| <arg line="${jsdoc.home} ${javascript.home} ${maven.build.dir}/docs/javascript"/> |
| </exec> |
| </goal> |
| |
| |
| <!-- ================================================================== --> |
| <!-- Create MD5 Check Sums --> |
| <!-- ================================================================== --> |
| <postGoal name="dist"> |
| |
| <!-- create checksum for jar --> |
| <ant:checksum file="${maven.build.dir}/${maven.final.name}.jar" property="jar.md5"/> |
| <ant:echo message="${jar.md5} *${maven.final.name}.jar" |
| file="${maven.build.dir}/${maven.final.name}.jar.md5" /> |
| |
| <!-- create checksum for binary zip --> |
| <ant:checksum file="${maven.dist.dir}/${maven.final.name}.zip" property="zip.md5"/> |
| <ant:echo message="${zip.md5} *${maven.final.name}.zip" |
| file="${maven.dist.dir}/${maven.final.name}.zip.md5" /> |
| |
| <!-- create checksum for binary tar.gz --> |
| <ant:checksum file="${maven.dist.dir}/${maven.final.name}.tar.gz" property="tar.gz.md5"/> |
| <ant:echo message="${tar.gz.md5} *${maven.final.name}.tar.gz" |
| file="${maven.dist.dir}/${maven.final.name}.tar.gz.md5" /> |
| |
| <!-- create checksum for source zip --> |
| <ant:checksum file="${maven.dist.dir}/${maven.final.name}-src.zip" property="src.zip.md5"/> |
| <ant:echo message="${src.zip.md5} *${maven.final.name}-src.zip" |
| file="${maven.dist.dir}/${maven.final.name}-src.zip.md5" /> |
| |
| <!-- create checksum for source tar.gz --> |
| <ant:checksum file="${maven.dist.dir}/${maven.final.name}-src.tar.gz" property="src.tar.gz.md5"/> |
| <ant:echo message="${src.tar.gz.md5} *${maven.final.name}-src.tar.gz" |
| file="${maven.dist.dir}/${maven.final.name}-src.tar.gz.md5" /> |
| |
| </postGoal> |
| |
| </project> |
| |