Author: chris.laprun(a)jboss.com
Date: 2007-06-22 17:13:55 -0400 (Fri, 22 Jun 2007)
New Revision: 7514
Modified:
trunk/build/distrib.xml
Log:
- Introduced docs.dir property to easily override location of Portal docs.
- Properly handle using JBOSS_HOME when jboss.home is not set.
- Optimized build task to avoid rebuilding code twice.
- doc.build is now only called if no-doc is not set.
- Minor clean-ups.
Modified: trunk/build/distrib.xml
===================================================================
--- trunk/build/distrib.xml 2007-06-22 15:31:31 UTC (rev 7513)
+++ trunk/build/distrib.xml 2007-06-22 21:13:55 UTC (rev 7514)
@@ -1,6 +1,7 @@
<project default="main" name="JBoss Portal">
<property name="source.dir"
value="../../jboss-portal-2.6"/>
+ <property name="docs.dir" value="${source.dir}-docs"/>
<property name="release.version" value="2.6-CR3"/>
<!-- -->
@@ -14,58 +15,68 @@
<property name="portal.build.normal.bundled"
value="output/${portal.release.normal.name}-bundled"/>
<property name="portal.build.ha.bundled"
value="output/${portal.release.ha.name}-bundled"/>
-<!--
- <property name="forums.release.name"
value="jboss-forums-${release.version}"/>
- <property name="forums.build.bin"
value="output/${forums.release.name}"/>
- <property name="forums.build.src"
value="output/${forums.release.name}-src"/>
--->
-<!-- Licenses -->
-<target name="licenses">
- <fileset id="thirdparty-licenses"
dir="../thirdparty/licenses">
- <include name="antlr.txt"/>
- <include name="apache-2.0.txt"/>
- <include name="bsd.txt"/>
- <include name="cddl.txt"/>
- <include name="cpl-1.0/txt"/>
- <include name="day-jcr.txt"/>
- <include name="dom4j.txt"/>
- <include name="ehcache.txt"/>
- <include name="gpl.txt"/>
- <include name="hsqldb.txt"/>
- <include name="httpunit.txt"/>
- <include name="ironsmith.txt"/>
- <include name="lgpl.txt"/>
- <include name="nekohtml.txt"/>
- <include name="oswego.txt"/>
- <include name="public-domain.txt"/>
- <include name="slf4j.txt"/>
- <include name="sun-jaf.txt"/>
- <include name="sun-javamail.txt"/>
- <include name="xdoclet.txt"/>
- </fileset>
- <mkdir dir="output/docs/licenses"/>
- <concat destfile="output/docs/licenses/thirdparty-licenses.txt">
- <fileset refid="thirdparty-licenses"/>
- </concat>
- <copy todir="output/docs/licenses">
- <fileset refid="thirdparty-licenses"/>
- <fileset dir="licences" includes="JBossEULA.txt"/>
- </copy>
+ <property environment="env"/>
+
+ <target name="init" unless="jboss.home">
+ <property name="jboss.home" value="${env.JBOSS_HOME}"/>
+ <echo message="Using JBoss install from $JBOSS_HOME:
${jboss.home}"/>
</target>
-
- <!-- Build JBoss Portal artifacts -->
- <target name="source.build">
+ <!--
+ <property name="forums.release.name"
value="jboss-forums-${release.version}"/>
+ <property name="forums.build.bin"
value="output/${forums.release.name}"/>
+ <property name="forums.build.src"
value="output/${forums.release.name}-src"/>
+ -->
+ <!-- Licenses -->
+ <target name="licenses">
+ <fileset id="thirdparty-licenses"
dir="../thirdparty/licenses">
+ <include name="antlr.txt"/>
+ <include name="apache-2.0.txt"/>
+ <include name="bsd.txt"/>
+ <include name="cddl.txt"/>
+ <include name="cpl-1.0/txt"/>
+ <include name="day-jcr.txt"/>
+ <include name="dom4j.txt"/>
+ <include name="ehcache.txt"/>
+ <include name="gpl.txt"/>
+ <include name="hsqldb.txt"/>
+ <include name="httpunit.txt"/>
+ <include name="ironsmith.txt"/>
+ <include name="lgpl.txt"/>
+ <include name="nekohtml.txt"/>
+ <include name="oswego.txt"/>
+ <include name="public-domain.txt"/>
+ <include name="slf4j.txt"/>
+ <include name="sun-jaf.txt"/>
+ <include name="sun-javamail.txt"/>
+ <include name="xdoclet.txt"/>
+ </fileset>
+ <mkdir dir="output/docs/licenses"/>
+ <concat destfile="output/docs/licenses/thirdparty-licenses.txt">
+ <fileset refid="thirdparty-licenses"/>
+ </concat>
+ <copy todir="output/docs/licenses">
+ <fileset refid="thirdparty-licenses"/>
+ <fileset dir="licences" includes="JBossEULA.txt"/>
+ </copy>
+ </target>
- <!-- Normal build -->
+ <!-- Normal build -->
+ <target name="_normal.build" depends="init"
unless="normal.build.done">
<ant dir="${source.dir}/build" antfile="build.xml"/>
+ <!-- to prevent building several times -->
+ <property name="normal.build.done" value="true"/>
+ </target>
+
+ <!-- Build JBoss Portal artifacts -->
+ <target name="source.build" depends="_normal.build">
<!-- HA specific targets -->
<ant dir="${source.dir}/core" antfile="build.xml"
target="output-ha"/>
<ant dir="${source.dir}/core-cms" antfile="build.xml"
target="output-ha"/>
-
- <!-- Datasource files -->
- <ant dir="${source.dir}/core" antfile="build.xml"
target="datasource">
+
+ <!-- Datasource files -->
+ <ant dir="${source.dir}/core" antfile="build.xml"
target="datasource">
<!-- Hack because invoking the datasource generation from another build file
replace ${/} -->
<property name="/" value="${/}"/>
</ant>
@@ -75,45 +86,63 @@
</target>
<!-- Build JBoss Portal documentation -->
- <target name="doc.build"> <!-- Normal build -->
- <ant dir="${source.dir}/build" antfile="build.xml"/>
- <ant dir="${source.dir}-docs/referenceGuide"
antfile="build.xml"/>
- <ant dir="${source.dir}-docs/userGuide"
antfile="build.xml"/>
- <ant dir="${source.dir}-docs/quickstartuser"
antfile="build.xml"/>
+ <target name="doc.build" depends="_normal.build"
unless="no-doc">
+ <ant dir="${docs.dir}/referenceGuide"
antfile="build.xml"/>
+ <ant dir="${docs.dir}/userGuide" antfile="build.xml"/>
+ <ant dir="${docs.dir}/quickstartuser"
antfile="build.xml"/>
</target>
<!-- Build JBoss Portal -->
- <target name="build" depends="source.build,doc.build">
- </target>
+ <target name="build" depends="source.build,doc.build"/>
- <target name="package-doc">
+
+ <!--<macrodef name="package-doc">
+ <attribute name="todir"/>
<sequential>
<mkdir dir="${todir}"/>
<mkdir dir="${todir}/referenceGuide"/>
<copy todir="${todir}/referenceGuide">
- <fileset dir="${source.dir}-docs/referenceGuide/build/en/"/>
+ <fileset dir="${docs.dir}/referenceGuide/build/en/"/>
</copy>
<mkdir dir="${todir}/userGuide"/>
<copy todir="${todir}/userGuide">
- <fileset dir="${source.dir}-docs/userGuide/build/en/"/>
+ <fileset dir="${docs.dir}/userGuide/build/en/"/>
</copy>
<mkdir dir="${todir}/quickstartuser"/>
<copy todir="${todir}/quickstartuser">
- <fileset dir="${source.dir}-docs/quickstartuser/build/en/"/>
+ <fileset dir="${docs.dir}/quickstartuser/build/en/"/>
</copy>
</sequential>
+ </macrodef>-->
+
+ <target name="package-doc">
+ <sequential>
+ <mkdir dir="${todir}"/>
+ <mkdir dir="${todir}/referenceGuide"/>
+ <copy todir="${todir}/referenceGuide">
+ <fileset dir="${docs.dir}/referenceGuide/build/en/"/>
+ </copy>
+ <mkdir dir="${todir}/userGuide"/>
+ <copy todir="${todir}/userGuide">
+ <fileset dir="${docs.dir}/userGuide/build/en/"/>
+ </copy>
+ <mkdir dir="${todir}/quickstartuser"/>
+ <copy todir="${todir}/quickstartuser">
+ <fileset dir="${docs.dir}/quickstartuser/build/en/"/>
+ </copy>
+ </sequential>
</target>
- <target name="package-ds">
+ <target name="package-ds">
<sequential>
<mkdir dir="${todir}"/>
<copy todir="${todir}">
<fileset dir="${source.dir}/core/output/resources/setup"
includes="portal-*-ds.xml"/>
</copy>
</sequential>
- </target>
+ </target>
- <!-- use -Dno-doc=true if you simply want jboss-portal.sar without licenses
etc-->
+ <!-- use -Dno-doc=true if you simply want jboss-portal.sar without licenses
etc-->
<target name="package-bin" unless="no-doc">
<sequential>
<mkdir dir="${todir}"/>
@@ -123,9 +152,9 @@
<antcall target="package-ds">
<param name="todir" value="${todir}/setup"/>
</antcall>
- <copy file="${source.dir}-docs/readmeFiles/jboss-portal-bin.README"
todir="${todir}"/>
+ <copy file="${docs.dir}/readmeFiles/jboss-portal-bin.README"
todir="${todir}"/>
<copy todir="${todir}/docs/portal/licenses">
- <fileset dir="output/docs/licenses"/>
+ <fileset dir="output/docs/licenses"/>
</copy>
</sequential>
</target>
@@ -137,12 +166,12 @@
<param name="todir" value="${todir}/docs/portal"/>
</antcall>
<antcall target="package-ds">
- <param name="todir" value="${todir}/setup"/>
- </antcall>
- <copy file="${source.dir}-docs/readmeFiles/jboss-portal-bin.README"
todir="${todir}"/>
+ <param name="todir" value="${todir}/setup"/>
+ </antcall>
+ <copy file="${docs.dir}/readmeFiles/jboss-portal-bin.README"
todir="${todir}"/>
<copy todir="${todir}/docs/portal/licenses">
- <fileset dir="output/docs/licenses"/>
- </copy>
+ <fileset dir="output/docs/licenses"/>
+ </copy>
</sequential>
</target>
@@ -160,9 +189,10 @@
<antcall target="package-doc">
<param name="todir"
value="${portal.build.src}/docs"/>
</antcall>
- <copy file="${source.dir}-docs/readmeFiles/jboss-portal-src.README"
todir="${portal.build.src}"/>
+ <copy file="${docs.dir}/readmeFiles/jboss-portal-src.README"
todir="${portal.build.src}"/>
<copy todir="${portal.build.src}">
- <fileset dir="${source.dir}" includes="**/*"
excludes="*/output/**,**/CVS/*,**/build.log,build/local.properties,forums/**,thirdparty/**"/>
+ <fileset dir="${source.dir}" includes="**/*"
+
excludes="*/output/**,**/CVS/*,**/build.log,build/local.properties,forums/**,thirdparty/**"/>
</copy>
<copy todir="${portal.build.src}/docs/portal/licenses">
<fileset dir="output/docs/licenses"/>
@@ -173,72 +203,72 @@
<!--
| JBoss Portal binaries distribution
-->
-
+
<antcall target="package-normal"/>
<antcall target="package-ha"/>
<antcall target="package-normal-bundled"/>
- <antcall target="package-ha-bundled"/>
-
+ <antcall target="package-ha-bundled"/>
</target>
- <!--
- | JBoss Portal binary distribution
- -->
-
- <target name="package-normal" description="package
jboss-portal.sar">
+ <!--
+ | JBoss Portal binary distribution
+ -->
+
+ <target name="package-normal" description="package
jboss-portal.sar">
<mkdir dir="${portal.build.normal.bin}"/>
<antcall target="package-bin">
<param name="todir"
value="${portal.build.normal.bin}"/>
- </antcall>
- <copy todir="${portal.build.normal.bin}/jboss-portal.sar">
- <fileset
dir="${source.dir}/core/output/resources/jboss-portal.sar"/>
- </copy>
- <copy
todir="${portal.build.normal.bin}/jboss-portal.sar/portal-cms.sar">
- <fileset dir="${source.dir}/core-cms/output/resources/portal-cms.sar"
includes="**"/>
- </copy>
- <copy todir="${portal.build.normal.bin}/jboss-portal.sar">
- <fileset dir="${source.dir}/widget/output/resources"
includes="widget.war/**"/>
- <fileset dir="${source.dir}/core-samples/output/resources"
includes="portal-samples.sar/**"/>
- <fileset dir="${source.dir}/core-management/output/resources"
includes="portal-management.sar/**"/>
- <fileset dir="${source.dir}/core-admin/output/resources"
includes="portal-admin.sar/**"/>
- </copy>
- <mkdir
dir="${portal.build.normal.bin}/jboss-portal.sar/portal-wsrp.sar"/>
- <copy
todir="${portal.build.normal.bin}/jboss-portal.sar/portal-wsrp.sar">
- <fileset
dir="${source.dir}/wsrp/output/lib/portal-wsrp-exploded.sar"/>
- </copy>
- </target>
+ </antcall>
+ <copy todir="${portal.build.normal.bin}/jboss-portal.sar">
+ <fileset
dir="${source.dir}/core/output/resources/jboss-portal.sar"/>
+ </copy>
+ <copy
todir="${portal.build.normal.bin}/jboss-portal.sar/portal-cms.sar">
+ <fileset
dir="${source.dir}/core-cms/output/resources/portal-cms.sar"
includes="**"/>
+ </copy>
+ <copy todir="${portal.build.normal.bin}/jboss-portal.sar">
+ <fileset dir="${source.dir}/widget/output/resources"
includes="widget.war/**"/>
+ <fileset dir="${source.dir}/core-samples/output/resources"
includes="portal-samples.sar/**"/>
+ <fileset dir="${source.dir}/core-management/output/resources"
includes="portal-management.sar/**"/>
+ <fileset dir="${source.dir}/core-admin/output/resources"
includes="portal-admin.sar/**"/>
+ </copy>
+ <mkdir
dir="${portal.build.normal.bin}/jboss-portal.sar/portal-wsrp.sar"/>
+ <copy
todir="${portal.build.normal.bin}/jboss-portal.sar/portal-wsrp.sar">
+ <fileset
dir="${source.dir}/wsrp/output/lib/portal-wsrp-exploded.sar"/>
+ </copy>
+ </target>
- <!--
- | JBoss Portal ha binaries distribution
- -->
- <target name="package-ha" description="package
jboss-portal-ha.sar">
- <mkdir dir="${portal.build.ha.bin}"/>
- <antcall target="package-bin">
- <param name="todir"
value="${portal.build.ha.bin}"/>
- </antcall>
- <copy todir="${portal.build.ha.bin}/jboss-portal-ha.sar">
+ <!--
+ | JBoss Portal ha binaries distribution
+ -->
+ <target name="package-ha" description="package
jboss-portal-ha.sar">
+ <mkdir dir="${portal.build.ha.bin}"/>
+ <antcall target="package-bin">
+ <param name="todir" value="${portal.build.ha.bin}"/>
+ </antcall>
+ <copy todir="${portal.build.ha.bin}/jboss-portal-ha.sar">
<fileset
dir="${source.dir}/core/output/resources/jboss-portal-ha.sar"/>
- </copy>
- <copy
todir="${portal.build.ha.bin}/jboss-portal-ha.sar/portal-cms.sar">
+ </copy>
+ <copy
todir="${portal.build.ha.bin}/jboss-portal-ha.sar/portal-cms.sar">
<fileset
dir="${source.dir}/core-cms/output/resources/portal-cms-ha.sar"
includes="**"/>
- </copy>
- <copy todir="${portal.build.ha.bin}/jboss-portal-ha.sar">
+ </copy>
+ <copy todir="${portal.build.ha.bin}/jboss-portal-ha.sar">
<fileset dir="${source.dir}/widget/output/resources"
includes="widget.war/**"/>
<fileset dir="${source.dir}/core-samples/output/resources"
includes="portal-samples.sar/**"/>
<fileset dir="${source.dir}/core-management/output/resources"
includes="portal-management.sar/**"/>
<fileset dir="${source.dir}/core-admin/output/resources"
includes="portal-admin.sar/**"/>
- </copy>
- <mkdir
dir="${portal.build.ha.bin}/jboss-portal-ha.sar/portal-wsrp.sar"/>
- <copy
todir="${portal.build.ha.bin}/jboss-portal-ha.sar/portal-wsrp.sar">
+ </copy>
+ <mkdir
dir="${portal.build.ha.bin}/jboss-portal-ha.sar/portal-wsrp.sar"/>
+ <copy
todir="${portal.build.ha.bin}/jboss-portal-ha.sar/portal-wsrp.sar">
<fileset
dir="${source.dir}/wsrp/output/lib/portal-wsrp-exploded.sar"/>
- </copy>
- <copy
file="${source.dir}-docs/readmeFiles/jboss-portal-ha-bin.README"
todir="${portal.build.ha.bin}"/>
+ </copy>
+ <copy file="${docs.dir}/readmeFiles/jboss-portal-ha-bin.README"
todir="${portal.build.ha.bin}"/>
</target>
- <!--
- | JBoss Portal bundled distribution
- -->
- <target name="package-normal-bundled" depends="package-normal"
if="jboss.home" description="package jboss-portal bundled with JBoss
AS">
+ <!--
+ | JBoss Portal bundled distribution
+ -->
+ <target name="package-normal-bundled" depends="package-normal"
if="jboss.home"
+ description="package jboss-portal bundled with JBoss AS">
<mkdir dir="${portal.build.normal.bundled}"/>
<antcall target="package-bundled">
<param name="todir"
value="${portal.build.normal.bundled}"/>
@@ -258,13 +288,14 @@
<include name="server/default/**"/>
</fileset>
</copy>
- </target>
+ </target>
- <!--
- | JBoss Portal ha bundled distribution
- -->
+ <!--
+ | JBoss Portal ha bundled distribution
+ -->
- <target name="package-ha-bundled" depends="package-ha"
if="jboss.home" description="package jboss-portal-ha bundled with JBoss
AS">
+ <target name="package-ha-bundled" depends="package-ha"
if="jboss.home"
+ description="package jboss-portal-ha bundled with JBoss AS">
<mkdir dir="${portal.build.ha.bundled}"/>
<antcall target="package-bundled">
<param name="todir"
value="${portal.build.ha.bundled}"/>
@@ -281,15 +312,15 @@
<include name="server/all/**"/>
</fileset>
</copy>
- <copy file="${source.dir}-docs/readmeFiles/jboss-portal-ha-bin.README"
todir="${portal.build.ha.bundled}"/>
+ <copy file="${docs.dir}/readmeFiles/jboss-portal-ha-bin.README"
todir="${portal.build.ha.bundled}"/>
</target>
-
+
<!-- Create packages -->
<target name="zip">
<tar destfile="${portal.build.src}.tar.gz"
- compression="gzip">
- <tarfileset prefix="${portal.release.normal.name}-src"
dir="${portal.build.src}"/>
+ compression="gzip">
+ <tarfileset prefix="${portal.release.normal.name}-src"
dir="${portal.build.src}"/>
</tar>
<checksum file="${portal.build.src}.tar.gz"/>
@@ -325,6 +356,5 @@
</target>
<!-- Build and compress everything -->
- <target name="main" depends="licenses,build,package,zip"
description="do the whole shebang - build source, doc, distro">
- </target>
+ <target name="main" depends="licenses,build,package,zip"
description="do everything - build source, doc, distro"/>
</project>
Show replies by date