e444b4b01a
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1733878 13f79535-47bb-0310-9956-ffa450edef68
170 lines
6.0 KiB
XML
170 lines
6.0 KiB
XML
<?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="POI Testbuild" default="run" basedir=".">
|
|
|
|
<description>Test-Ant file which verifies that the Apache POI distribution build sources can be compiled successfully.
|
|
|
|
Before running this, you should execute the "assemble" target in the main build.xml to have the packaged files
|
|
created correctly.
|
|
|
|
</description>
|
|
|
|
<property name="dist" value="../../build/dist"/>
|
|
<property name="build" value="../../build/distsourcebuild"/>
|
|
|
|
<target name="init" depends="">
|
|
</target>
|
|
|
|
<target name="run" depends="init,runSourceBuild,runCompileTest"/>
|
|
|
|
<target name="runSourceBuild" depends="init">
|
|
<!-- clean out old stuff in build-dir -->
|
|
<delete dir="${build}"/>
|
|
<mkdir dir="${build}"/>
|
|
|
|
<!-- select latest built source zip -->
|
|
<pathconvert property="srcpackage">
|
|
<last>
|
|
<sort>
|
|
<date xmlns="antlib:org.apache.tools.ant.types.resources.comparators"/>
|
|
<resources>
|
|
<fileset dir="${dist}">
|
|
<include name="poi-src-*.zip" />
|
|
</fileset>
|
|
</resources>
|
|
</sort>
|
|
</last>
|
|
</pathconvert>
|
|
|
|
<echo message="Found source package at ${srcpackage}"/>
|
|
<unzip src="${srcpackage}" dest="${build}" failOnEmptyArchive="true"/>
|
|
|
|
<!-- look for name of sub-dir, do this dynamically as it changes with every (beta|rc)-release -->
|
|
<pathconvert property="dirversion">
|
|
<dirset dir="${build}">
|
|
<include name="*" />
|
|
</dirset>
|
|
</pathconvert>
|
|
|
|
<!-- copy over required libs to avoid re-downloading them always -->
|
|
<mkdir dir="${dirversion}/lib"/>
|
|
<mkdir dir="${dirversion}/ooxml-lib"/>
|
|
<mkdir dir="${dirversion}/compile-lib"/>
|
|
<copy todir="${dirversion}/lib">
|
|
<fileset dir="../../lib"/>
|
|
</copy>
|
|
<copy todir="${dirversion}/ooxml-lib">
|
|
<fileset dir="../../ooxml-lib"/>
|
|
</copy>
|
|
<copy todir="${dirversion}/compile-lib">
|
|
<fileset dir="../../compile-lib"/>
|
|
</copy>
|
|
|
|
<!-- finally call Ant on the extracted source to check if we can build the packages -->
|
|
<echo message="Building in temporary dir ${dirversion}/"/>
|
|
<ant dir="${dirversion}" target="jar" inheritAll="false" inheritRefs="false" useNativeBasedir="true"/>
|
|
</target>
|
|
|
|
<target name="runCompileTest" depends="init" description="Verify that we can compile most examples without including excelant or scratchpad jars">
|
|
<!-- clean out old stuff in build-dir -->
|
|
<delete dir="${build}"/>
|
|
<mkdir dir="${build}"/>
|
|
|
|
<!-- select latest built jar files without scratchpad.jar -->
|
|
<pathconvert property="jarpackage">
|
|
<sort>
|
|
<resources>
|
|
<fileset dir="${dist}">
|
|
<include name="**/poi-3.*.jar" />
|
|
<include name="**/poi-ooxml-3.*.jar" />
|
|
<include name="**/poi-ooxml-schemas-3.*.jar" />
|
|
<exclude name="**/*-javadoc*" />
|
|
<exclude name="**/*-sources*" />
|
|
</fileset>
|
|
</resources>
|
|
</sort>
|
|
</pathconvert>
|
|
|
|
<fail message="Did not find jar packages looking in directory ${dist}">
|
|
<condition>
|
|
<or>
|
|
<equals arg1="${jarpackage}" arg2=""/>
|
|
<not>
|
|
<isset property="jarpackage"/>
|
|
</not>
|
|
</or>
|
|
</condition>
|
|
</fail>
|
|
<echo message="Found jar packages at ${jarpackage}, dist: ${dist}"/>
|
|
|
|
<path id="libs">
|
|
<fileset dir="../../lib">
|
|
<include name="junit*.jar" />
|
|
</fileset>
|
|
<fileset dir="../../ooxml-lib">
|
|
<include name="ooxml-schemas-*.jar" />
|
|
<include name="xmlbeans-*.jar" />
|
|
<exclude name="xmlbeans-2.3.*.jar" />
|
|
</fileset>
|
|
</path>
|
|
|
|
<echo message="Compiling examples without linking to scratchpad.jar to ensure that only some specific ones require this jar" />
|
|
<javac srcdir="../examples/src" destdir="${build}"
|
|
target="1.6"
|
|
source="1.6"
|
|
debug="true"
|
|
encoding="ASCII"
|
|
fork="yes"
|
|
includeantruntime="false"
|
|
excludes="org/apache/poi/hslf/**,org/apache/poi/hsmf/**,**/EmbeddedObjects.java,**/EmeddedObjects.java,**/Word2Forrest.java"
|
|
classpath="${jarpackage}"
|
|
classpathref="libs">
|
|
</javac>
|
|
|
|
<!-- select latest built jar files with additionally scratchpad.jar -->
|
|
<pathconvert property="jarpackagescratchpad">
|
|
<sort>
|
|
<resources>
|
|
<fileset dir="${dist}">
|
|
<include name="**/poi-3.*.jar" />
|
|
<include name="**/poi-ooxml-3.*.jar" />
|
|
<include name="**/poi-ooxml-schemas-3.*.jar" />
|
|
<include name="**/poi-scratchpad-3.*.jar" />
|
|
<exclude name="**/*-javadoc*" />
|
|
<exclude name="**/*-sources*" />
|
|
</fileset>
|
|
</resources>
|
|
</sort>
|
|
</pathconvert>
|
|
|
|
<echo message="Compiling all examples with the additional scratchpad.jar" />
|
|
<javac srcdir="../examples/src" destdir="${build}"
|
|
target="1.6"
|
|
source="1.6"
|
|
debug="true"
|
|
encoding="ASCII"
|
|
fork="yes"
|
|
includeantruntime="false"
|
|
classpath="${jarpackagescratchpad}"
|
|
classpathref="libs">
|
|
</javac>
|
|
</target>
|
|
</project>
|