User: user57
Date: 01/08/26 00:00:29
Modified: jboss build.sh build.xml
Removed: jboss config.xml
Log:
o consolidated all tools/* stuff into tools/bin and tools/lib
o upgraded ant to 1.4beta2
o consolidated config.xml into build.xml
o using path to generate absolute paths to project.root
o changed project.config to control.root
o removed classpath fluff for extra tasks & the taskdefs for them
currently every support lib is in ANT_HOME/lib, so there is no need for
specific classpaths. May change that for ejbdoclet and such later.
o updated build.sh to look for tools/ too (will get the a win32 script soon
... really)
o removed bootstrap & configure targets, the just added complexity and
slowed down the build
NOTE: All modules will read ${config.root}/local.properties
(or build/local.properties). Modules still can read a local.properties
(when they don't care about the control module, but this file will
no loger be placed here automatically)
Revision Changes Path
1.2 +8 -22 build/jboss/build.sh
Index: build.sh
===================================================================
RCS file: /cvsroot/jboss/build/jboss/build.sh,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- build.sh 2001/08/11 22:33:39 1.1
+++ build.sh 2001/08/26 07:00:28 1.2
@@ -1,39 +1,25 @@
#!/bin/sh
### ====================================================================== ###
## ##
-## Copyright (c) 1998-2000 by Jason Dillon <[EMAIL PROTECTED]> ##
-## ##
-## This file is part of Buildmagic. ##
-## ##
-## This library is free software; you can redistribute it and/or modify ##
-## it under the terms of the GNU Lesser General Public License as ##
-## published by the Free Software Foundation; either version 2 of the ##
-## License, or (at your option) any later version. ##
-## ##
-## This library is distributed in the hope that it will be useful, but ##
-## WITHOUT ANY WARRANTY; without even the implied warranty of ##
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ##
-## Lesser General Public License for more details. ##
-## ##
-### ====================================================================== ###
-## ##
## This is the main entry point for the build system. ##
+## ##
## Users should be sure to execute this file rather than 'ant' to ensure ##
## the correct version is being used with the correct configuration. ##
## ##
### ====================================================================== ###
-# $Id: build.sh,v 1.1 2001/08/11 22:33:39 user57 Exp $
+# $Id: build.sh,v 1.2 2001/08/26 07:00:28 user57 Exp $
PROGNAME=`basename $0`
DIRNAME=`dirname $0`
GREP="grep"
ROOT="/"
-# the default search path for buildmagic/ant
+# the default search path for ant
ANT_SEARCH_PATH="\
- tools/apache/ant \
+ tools
tools/ant \
+ tools/apache/ant \
ant"
# the default build file name
@@ -42,8 +28,8 @@
# the default arguments
ANT_OPTIONS="-find $ANT_BUILD_FILE"
-# the required version of Ant
-ANT_VERSION="1.3"
+# don't check versions (too slow)
+ANT_VERSION=""
#
# Helper to complain.
@@ -113,7 +99,7 @@
fi
# perhaps check the version
- if [ "x$ANT_VERSION_CHECK" != "x" ]; then
+ if [ "x$ANT_VERSION" != "x" ] && [ "x$ANT_VERSION_CHECK" != "x" ]; then
result="`$ANT -version 2>&1 | $GREP $ANT_VERSION`x"
if [ "$result" = "x" ]; then
die "Ant version $ANT_VERSION is required to build."
1.2 +205 -171 build/jboss/build.xml
Index: build.xml
===================================================================
RCS file: /cvsroot/jboss/build/jboss/build.xml,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- build.xml 2001/08/11 22:33:40 1.1
+++ build.xml 2001/08/26 07:00:28 1.2
@@ -1,210 +1,228 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE project [ <!ENTITY config SYSTEM "file:./config.xml"> ]>
+<!DOCTYPE project>
<!-- ====================================================================== -->
<!-- -->
-<!-- JBoss, the OpenSource EJB server -->
+<!-- JBoss, the OpenSource J2EE webOS -->
<!-- -->
<!-- Distributable under LGPL license. -->
<!-- See terms of license at http://www.gnu.org. -->
<!-- -->
<!-- ====================================================================== -->
-<!-- $Id: build.xml,v 1.1 2001/08/11 22:33:40 user57 Exp $ -->
+<!-- $Id: build.xml,v 1.2 2001/08/26 07:00:28 user57 Exp $ -->
-<project default="main" basedir="..">
+<project default="main">
<!-- ================================================================== -->
- <!-- Basic project configuration -->
+ <!-- Initialization -->
<!-- ================================================================== -->
- <!--
- | Give users a chance to use a different Buildmagic.
- -->
- <property file="${user.home}/.buildmagic.properties"/>
-
- <!--
- | Load Buildmagic Ant extentions.
- -->
- <property name="planet57.buildmagic.root"
value="${basedir}/tools/planet57/buildmagic"/>
- <property name="planet57.buildmagic.lib" value="${planet57.buildmagic.root}/lib"/>
- <path id="planet57.buildmagic.classpath">
- <fileset dir="${planet57.buildmagic.lib}">
- <include name="**/*.jar"/>
- </fileset>
- </path>
- <taskdef name="taskdef" classname="planet57.tools.buildmagic.task.Taskdef"
- classpathref="planet57.buildmagic.classpath"/>
- <taskdef classpathref="planet57.buildmagic.classpath"
- resource="planet57/tools/buildmagic/task/autoload.properties"/>
+ <!-- Load Buildmagic extention tasks. -->
+ <taskdef name="taskdef" classname="planet57.tools.buildmagic.task.Taskdef"/>
+ <taskdef resource="planet57/tools/buildmagic/task/autoload.properties"/>
- <!--
- | Setup the basic project roots.
- |
- | project.root - Should be the parent directory from this file
- | project.config - Should be the directory this file is in
- -->
- <property name="project.root">
- <findroot basedir="." suffix="build/build.xml"/>
- </property>
- <property name="project.config" value="${basedir}/build"/>
+ <!-- Setup the basic project roots. -->
+ <path id="project.root"><pathelement location=".."/></path>
+ <property name="project.root" refid="project.root"/>
+ <path id="control.root"><pathelement location="."/></path>
+ <property name="control.root" refid="control.root"/>
-
- <!--
- | Include user and project property overrides.
- |
- | override.properties - Used rarely (ignore)
- | .buildmagic.properties - Provide Buildmagic specific properties
- | .ant.properties - Ant properties
- | local.properties - User local module properties
- | config.properties - Used rarely (ignore)
- -->
- <property file="${project.config}/override.properties"/>
+ <!-- Include user and project property overrides. -->
<property file="${user.home}/.buildmagic.properties"/>
<property file="${user.home}/.ant.properties"/>
- <property file="${project.config}/local.properties"/>
- <property file="${project.config}/config.properties"/>
+ <property file="${control.root}/local.properties"/>
- <!--
- | Setup the basic environment for a project build module.
- |
- | project.output - The root where build output will be placed
- | project.release - Where released files will be placed
- | tools.root - Where to build support tools live
- | thirdparty.root - Where to thirdparty libraries live
- -->
- <property name="project.output" value="${project.config}/output"/>
+ <!-- Setup the basic environment for a project build module. -->
+ <property name="project.output" value="${control.root}/output"/>
<property name="project.release" value="${project.output}"/>
<property name="tools.root" value="${project.root}/tools"/>
<property name="thirdparty.root" value="${project.root}/thirdparty"/>
<!--
- | Load project configuration.
- |
- | config.xml - Define most configuration elements here (required).
- -->
- &config;
-
-
- <!-- ================================================================== -->
- <!-- Initialize, Configure and Bootstrap the build system -->
- <!-- ================================================================== -->
-
- <!--
- | Bootstrap all required extensions.
- |
- | Build local Ant extensions here if they are required.
- |
- | This target will not run once the bootstraped-already is set.
- -->
- <target name="bootstrap"
- depends="bootstrap-init"
- unless="project-bootstraped-already">
- <property name="project-bootstraped-already" value="true"/>
- </target>
-
- <!-- Fail if the required dependencies are missing -->
- <target name="bootstrap-init"
- depends="bootstrap-check"
- unless="project-have-bootstrap-dependencies-already">
- <echo>Missing some or all of the required dependencies.</echo>
- <fail message="Can not continue."/>
- </target>
-
- <!-- Check for required libraries -->
- <target name="bootstrap-check" unless="project-bootstraped-already">
- <!-- Check for required extensions here -->
- <property name="project-have-bootstrap-dependencies-already" value="true"/>
- </target>
-
- <!--
- | Configure the project and module build systems.
- |
- | This will recurse to all configured modules can invoke there
- | 'configure' target.
- -->
- <target name="configure"
- depends="project-configure, all-configure"
- unless="project-configured-already"/>
-
- <!--
- | Configure the project build system.
- |
- | o Updates/installs example files if they exist
- | o Invokes the 'configure-hook' target, which should be defined in
- | config.xml.
- |
- | This target will not run once the project-configured-already
- | property is set.
- -->
- <target name="project-configure" unless="project-configured-already">
- <property name="project.examples" value="${project.config}/etc"/>
- <property name="project.examples.extension" value="-example"/>
- <copy todir="${project.config}" filtering="yes">
- <fileset dir="${project.examples}/">
- <include name="**/*${project.examples.extension}"/>
- </fileset>
- <mapper type="glob" from="*${project.examples.extension}" to="*"/>
- </copy>
-
- <antcall target="configure-hook"/>
- <property name="project-configured-already" value="true"/>
- </target>
-
- <!-- Disable execution of the configure target -->
- <target name="disable-configure">
- <property name="project-configured-already" value="true"/>
- </target>
-
- <!--
| Initialize the build system.
|
| o Sets the timestamp and build.number properties
| o Installs property defaults
- | o Invokes to 'init-hook' target which should be defined in config.xml
+ | o Installs example files from etc/*-example
+ | o Invokes module-configuration-setup
| o Displays some project information
| o Resolves properties for psuedo late-binding
| o Installs filters for each property
|
| This target will not run once the initialized-already property is set.
-->
- <target name="init"
- depends="project-configure, bootstrap"
- unless="project-initialized-already">
+ <target name="init" unless="project-initialized-already">
<tstamp>
<format property="build.number" pattern="yyyyMMddHHmm"/>
</tstamp>
- <property name="build.id" value="${build.number}"/>
+ <property name="build.id" value="DEV"/>
<property resource="planet57/tools/buildmagic/common.properties"/>
- <call target="init-hook" unless="bypass-init-hook"/>
- <projectinfo/>
+ <copy todir="${control.root}" filtering="yes">
+ <fileset dir="${control.root}/etc">
+ <include name="**/*-example"/>
+ </fileset>
+ <mapper type="glob" from="*-example" to="*"/>
+ </copy>
+
+ <call target="configure-modules"/>
+
+ <projectinfo/>
<resolver force="${buildmagic.resolveproperties.force}"/>
<propertyfilter all="${buildmagic.propertyfilter.all}"/>
-
<property name="project-initialized-already" value="true"/>
</target>
- <!-- Disable execution of the init target -->
- <target name="disable-init">
- <property name="project-initialized-already" value="true"/>
+ <target name="install-examples">
</target>
+
+
+ <!-- ================================================================== -->
+ <!-- Project Configuration -->
+ <!-- ================================================================== -->
+
+ <!-- Project name(s) & version -->
+ <property name="project.name" value="jboss"/>
+ <property name="project.Name" value="JBoss"/>
+ <property name="project.version" value="2.5alpha"/>
+
+
+ <!-- ================================================================== -->
+ <!-- Child Module Configuration -->
+ <!-- ================================================================== -->
+
+ <!-- The group to use by default -->
+ <property name="groups" value="default"/>
+
+ <!-- Sets up the module configuration. -->
+ <target name="configure-modules">
+ <moduleconfig property="modules" selected="${groups}">
+
+ <!-- Standard modules -->
+ <module name="j2ee"/>
+ <module name="naming"/>
+ <module name="server"/>
+ <module name="security"/>
+ <module name="messaging"/>
+ <module name="connector"/>
+ <module name="pool"/>
+ <module name="cluster"/>
+ <module name="admin"/>
+ <module name="testsuite"/>
+ <module name="manual"/>
+
+ <!-- Plugin modules -->
+ <module name="plugins/varia"/>
+ <module name="plugins/jetty"/>
+
+ <!-- Module groups -->
+ <group name="core">
+ <include modules="j2ee, naming, server"/>
+ </group>
+
+ <group name="standard">
+ <include modules="security, messaging, connector, pool"/>
+ <include modules="cluster, admin, testsuite"/>
+ </group>
+
+ <group name="optional">
+ <include modules="manual"/>
+ </group>
+
+ <group name="standard-plugins">
+ <include modules="plugins/varia, plugins/jetty"/>
+ </group>
- <!-- Disable execution of the init-hook target -->
- <target name="disable-init-hook">
- <property name="bypass-init-hook" value="true"/>
+ <!-- Module group sets -->
+ <group name="default">
+ <include groups="core, standard, standard-plugins"/>
+ </group>
+
+ <group name="most">
+ <include groups="core, standard"/>
+ </group>
+
+ <group name="minimal">
+ <include groups="core"/>
+ </group>
+
+ <group name="plugins">
+ <include groups="standard-plugins"/>
+ </group>
+
+ <group name="everything">
+ <include groups="core, standard, optional"/>
+ <include groups="standard-plugins"/>
+ </group>
+
+ </moduleconfig>
</target>
<!-- ================================================================== -->
+ <!-- Tool Configuration -->
+ <!-- ================================================================== -->
+
+ <!-- No non-standard tools are required for this module. -->
+
+
+ <!-- ================================================================== -->
+ <!-- Task Configuration -->
+ <!-- ================================================================== -->
+
+ <!-- Skip any missing modules and issue a warning -->
+ <property name="executemodules.skipmissing" value="true"/>
+
+ <!-- Define the header and footer displayed during each module execution -->
+ <property name="executemodules.header"><![CDATA[
+ ======================================================================
+ == Executing ${target} in module '${module}'...
+ ==]]></property>
+
+ <property name="executemodules.footer"><![CDATA[
+ ==
+ == Finished with ${target} in module '${module}'.
+ ======================================================================
+ ]]></property>
+
+ <!-- Where release generated files will go -->
+ <property name="release.id"
value="${project.name}-${project.version}-${build.id}"/>
+ <property name="release.root" value="${project.release}/${release.id}"/>
+
+ <property name="release.bin" value="${release.root}/bin"/>
+ <property name="release.client" value="${release.root}/client"/>
+ <property name="release.conf" value="${release.root}/conf"/>
+ <property name="release.conf.default" value="${release.conf}/default"/>
+ <property name="release.db" value="${release.root}/db"/>
+ <property name="release.deploy" value="${release.root}/deploy"/>
+ <property name="release.deploy.lib" value="${release.deploy}/lib"/>
+ <property name="release.lib" value="${release.root}/lib"/>
+ <property name="release.lib.ext" value="${release.lib}/ext"/>
+ <property name="release.log" value="${release.root}/log"/>
+ <property name="release.tmp" value="${release.root}/tmp"/>
+
+ <!-- Documentation and examples -->
+ <property name="release.docs" value="${release.root}/docs"/>
+ <property name="release.examples" value="${release.docs}/examples"/>
+ <property name="release.api" value="${release.docs}/api"/>
+ <property name="release.module.docs" value="${release.docs}/${module}"/>
+ <property name="release.module.api" value="${release.api}/${module}"/>
+
+ <!-- Not really sure why these are here -->
+ <property name="release.admin" value="${release.root}/admin"/>
+ <property name="release.admin.client" value="${release.admin}/client"/>
+ <property name="release.admin.client.lib" value="${release.admin.client}/lib"/>
+ <property name="release.admin.components" value="${release.admin}/components"/>
+
+
+ <!-- ================================================================== -->
<!-- Builds a release distribution. -->
<!-- ================================================================== -->
<target name="release" depends="all-release"
description="Builds a release distribution.">
- <property name="release.id"
- value="${project.name}-${project.version}-${build.id}"/>
</target>
<target name="release-archive-prepare" depends="release">
@@ -246,7 +264,8 @@
<!-- Invoke the 'all' on all configured modules -->
<target name="all-all" depends="init">
- <execmodules target="all" modules="${modules}" root="${project.root}/${module}"
+ <execmodules target="all" modules="${modules}"
+ root="${project.root}/${module}"
skipmissing="${executemodules.skipmissing}">
<header message="${executemodules.header}"/>
<footer message="${executemodules.footer}"/>
@@ -255,7 +274,8 @@
<!-- Invoke the 'clean' on all configured modules -->
<target name="all-clean" depends="init">
- <execmodules target="clean" modules="${modules}"
root="${project.root}/${module}"
+ <execmodules target="clean" modules="${modules}"
+ root="${project.root}/${module}"
skipmissing="${executemodules.skipmissing}">
<header message="${executemodules.header}"/>
<footer message="${executemodules.footer}"/>
@@ -264,7 +284,8 @@
<!-- Invoke the 'clobber' on all configured modules -->
<target name="all-clobber" depends="init">
- <execmodules target="clobber" modules="${modules}"
root="${project.root}/${module}"
+ <execmodules target="clobber" modules="${modules}"
+ root="${project.root}/${module}"
skipmissing="${executemodules.skipmissing}">
<header message="${executemodules.header}"/>
<footer message="${executemodules.footer}"/>
@@ -273,7 +294,8 @@
<!-- Invoke the 'compile' on all configured modules -->
<target name="all-compile" depends="init">
- <execmodules target="compile" modules="${modules}"
root="${project.root}/${module}"
+ <execmodules target="compile" modules="${modules}"
+ root="${project.root}/${module}"
skipmissing="${executemodules.skipmissing}">
<header message="${executemodules.header}"/>
<footer message="${executemodules.footer}"/>
@@ -282,7 +304,8 @@
<!-- Invoke the 'configure' on all configured modules -->
<target name="all-configure" depends="init">
- <execmodules target="configure" modules="${modules}"
root="${project.root}/${module}"
+ <execmodules target="configure" modules="${modules}"
+ root="${project.root}/${module}"
skipmissing="${executemodules.skipmissing}">
<header message="${executemodules.header}"/>
<footer message="${executemodules.footer}"/>
@@ -291,7 +314,8 @@
<!-- Invoke the 'docs' on all configured modules -->
<target name="all-docs" depends="init">
- <execmodules target="docs" modules="${modules}" root="${project.root}/${module}"
+ <execmodules target="docs" modules="${modules}"
+ root="${project.root}/${module}"
skipmissing="${executemodules.skipmissing}">
<header message="${executemodules.header}"/>
<footer message="${executemodules.footer}"/>
@@ -300,7 +324,8 @@
<!-- Invoke the 'jars' on all configured modules -->
<target name="all-jars" depends="init">
- <execmodules target="jars" modules="${modules}" root="${project.root}/${module}"
+ <execmodules target="jars" modules="${modules}"
+ root="${project.root}/${module}"
skipmissing="${executemodules.skipmissing}">
<header message="${executemodules.header}"/>
<footer message="${executemodules.footer}"/>
@@ -309,7 +334,8 @@
<!-- Invoke the 'main' on all configured modules -->
<target name="all-main" depends="init">
- <execmodules target="main" modules="${modules}" root="${project.root}/${module}"
+ <execmodules target="main" modules="${modules}"
+ root="${project.root}/${module}"
skipmissing="${executemodules.skipmissing}">
<header message="${executemodules.header}"/>
<footer message="${executemodules.footer}"/>
@@ -318,7 +344,8 @@
<!-- Invoke the 'min' on all configured modules -->
<target name="all-min" depends="init">
- <execmodules target="min" modules="${modules}" root="${project.root}/${module}"
+ <execmodules target="min" modules="${modules}"
+ root="${project.root}/${module}"
skipmissing="${executemodules.skipmissing}">
<header message="${executemodules.header}"/>
<footer message="${executemodules.footer}"/>
@@ -327,7 +354,8 @@
<!-- Invoke the 'most' on all configured modules -->
<target name="all-most" depends="init">
- <execmodules target="most" modules="${modules}" root="${project.root}/${module}"
+ <execmodules target="most" modules="${modules}"
+ root="${project.root}/${module}"
skipmissing="${executemodules.skipmissing}">
<header message="${executemodules.header}"/>
<footer message="${executemodules.footer}"/>
@@ -336,7 +364,8 @@
<!-- Invoke the 'release' on all configured modules -->
<target name="all-release" depends="init">
- <execmodules target="release" modules="${modules}"
root="${project.root}/${module}"
+ <execmodules target="release" modules="${modules}"
+ root="${project.root}/${module}"
skipmissing="${executemodules.skipmissing}">
<header message="${executemodules.header}"/>
<footer message="${executemodules.footer}"/>
@@ -345,7 +374,8 @@
<!-- Invoke the 'release-all' on all configured modules -->
<target name="all-release-all" depends="init">
- <execmodules target="release-all" modules="${modules}"
root="${project.root}/${module}"
+ <execmodules target="release-all" modules="${modules}"
+ root="${project.root}/${module}"
skipmissing="${executemodules.skipmissing}">
<header message="${executemodules.header}"/>
<footer message="${executemodules.footer}"/>
@@ -354,7 +384,8 @@
<!-- Invoke the 'release-tar' on all configured modules -->
<target name="all-release-tar" depends="init">
- <execmodules target="release-tar" modules="${modules}"
root="${project.root}/${module}"
+ <execmodules target="release-tar" modules="${modules}"
+ root="${project.root}/${module}"
skipmissing="${executemodules.skipmissing}">
<header message="${executemodules.header}"/>
<footer message="${executemodules.footer}"/>
@@ -363,7 +394,8 @@
<!-- Invoke the 'release-tgz' on all configured modules -->
<target name="all-release-tgz" depends="init">
- <execmodules target="release-tgz" modules="${modules}"
root="${project.root}/${module}"
+ <execmodules target="release-tgz" modules="${modules}"
+ root="${project.root}/${module}"
skipmissing="${executemodules.skipmissing}">
<header message="${executemodules.header}"/>
<footer message="${executemodules.footer}"/>
@@ -372,7 +404,8 @@
<!-- Invoke the 'release-zip' on all configured modules -->
<target name="all-release-zip" depends="init">
- <execmodules target="release-zip" modules="${modules}"
root="${project.root}/${module}"
+ <execmodules target="release-zip" modules="${modules}"
+ root="${project.root}/${module}"
skipmissing="${executemodules.skipmissing}">
<header message="${executemodules.header}"/>
<footer message="${executemodules.footer}"/>
@@ -381,7 +414,8 @@
<!-- Invoke the 'tests' on all configured modules -->
<target name="all-tests" depends="init">
- <execmodules target="tests" modules="${modules}"
root="${project.root}/${module}"
+ <execmodules target="tests" modules="${modules}"
+ root="${project.root}/${module}"
skipmissing="${executemodules.skipmissing}">
<header message="${executemodules.header}"/>
<footer message="${executemodules.footer}"/>
@@ -393,7 +427,7 @@
<!-- Cleans up generated stuff -->
<!-- ================================================================== -->
- <target name="clean-project" depends="project-configure, init">
+ <target name="clean-project" depends="init">
<delete dir="${project.release}"/>
<delete dir="${project.output}"/>
</target>
@@ -406,7 +440,7 @@
<!-- Clean up all generated files -->
<target name="clobber" depends="all-clobber, clean-project"
description="Cleans up all generated files.">
- <delete file="${project.config}/local.properties" quiet="true"/>
+ <delete file="${control.root}/local.properties" quiet="true"/>
</target>
@@ -420,9 +454,9 @@
The JBoss project build control module.
]]></header>
<footer><![CDATA[
- -Dgroups=<group>[(,<group>)* Specify the module groups.
- -Dmodules=<module>[(,<module>)* Specify the modules.
- (overrides groups).
+ -Dgroups=<group>[(,<group>)*] Specify the module groups.
+ -Dmodules=<module>[(,<module>)*] Specify the modules.
+ (overrides groups).
-projecthelp for all targets
-help for full options
]]></footer>
_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/jboss-development