]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - org.argeo.slc/src/main/config/include/ant/slc-factory-targets.xml
Improve formatting of the code.
[gpl/argeo-slc.git] / org.argeo.slc / src / main / config / include / ant / slc-factory-targets.xml
index ade9f61591912c91eae3e0019e9f0e886dfa3505..b76dbcb8122b8c9172a80cf721e2fd3c2b20c450 100644 (file)
@@ -1,3 +1,8 @@
+<!--\r
+$HeadURL$\r
+$Revision$\r
+$LastChangedDate$\r
+-->\r
 <project default="all">\r
        <!-- TO BE OVERRIDDEN -->\r
        <property name="package.type" value="I" />\r
@@ -6,6 +11,7 @@
 \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
                <fileset dir="${main.libdir}">\r
                        <include name="**/*.jar" />\r
                </fileset>\r
-               <pathelement location="${compile.base}/${main.artifact}" />\r
+               <pathelement location="${dist.jar}/${main.artifact}.jar" />\r
        </path>\r
 \r
        <import file="slc-factory-macrodefs.xml" />\r
 \r
        <target name="all" depends="dist.package">\r
                <echo message="Build of ${package.name} completed" />\r
+               <record name="${dist.build}/build.log" action="stop" />\r
+       </target>\r
+\r
+       <target name="basePackage" depends="dist.basePackage">\r
+               <echo message="Build of ${package.name} completed" />\r
+               <record name="${dist.build}/build.log" action="stop" />\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
@@ -49,7 +67,9 @@
                <!-- To be overriden -->\r
        </target>\r
 \r
-       <target name="initInternal">\r
+       <target name="init.internal">\r
+               <mkdir dir="${dist.build}"/>\r
+               <record name="${dist.build}/build.log" action="start" append="true"/>\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}" overwrite="true" verbose="true">\r
+                       <fileset dir="${slc.base}">\r
+                               <include name="doc/argeo-slc/**" />\r
+                               <include name="bin/*" />\r
+                       </fileset>\r
+               </copy>\r
+\r
+               <copy todir="${main.libdir}" overwrite="true" verbose="true">\r
+                       <fileset dir="${slc.base}/lib">\r
+                               <include name="*" />\r
+                       </fileset>\r
+               </copy>\r
+               <copy todir="${main.libdir-src}" overwrite="true" verbose="true">\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
-       <target name="build.test" depends="build.main">\r
+       <target name="jar.main" depends="build.main">\r
+               <createJar artifact="${main.artifact}" srcdir="${main.srcdir}" />\r
+       </target>\r
+\r
+       <target name="build.test" depends="jar.main">\r
                <compile artifact="${test.artifact}"\r
                         srcdir="${test.srcdir}"\r
                         classpathref="cp.test" />\r
        </target>\r
 \r
-       <target name="jar.main" depends="build.test">\r
-               <createJar artifact="${main.artifact}" srcdir="${main.srcdir}" />\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">\r
+       <target name="jar.test" depends="build.test">\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
+                                       <exclude name="**/*TestDef*.java" />\r
+                                       <exclude name="**/*TestData*.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,jar.sources,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