+<!--\r
+$HeadURL:$\r
+$Revision:$\r
+$LastChangedDate:$\r
+-->\r
<project default="all">\r
<!-- TO BE OVERRIDDEN -->\r
<property name="package.type" value="I" />\r
\r
<property name="main.srcdir" location="src/main/java" />\r
<property name="main.libdir" location="lib" />\r
+ <property name="main.libdir-src" location="lib-src" />\r
<property name="test.srcdir" location="src/test/java" />\r
\r
<property name="package.base" location="target/package/" />\r
<property name="dist.base" location="target/dist/" />\r
<property name="dist.doc" location="${dist.base}/doc" />\r
<property name="dist.lib" location="${dist.base}/lib" />\r
+ <property name="dist.lib-src" location="${dist.base}/lib-src" />\r
+ <property name="dist.build" location="${dist.base}/build" />\r
+ <property name="dist.junit" location="${dist.build}/junit" />\r
+ <property name="dist.appli" location="${dist.base}/appli" />\r
\r
<property name="dist.jar" location="target/jar" />\r
\r
<property name="compile.base" location="target/compile" />\r
+ <property name="slc.base" location="target/slc" />\r
\r
<path id="cp.main">\r
<fileset dir="${main.libdir}">\r
<echo message="Build of ${package.name} completed" />\r
</target>\r
\r
+ <target name="basePackage" depends="dist.basePackage">\r
+ <echo message="Build of ${package.name} completed" />\r
+ </target>\r
+\r
<target name="clean">\r
<delete dir="${dist.jar}" />\r
+ <delete dir="${slc.base}" />\r
<delete dir="${dist.base}" />\r
<delete dir="${package.base}" />\r
<delete dir="${compile.base}" />\r
<!-- To be overriden -->\r
</target>\r
\r
- <target name="initInternal">\r
+ <target name="init.internal">\r
<fail unless="package.version"\r
message="Property 'package.version' must be set" />\r
<fail unless="package.prefix"\r
\r
<property name="package.name"\r
value="${package.prefix}-${package.releaseId}" />\r
+ <property name="basePackage.name" value="${package.prefix}-base" />\r
\r
<mkdir dir="${dist.jar}" />\r
+ <mkdir dir="${slc.base}" />\r
<mkdir dir="${dist.base}" />\r
+ <mkdir dir="${dist.lib-src}" />\r
<mkdir dir="${package.base}" />\r
<mkdir dir="${compile.base}" />\r
\r
<echo message="Build of ${package.name} started." />\r
</target>\r
\r
- <target name="build.main" depends="initInternal,init">\r
+ <target name="init.slcbase" if="slc.basePackage">\r
+ <unzip dest="${slc.base}" src="${slc.basePackage}" />\r
+\r
+ <copy todir="${dist.base}">\r
+ <fileset dir="${slc.base}">\r
+ <include name="doc/argeo-slc/**" />\r
+ <include name="bin/*" />\r
+ <include name="slc.*" />\r
+ </fileset>\r
+ </copy>\r
+\r
+ <copy todir="${main.libdir}">\r
+ <fileset dir="${slc.base}/lib">\r
+ <include name="*" />\r
+ </fileset>\r
+ </copy>\r
+ <copy todir="${main.libdir-src}">\r
+ <fileset dir="${slc.base}/lib-src">\r
+ <include name="*" />\r
+ </fileset>\r
+ </copy>\r
+ </target>\r
+\r
+ <target name="build.main" depends="init.internal,init.slcbase,init">\r
<compile artifact="${main.artifact}" srcdir="${main.srcdir}" />\r
</target>\r
\r
<createJar artifact="${main.artifact}" srcdir="${main.srcdir}" />\r
</target>\r
\r
- <target name="jar.test" depends="jar.main">\r
+ <target name="jar.sources" unless="flag.noSources">\r
+ <createSourcesJar artifact="${main.artifact}" srcdir="${main.srcdir}" />\r
+ </target>\r
+\r
+ <target name="jar.test" depends="jar.main,jar.sources">\r
<createJar artifact="${test.artifact}" srcdir="${test.srcdir}" />\r
</target>\r
\r
<target name="dist.unittest" depends="jar.test">\r
+ <mkdir dir="${dist.junit}/xml" />\r
+ <junit printsummary="yes" haltonfailure="no">\r
+ <classpath>\r
+ <path refid="cp.test" />\r
+ <path location="${dist.jar}/${test.artifact}.jar" />\r
+ </classpath>\r
+\r
+ <formatter type="xml" />\r
+\r
+ <batchtest fork="yes" todir="${dist.junit}/xml">\r
+ <fileset dir="${test.srcdir}">\r
+ <include name="**/*Test*.java" />\r
+ <exclude name="**/Abstract*.java" />\r
+ </fileset>\r
+ </batchtest>\r
+ </junit>\r
+\r
+ <junitreport todir="${dist.junit}">\r
+ <fileset dir="${dist.junit}/xml">\r
+ <include name="*.xml" />\r
+ </fileset>\r
+ <report format="frames" todir="${dist.junit}" />\r
+ </junitreport>\r
</target>\r
\r
- <target name="dist.package" depends="dist.unittest,dist.api,dist.dependencies">\r
+ <target name="package.common"\r
+ depends="dist.unittest,dist.api,dist.apiWithSlc,dist.dependencies,dist.appli">\r
+ </target>\r
+\r
+ <target name="dist.package" depends="package.common">\r
<copy todir="${dist.base}">\r
<fileset dir="src/main/config" includes="**/*" />\r
</copy>\r
</copy>\r
\r
<zip destfile="${package.base}/${package.name}.zip">\r
- <zipfileset dir="${dist.base}" prefix="${package.prefix}-${package.version}">\r
+ <zipfileset dir="${dist.base}"\r
+ prefix="${package.prefix}-${package.version}">\r
+ <include name="**/*" />\r
+ </zipfileset>\r
+ </zip>\r
+ </target>\r
+\r
+ <target name="dist.basePackage" depends="package.common">\r
+ <copy todir="${dist.base}">\r
+ <fileset dir="src/main/config" includes="**/*" />\r
+ </copy>\r
+ <copy todir="${dist.lib}">\r
+ <fileset dir="${dist.jar}" includes="*.jar" excludes="*-test.jar" />\r
+ </copy>\r
+\r
+ <zip destfile="${package.base}/${basePackage.name}.zip">\r
+ <zipfileset dir="${dist.base}">\r
+ <exclude name="build/**" />\r
<include name="**/*" />\r
</zipfileset>\r
</zip>\r
\r
</target>\r
\r
- <target name="dist.api">\r
+ <target name="dist.appli" if="appli.base">\r
+ <copy todir="${dist.appli}">\r
+ <fileset dir="${appli.base}" includes="**" />\r
+ </copy>\r
+\r
+ </target>\r
+\r
+ <target name="dist.api" unless="slc.basePackage">\r
+ <api artifact="${main.artifact}" srcdir="${main.srcdir}" />\r
+\r
+ </target>\r
+\r
+ <target name="dist.apiWithSlc" if="slc.basePackage">\r
<api artifact="${main.artifact}" srcdir="${main.srcdir}">\r
+ <links>\r
+ <link href="../../argeo-slc/api" />
+ </links>\r
</api>\r
+\r
</target>\r
</project>
\ No newline at end of file