| <?xml version="1.0"?> |
| <!-- |
| 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 name="build-site" default="docs" basedir="."> |
| |
| <description> |
| Build documentation - XDocs and Javadoc. |
| |
| For building XDocs, edit xdocs/**/*.xml first. |
| If ../jakarta-site2 does not exist, set -Dsite.dir=... for it, |
| or just use -Dvelocity.dir=.../velocity-1.4.x if you have downloaded Velocity somewhere. |
| |
| XXX for no apparent reason, your CWD must be the main Ant source dir, or this will fail: |
| .../docs.xml:64: org.apache.velocity.exception.ResourceNotFoundException: Unable to find resource './site.vsl' |
| |
| After this generation the pages in docs/ should be up-to-date and need to be committed. |
| Since I don't remember whether there is a cron job updating the site I |
| usually log in to people.apache.org and run 'svn up' in /www/ant.apache.org/ |
| (make sure your umask is 002 before you do that so the pages remain group writable). |
| </description> |
| |
| <!-- Initialization properties --> |
| <property name="project.name" value="ant"/> |
| <property name="docs.src" location="xdocs"/> |
| <property name="docs.dest" location="docs"/> |
| <property name="project.file" value="stylesheets/project.xml" /> |
| <property name="templ.path" location="xdocs/stylesheets" /> |
| <property name="velocity.props" location="${docs.src}/velocity.properties" /> |
| <property name="include.xml" value="**/*.xml" /> |
| |
| <target name="setup-explicit-classpath" if="velocity.dir"> |
| <path id="anakia.classpath"> |
| <fileset dir="${velocity.dir}"> |
| <include name="velocity-dep-*.jar"/> |
| <include name="velocity-*-dep.jar"/> |
| <!-- XXX why is this needed separately? --> |
| <include name="build/lib/jdom-*.jar"/> |
| <include name="lib/jdom-*.jar"/> |
| </fileset> |
| </path> |
| </target> |
| |
| <target name="setup-implicit-classpath" unless="velocity.dir"> |
| <property name="site.dir" location="../jakarta-site2"/> |
| <path id="anakia.classpath"> |
| <fileset dir="${site.dir}/lib"> |
| <include name="*.jar"/> |
| </fileset> |
| </path> |
| </target> |
| |
| <target name="prepare" depends="setup-explicit-classpath,setup-implicit-classpath"> |
| <available classname="org.apache.velocity.anakia.AnakiaTask" |
| property="AnakiaTask.present"> |
| <classpath refid="anakia.classpath"/> |
| </available> |
| <condition property="onwindows"> |
| <os family="windows"/> |
| </condition> |
| </target> |
| |
| <target depends="prepare" name="prepare-error" unless="AnakiaTask.present"> |
| <echo> |
| AnakiaTask is not present! Please check to make sure that |
| velocity.jar is in your classpath. |
| </echo> |
| </target> |
| |
| <target name="anakia" if="AnakiaTask.present" depends="prepare-error"> |
| <taskdef name="anakia" classname="org.apache.velocity.anakia.AnakiaTask"> |
| <classpath refid="anakia.classpath"/> |
| </taskdef> |
| |
| <anakia basedir="${docs.src}" destdir="${docs.dest}/" |
| extension=".html" style="./site.vsl" |
| projectFile="${project.file}" |
| excludes="**/stylesheets/**" |
| includes="${include.xml}" |
| lastModifiedCheck="true" |
| templatePath="${templ.path}" |
| velocityPropertiesFile="${velocity.props}"> |
| </anakia> |
| <fixcrlf srcdir="${docs.dest}" includes="**/*.html" |
| encoding="iso-8859-1" outputencoding="iso-8859-1"/> |
| </target> |
| |
| <target name="fixcrlf" if="onwindows"> |
| <fixcrlf srcDir="${docs.dest}" eol="dos" includes="*.html" |
| encoding="iso-8859-1" outputencoding="iso-8859-1"/> |
| </target> |
| |
| <target name="docs" if="AnakiaTask.present" depends="anakia,fixcrlf" description="Create XDocs."> |
| </target> |
| <target name="javadocs" description="Create Javadoc."> |
| <ant antfile="build.xml" target="dist_javadocs"> |
| <property name="dist.javadocs" value="${docs.dest}/manual/api" /> |
| </ant> |
| </target> |
| |
| <target name="all" depends="docs,javadocs" description="Create both XDocs and Javadoc."/> |
| |
| |
| <available property="jdk1.5+" classname="java.net.Proxy"/> |
| <target name="txt2html"> |
| <fail unless="jdk1.5+" message="Tomcat BuildUtils requires Java5+"/> |
| <property name="build.dir" value="build"/> |
| <tempfile property="temp.dir"/> |
| <mkdir dir="${temp.dir}/org/apache/tomcat/buildutil"/> |
| <get src="http://svn.apache.org/repos/asf/tomcat/trunk/java/org/apache/tomcat/buildutil/Txt2Html.java" |
| dest="${temp.dir}/org/apache/tomcat/buildutil/Txt2Html.java"/> |
| <javac srcdir="${temp.dir}" destdir="${temp.dir}" includeAntRuntime="true"/> |
| <taskdef name="txt2html" classname="org.apache.tomcat.buildutil.Txt2Html" classpath="${temp.dir}"/> |
| <mkdir dir="${build.dir}/html"/> |
| <txt2html todir="${build.dir}/html"> |
| <fileset file="WHATSNEW"/> |
| </txt2html> |
| <delete dir="${temp.dir}"/> |
| </target> |
| |
| </project> |