blob: 7eeaccf0a6c7cabe17debea508f1e276fabf0882 [file] [log] [blame]
<?xml version="1.0" encoding="ISO-8859-1"?>
<project name="uwc" default="all">
<property file="uwc.properties"/>
<property environment="env"/>
<!--<property name="project.jdk.home" value="${jdk.home.1.5}"/>-->
<property name="project.jdk.home" value="${env.JAVA_HOME}"/>
<property name="project.jdk.classpath" value="jdk.classpath.1.5"/>
<!-- Uncomment the following property if no tests compilation is needed -->
<!--
<property name="skip.tests" value="true"/>
-->
<!-- Compiler options -->
<property name="compiler.debug" value="on"/>
<property name="compiler.generate.no.warnings" value="off"/>
<!-- <property name="compiler.args" value=""/> -->
<!-- Can we put this directly in the code? -->
<property name="compiler.args" value="-J-Dorg.xml.sax.driver=org.apache.xerces.parsers.SAXParser"/>
<property name="compiler.max.memory" value="128m"/>
<patternset id="ignored.files">
<exclude name="**/CVS/**"/>
<exclude name="**/SCCS/**"/>
<exclude name="**/RCS/**"/>
<exclude name="**/rcs/**"/>
<exclude name="**/.DS_Store/**"/>
<exclude name="**/.svn/**"/>
</patternset>
<patternset id="compiler.resources">
<include name="**/?*.properties"/>
<include name="**/?*.xml"/>
<include name="**/?*.gif"/>
<include name="**/?*.png"/>
<include name="**/?*.jpeg"/>
<include name="**/?*.jpg"/>
<include name="**/?*.html"/>
<include name="**/?*.dtd"/>
<include name="**/?*.tld"/>
</patternset>
<!--<fileset dir="${jdk.home.1.5}">-->
<!-- JDK definitions -->
<path id="jdk.classpath.1.5">
<fileset dir="${env.JAVA_HOME}">
<include name="jre/lib/charsets.jar"/>
<include name="jre/lib/deploy.jar"/>
<include name="jre/lib/javaws.jar"/>
<include name="jre/lib/jce.jar"/>
<include name="jre/lib/jsse.jar"/>
<include name="jre/lib/plugin.jar"/>
<include name="jre/lib/rt.jar"/>
<include name="jre/lib/ext/dnsns.jar"/>
<include name="jre/lib/ext/localedata.jar"/>
<include name="jre/lib/ext/sunjce_provider.jar"/>
<include name="jre/lib/ext/sunpkcs11.jar"/>
</fileset>
</path>
<!-- Global Libraries -->
<!-- Application Server Libraries -->
<!-- Modules -->
<!-- Module uwc -->
<property name="module.uwc.basedir" value="${basedir}"/>
<property name="module.jdk.home.uwc" value="${project.jdk.home}"/>
<property name="module.jdk.classpath.uwc" value="${project.jdk.classpath}"/>
<property name="compiler.args.uwc" value="${compiler.args}"/>
<property name="uwc.output.dir" value="${module.uwc.basedir}/target/uwc"/>
<property name="uwc.output.classes.dir" value="${module.uwc.basedir}/target/uwc/classes"/>
<property name="uwc.testoutput.dir" value="${module.uwc.basedir}/target/uwc/classes"/>
<property name="gen-source-dir" value="${module.uwc.basedir}/gensrc"/>
<property name="gen-source-java-dir" value="${gen-source-dir}/java"/>
<property name="gen-axis-code-marker-file" value="${gen-source-dir}/.axis-generated"/>
<!-- The task requires the following libraries from IntelliJ IDEA distribution: -->
<!-- javac2.jar; jdom.jar; bcel.jar -->
<!-- JDK definitions -->
<path id="intellij.classpath">
<fileset dir="${module.uwc.basedir}/lib">
<include name="bcel.jar"/>
<include name="javac2.jar"/>
<include name="jdom.jar"/>
</fileset>
</path>
<taskdef name="javac2" classname="com.intellij.uiDesigner.ant.Javac2"
classpathref="intellij.classpath"/>
<path id="uwc.module.bootclasspath">
<!-- Paths to be included in compilation bootclasspath -->
</path>
<path id="uwc.module.classpath">
<path refid="${module.jdk.classpath.uwc}"/>
<path refid="intellij.classpath"/>
<fileset dir="${module.uwc.basedir}/lib">
<include name="*.jar"/>
</fileset>
<pathelement location="${module.uwc.basedir}/lib/*.jar"/>
<!--<pathelement location="${module.uwc.basedir}/lib/activation.jar"/>-->
<!--<pathelement location="${module.uwc.basedir}/lib/axis-ant.jar"/>-->
<!--<pathelement location="${module.uwc.basedir}/lib/axis-schema.jar"/>-->
<!--<pathelement location="${module.uwc.basedir}/lib/axis.jar"/>-->
<!--<pathelement location="${module.uwc.basedir}/lib/commons-discovery-0.2.jar"/>-->
<!--<pathelement location="${module.uwc.basedir}/lib/commons-logging-1.0.4.jar"/>-->
<!--<pathelement location="${module.uwc.basedir}/lib/jakarta-oro-2.0.8.jar"/>-->
<!--<pathelement location="${module.uwc.basedir}/lib/jaxrpc.jar"/>-->
<!--<pathelement location="${module.uwc.basedir}/lib/junit.jar"/>-->
<!--<pathelement location="${module.uwc.basedir}/lib/log4j-1.2.13.jar"/>-->
<!--<pathelement location="${module.uwc.basedir}/lib/mail.jar"/>-->
<!--<pathelement location="${module.uwc.basedir}/lib/saaj.jar"/>-->
<!--<pathelement location="${module.uwc.basedir}/lib/wsdl4j-1.5.1.jar"/>-->
<!--<pathelement location="${module.uwc.basedir}/lib/confluence-remote-java-wrapper-v3.jar"/>-->
<!--<pathelement location="${module.uwc.basedir}/lib/*.jar"/>-->
<!--<pathelement location="${module.uwc.basedir}/target/wsdl4j-1.5.1.jar"/>-->
<!--<pathelement location="${module.uwc.basedir}/target/wsdl4j-1.5.1.jar"/>-->
</path>
<patternset id="excluded.from.module.uwc">
<patternset refid="ignored.files"/>
</patternset>
<patternset id="excluded.from.compilation.uwc">
<patternset refid="excluded.from.module.uwc"/>
</patternset>
<path id="uwc.module.sourcepath">
<dirset dir="${module.uwc.basedir}">
<include name="src"/>
<include name="gensrc/java"/>
</dirset>
</path>
<target name="compile.module.uwc" depends="compile.module.uwc.production,compile.module.uwc.tests"
description="compile module(s) uwc"/>
<target name="compile.module.uwc.production" description="compile module(s) uwc production classes">
<mkdir dir="${uwc.output.classes.dir}"/>
<javac2 destdir="${uwc.output.classes.dir}" debug="${compiler.debug}" nowarn="${compiler.generate.no.warnings}"
memoryMaximumSize="${compiler.max.memory}" fork="true" executable="${module.jdk.home.uwc}/bin/javac" encoding="iso-8859-1">
<compilerarg line="${compiler.args.uwc}"/>
<bootclasspath refid="uwc.module.bootclasspath"/>
<classpath refid="uwc.module.classpath"/>
<src refid="uwc.module.sourcepath"/>
</javac2>
<copy todir="${uwc.output.classes.dir}">
<fileset dir="${module.uwc.basedir}/src">
<patternset refid="compiler.resources"/>
<type type="file"/>
</fileset>
</copy>
</target>
<target name="compile.module.uwc.tests" depends="compile.module.uwc.production"
description="compile module(s) uwc test classes" unless="skip.tests"/>
<target name="clean.module.uwc" description="cleanup module">
<delete dir="target"/>
<delete dir="${uwc.testoutput.dir}"/>
</target>
<target name="init" description="Build initialization">
<!-- Perform any build initialization in this target -->
</target>
<target name="clean" depends="clean.module.uwc" description="cleanup all"/>
<target name="all" depends="init, compile.module.uwc, finish-dist" description="build all"/>
<target name="finish-dist">
<copy todir="${uwc.output.dir}/lib">
<fileset dir="lib"/>
</copy>
<copy todir="${uwc.output.dir}">
<fileset dir="bin"/>
</copy>
<copy todir="${uwc.output.dir}/images">
<fileset dir="images"/>
</copy>
<!-- default properties -->
<copy todir="${uwc.output.dir}/conf" overwrite="true">
<fileset dir="conf"/>
</copy>
<!-- but for a generic build - use local properties
note: failonerror is false so that if there's no conf-local
the build can continue merrily on its way
-->
<copy todir="${uwc.output.dir}/conf" overwrite="true" failonerror="false">
<fileset dir="conf-local"/>
</copy>
</target>
<target name="package" depends="all" description="create the distribution file and place in the dist dir">
<!-- package with default properties!!-->
<copy todir="${uwc.output.dir}/conf" overwrite="true">
<fileset dir="conf"/>
</copy>
<delete dir="target/uwc/output"/>
<antcall target="CreateExecutableJarFileWithExternalLibrary"/>
<mkdir dir="./dist"/>
<zip basedir="target" excludes="uwc/classes/**, uwc/lib/**, target/uwc/lib/**" excludesfile="bin/run_uwc_devel.sh" destfile="./dist/uwc.zip"/>
</target>
<target name="CreateExecutableJarFileWithExternalLibrary">
<jar destfile="target/uwc/uwc.jar">
<zipfileset dir="${module.uwc.basedir}/target/uwc/classes" prefix=""/>
<zipfileset src="${module.uwc.basedir}/lib/activation.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/axis-1.2.1.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/axis-jaxrpc-1.2.1.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/axis-saaj-1.2.1.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/bcel.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/commons-codec-1.3.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/commons-discovery-0.2.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/commons-httpclient-3.0.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/commons-lang-2.1.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/commons-logging-1.0.4.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/confluence-xmlrpc-wrapper-v5.2.0.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/dom4j-1.4-full.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/forms_rt.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/jakarta-oro-2.0.8.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/javac2.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/jaxrpc.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/jdom.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/junit.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/log4j-1.2.13.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/mail.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/mysql-connector-java-5.0.3-bin.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/saaj.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/sharepoint-wrapper-1.0.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/substance.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/swing-layout-1.0.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/treewrapper.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/Tidy.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/wsdl4j-1.5.1.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/xmlrpc-2.0.1.jar"/>
<zipfileset src="${module.uwc.basedir}/lib/apache-mime4j-0.6.1.jar"/>
<manifest>
<attribute name="Main-Class" value="com.atlassian.uwc.ui.UWCForm3"/>
</manifest>
</jar>
</target>
<!--<target name="generate-axis-client-code" unless="axis-uptodate">-->
<!--<echo message="==== ========================================"/>-->
<!--<echo message="==== generating axis client classes for devel ====="/>-->
<!--<echo message="==== =========================================="/>-->
<!--<mkdir dir="${gen-source-java-dir}"/>-->
<!--<java classname="org.apache.axis.wsdl.WSDL2Java" fork="true">-->
<!--<arg line="-p com.atlassian.uwc.soapclient \-\-output ${gen-source-java-dir} ${module.uwc.basedir}/confluenceservice-v1.wsdl"/>-->
<!--<classpath>-->
<!--<path refid="uwc.module.classpath"/>-->
<!--</classpath>-->
<!--</java>-->
<!--<touch file="${gen-axis-code-marker-file}"/>-->
<!--</target>-->
<target name="run-v2" depends="init,compile.module.uwc" description="Run uwc gui version 2">
<java classname="com.atlassian.uwc.ui.UWCForm2" fork="true" dir="${uwc.output.dir}">
<classpath>
<pathelement location="${uwc.output.classes.dir}"/>
<fileset dir="${uwc.output.dir}/lib">
<include name="*.jar"/>
</fileset>
</classpath>
</java>
</target>
<target name="package-spoof" description="Create spoof jar for use with APR">
<jar jarfile="./dist/uwc-spoof.jar">
<fileset dir="./src/etc"/>
</jar>
</target>
<target name="package-nolibs" depends="init, compile.module.uwc" description="Create uwc.jar containing only UWC classes with classpath set to point to lib jars in SAME directory (so we can deploy all webstart resources from same page)">
<jar destfile="target/uwc/uwc.jar">
<zipfileset dir="${module.uwc.basedir}/target/uwc/classes" prefix=""/>
<manifest>
<attribute name="main-class" value="com.atlassian.uwc.ui.UWCForm3"/>
<attribute name="Class-Path" value="./Tidy.jar ./javac2.jar ./activation.jar ./jaxrpc.jar ./axis-1.2.1.jar ./jdom.jar ./axis-jaxrpc-1.2.1.jar ./junit.jar ./axis-saaj-1.2.1.jar ./log4j-1.2.13.jar ./bcel.jar ./mail.jar ./commons-codec-1.3.jar ./mysql-connector-java-5.0.3-bin.jar ./commons-discovery-0.2.jar ./saaj.jar ./commons-httpclient-3.0.jar ./sharepoint-wrapper-1.0.jar ./commons-logging-1.0.4.jar ./substance.jar ./confluence-xmlrpc-wrapper-v4.07.jar ./swing-layout-1.0.jar ./dom4j-1.4-full.jar ./treewrapper.jar ./forms_rt.jar ./wsdl4j-1.5.1.jar ./jakarta-oro-2.0.8.jar ./xmlrpc-2.0.1.jar"/>
</manifest>
</jar>
</target>
</project>