[jboss-cvs] JBossAS SVN: r85829 - in trunk: build and 1 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Fri Mar 13 11:40:08 EDT 2009
Author: pgier
Date: 2009-03-13 11:40:08 -0400 (Fri, 13 Mar 2009)
New Revision: 85829
Added:
trunk/README.txt
trunk/build.bat
trunk/build.sh
Modified:
trunk/build/build.xml
trunk/build/pom.xml
trunk/thirdparty/
Log:
[JBBUILD-513] Allow the app server distribution build to be run directly from maven.
Added: trunk/README.txt
===================================================================
--- trunk/README.txt (rev 0)
+++ trunk/README.txt 2009-03-13 15:40:08 UTC (rev 85829)
@@ -0,0 +1,27 @@
+JBoss Application Server
+$Id$
+
+Directory Structure
+-------------------
+build - Contains the build scripts for creating the complete JBoss AS distribution.
+component-matrix - Contains Maven configuration which controls dependency versions.
+testsuite - Contains code and build scripts for testing the application server
+thirdparty - Used during the build process
+tools - Various files used by the build (ant, maven, etc)
+
+The remaining directories contain the various components of the application server.
+
+
+Building
+-------------------
+Run the build script "./build.sh" or "build.bat"
+Or call maven directly "mvn install"
+
+Running the Testsuite
+--------------------
+Change the the testsuite directory "cd testsuite"
+Build the tests "./build.sh"
+Run the tests "./build.sh tests"
+
+
+
Property changes on: trunk/README.txt
___________________________________________________________________
Name: svn:keywords
+ Author Date Id Revision
Name: svn:eol-style
+ native
Modified: trunk/build/build.xml
===================================================================
--- trunk/build/build.xml 2009-03-13 15:16:37 UTC (rev 85828)
+++ trunk/build/build.xml 2009-03-13 15:40:08 UTC (rev 85829)
@@ -1017,7 +1017,7 @@
<target name="maven-install" description="Run the install goal against the maven build"
depends="maven-init">
- <property name="maven.install.opts" value=""/>
+ <property name="maven.install.opts" value="-Pskip-dist"/>
<maven basedir="${basedir}/.."
options="${maven.install.opts}"
Modified: trunk/build/pom.xml
===================================================================
--- trunk/build/pom.xml 2009-03-13 15:16:37 UTC (rev 85828)
+++ trunk/build/pom.xml 2009-03-13 15:40:08 UTC (rev 85829)
@@ -92,4 +92,61 @@
</dependencies>
+ <profiles>
+ <profile>
+ <id>dist</id>
+ <activation>
+ <activeByDefault>true</activeByDefault>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>build-dist</id>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ <phase>package</phase>
+ <configuration>
+ <tasks>
+ <ant antfile="build.xml">
+ <target name="modules-most"/>
+ <target name="install"/>
+ </ant>
+ </tasks>
+ </configuration>
+ </execution>
+ <execution>
+ <id>clean</id>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ <phase>clean</phase>
+ <configuration>
+ <tasks>
+ <ant antfile="build.xml">
+ <target name="_buildmagic:clean"/>
+ </ant>
+ </tasks>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ <profile>
+ <id>skip-dist</id>
+ <!-- This profile is just a place holder to avoid running the dist build
+ - when the build is called from ant.
+ -->
+ <build>
+
+ </build>
+ </profile>
+ </profiles>
+
</project>
Added: trunk/build.bat
===================================================================
--- trunk/build.bat (rev 0)
+++ trunk/build.bat 2009-03-13 15:40:08 UTC (rev 85829)
@@ -0,0 +1,90 @@
+ at echo off
+REM ======================================================================
+REM
+REM This is the main entry point for the build system.
+REM
+REM Users should be sure to execute this file rather than 'mvn' to ensure
+REM the correct version is being used with the correct configuration.
+REM
+REM ======================================================================
+REM
+REM $Id$
+REM
+REM Authors:
+REM Jason Dillon <jason at planet57.com>
+REM Sacha Labourey <sacha.labourey at cogito-info.ch>
+REM
+
+REM ******************************************************
+REM Ignore the MAVEN_HOME variable: we want to use *our*
+REM Maven version and associated JARs.
+REM ******************************************************
+REM Ignore the users classpath, cause it might mess
+REM things up
+REM ******************************************************
+
+SETLOCAL
+
+set CLASSPATH=
+set MAVEN_HOME=
+
+REM ******************************************************
+REM - "for" loops have been unrolled for compatibility
+REM with some WIN32 systems.
+REM ******************************************************
+
+set NAMES=tools;tools\maven;tools\apache\maven
+set SUBFOLDERS=..;..\..;..\..\..;..\..\..\..
+
+REM ******************************************************
+REM ******************************************************
+
+SET EXECUTED=FALSE
+for %%i in (%NAMES%) do call :subLoop %%i %1 %2 %3 %4 %5 %6
+
+goto :EOF
+
+
+REM ******************************************************
+REM ********* Search for names in the subfolders *********
+REM ******************************************************
+
+:subLoop
+for %%j in (%SUBFOLDERS%) do call :testIfExists %%j\%1\bin\mvn.bat %2 %3 %4 %5 %6 %7
+
+goto :EOF
+
+
+REM ******************************************************
+REM ************ Test if Maven Batch file exists ***********
+REM ******************************************************
+
+:testIfExists
+if exist %1 call :BatchFound %1 %2 %3 %4 %5 %6 %7 %8
+
+goto :EOF
+
+
+REM ******************************************************
+REM ************** Batch file has been found *************
+REM ******************************************************
+
+:BatchFound
+if (%EXECUTED%)==(FALSE) call :ExecuteBatch %1 %2 %3 %4 %5 %6 %7 %8
+set EXECUTED=TRUE
+
+goto :EOF
+
+REM ******************************************************
+REM ************* Execute Batch file only once ***********
+REM ******************************************************
+
+:ExecuteBatch
+echo Calling %1 %2 %3 %4 %5 %6 %7 %8
+set GOAL=%2
+if "%GOAL%"=="" set GOAL=install
+call %1 %GOAL% %3 %4 %5 %6 %7 %8
+
+:end
+
+if "%NOPAUSE%" == "" pause
Property changes on: trunk/build.bat
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:keywords
+ Author Date Id Revision
Name: svn:eol-style
+ native
Added: trunk/build.sh
===================================================================
--- trunk/build.sh (rev 0)
+++ trunk/build.sh 2009-03-13 15:40:08 UTC (rev 85829)
@@ -0,0 +1,175 @@
+#!/bin/sh
+### ====================================================================== ###
+## ##
+## This is the main entry point for the build system. ##
+## ##
+## Users should execute this file rather than 'mvn' to ensure ##
+## the correct version is being used with the correct configuration. ##
+## ##
+### ====================================================================== ###
+
+# $Id$
+
+PROGNAME=`basename $0`
+DIRNAME=`dirname $0`
+GREP="grep"
+ROOT="/"
+
+# Ignore user's MAVEN_HOME if it is set
+MAVEN_HOME=""
+
+# the default search path for maven
+MAVEN_SEARCH_PATH="\
+ tools
+ tools/maven \
+ tools/apache/maven \
+ maven"
+
+# the default arguments
+MVN_OPTIONS=""
+
+# Use the maximum available, or set MAX_FD != -1 to use that
+MAX_FD="maximum"
+
+# OS specific support (must be 'true' or 'false').
+cygwin=false;
+darwin=false;
+case "`uname`" in
+ CYGWIN*)
+ cygwin=true
+ ;;
+
+ Darwin*)
+ darwin=true
+ ;;
+esac
+
+#
+# Helper to complain.
+#
+die() {
+ echo "${PROGNAME}: $*"
+ exit 1
+}
+
+#
+# Helper to complain.
+#
+warn() {
+ echo "${PROGNAME}: $*"
+}
+
+#
+# Helper to source a file if it exists.
+#
+maybe_source() {
+ for file in $*; do
+ if [ -f "$file" ]; then
+ . $file
+ fi
+ done
+}
+
+search() {
+ search="$*"
+ for d in $search; do
+ MAVEN_HOME="`pwd`/$d"
+ MVN="$MAVEN_HOME/bin/mvn"
+ if [ -x "$MVN" ]; then
+ # found one
+ echo $MAVEN_HOME
+ break
+ fi
+ done
+}
+
+#
+# Main function.
+#
+main() {
+ # if there is a build config file. then source it
+ maybe_source "$DIRNAME/build.conf" "$HOME/.build.conf"
+
+ # Increase the maximum file descriptors if we can
+ if [ $cygwin = "false" ]; then
+ MAX_FD_LIMIT=`ulimit -H -n`
+ if [ $? -eq 0 ]; then
+ if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ]; then
+ # use the system max
+ MAX_FD="$MAX_FD_LIMIT"
+ fi
+
+ ulimit -n $MAX_FD
+ if [ $? -ne 0 ]; then
+ warn "Could not set maximum file descriptor limit: $MAX_FD"
+ fi
+ else
+ warn "Could not query system maximum file descriptor limit: $MAX_FD_LIMIT"
+ fi
+ fi
+
+ # try the search path
+ MAVEN_HOME=`search $MAVEN_SEARCH_PATH`
+
+ # try looking up to root
+ if [ "x$MAVEN_HOME" = "x" ]; then
+ target="build"
+ _cwd=`pwd`
+
+ while [ "x$MAVEN_HOME" = "x" ] && [ "$cwd" != "$ROOT" ]; do
+ cd ..
+ cwd=`pwd`
+ MAVEN_HOME=`search $MAVEN_SEARCH_PATH`
+ done
+
+ # make sure we get back
+ cd $_cwd
+
+ if [ "$cwd" != "$ROOT" ]; then
+ found="true"
+ fi
+
+ # complain if we did not find anything
+ if [ "$found" != "true" ]; then
+ die "Could not locate Maven; check \$MVN or \$MAVEN_HOME."
+ fi
+ fi
+
+ # make sure we have one
+ MVN=$MAVEN_HOME/bin/mvn
+ if [ ! -x "$MVN" ]; then
+ die "Maven file is not executable: $MVN"
+ fi
+
+ # need to specify planet57/buildmagic protocol handler package
+ MVN_OPTS="-Djava.protocol.handler.pkgs=org.jboss.net.protocol"
+
+ # setup some build properties
+ MVN_OPTS="$MVN_OPTS -Dbuild.script=$0"
+
+ # change to the directory where the script lives so users are not forced
+ # to be in the same directory as build.xml
+ cd $DIRNAME
+
+ MVN_GOAL=$@
+ if [ -z "$MVN_GOAL" ]; then
+ MVN_GOAL="install"
+ fi
+
+ # export some stuff for maven
+ export MVN MAVEN_HOME MVN_OPTS MVN_GOAL
+
+
+ # execute in debug mode, or simply execute
+ if [ "x$MVN_DEBUG" != "x" ]; then
+ /bin/sh -x $MVN $MVN_OPTIONS $MVN_GOAL
+ else
+ exec $MVN $MVN_OPTIONS $MVN_GOAL
+ fi
+}
+
+##
+## Bootstrap
+##
+
+main "$@"
Property changes on: trunk/build.sh
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:keywords
+ Author Date Id Revision
Name: svn:eol-style
+ native
Property changes on: trunk/thirdparty
___________________________________________________________________
Name: svn:ignore
- antlr
apache-avalon
apache-avalon-logkit
apache-bcel
apache-beanutils
apache-bsf
apache-codec
apache-collections
apache-digester
apache-discovery
apache-fileupload
apache-httpclient
apache-jaxme
apache-lang
apache-log4j
apache-logging
apache-modeler
apache-myfaces
apache-pool
apache-scout
apache-slide
apache-struts
apache-taglibs
apache-tomcat
apache-validator
apache-velocity
apache-vfs
apache-xalan
apache-xerces
apache-xmlsec
asm
beanshell
cglib
codehaus-stax
commons-el
dom4j
easymock
ehcache
gjt-jpl-util
gnu-getopt
hibernate
hibernate-annotations
hibernate-entitymanager
hsqldb
ibm-wsdl4j
jacorb
javassist
jaxen
jboss
jbpm
jbpm-bpel
jfreechart
jgroups
joesnmp
juddi
junit
junitejb
licenses
objectweb-joramtests
odmg
opensaml
oswego-concurrent
qdox
quartz
sleepycat
spring
struts-test-case
sun-jaf
sun-javacc
sun-javamail
sun-jaxb
sun-jaxp
sun-jmf
sun-jmx
sun-jsf
sun-jstl
sun-servlet
sun-xacml
target
trove
wutka-dtdparser
xdoclet
xmlunit-xmlunit
libraries.ent
sun-opends
testsuite-libraries.ent
woodstox
stax-api
httpunit
nekohtml
sun-jaxws
snmptrapappender
wscommons-policy
hibernate-commons-annotations
hibernate-validator
apache-maven-ant-tasks
osgi
sun-fi
xalan
struts
javax
bsh
rhino
xerces
aopalliance
log4j
ant
org
commons-validator
oro
commons-io
jtidy
net
xml-apis
commons-logging
classworlds
urbanophile
tjws
com
xml-security
stax
webbeans-deployer
+ antlr
apache-avalon
apache-avalon-logkit
apache-bcel
apache-beanutils
apache-bsf
apache-codec
apache-collections
apache-digester
apache-discovery
apache-fileupload
apache-httpclient
apache-jaxme
apache-lang
apache-log4j
apache-logging
apache-modeler
apache-myfaces
apache-pool
apache-scout
apache-slide
apache-struts
apache-taglibs
apache-tomcat
apache-validator
apache-velocity
apache-vfs
apache-xalan
apache-xerces
apache-xmlsec
asm
beanshell
cglib
codehaus-stax
commons-el
dom4j
easymock
ehcache
gjt-jpl-util
gnu-getopt
hibernate
hibernate-annotations
hibernate-entitymanager
hsqldb
ibm-wsdl4j
jacorb
javassist
jaxen
jboss
jbpm
jbpm-bpel
jfreechart
jgroups
joesnmp
juddi
junit
junitejb
licenses
objectweb-joramtests
odmg
opensaml
oswego-concurrent
qdox
quartz
sleepycat
spring
struts-test-case
sun-jaf
sun-javacc
sun-javamail
sun-jaxb
sun-jaxp
sun-jmf
sun-jmx
sun-jsf
sun-jstl
sun-servlet
sun-xacml
target
trove
wutka-dtdparser
xdoclet
xmlunit-xmlunit
libraries.ent
sun-opends
testsuite-libraries.ent
woodstox
stax-api
httpunit
nekohtml
sun-jaxws
snmptrapappender
wscommons-policy
hibernate-commons-annotations
hibernate-validator
apache-maven-ant-tasks
osgi
sun-fi
xalan
struts
javax
bsh
rhino
xerces
aopalliance
log4j
ant
org
commons-validator
oro
commons-io
jtidy
net
xml-apis
commons-logging
classworlds
urbanophile
tjws
com
xml-security
stax
webbeans-deployer
dependency-maven-plugin-markers
More information about the jboss-cvs-commits
mailing list